What is Programming? Everything you need to know!

Creating products from scratch feels good or in some sense makes us feel very proud and confident of ourselves. Which is very important for self-improvement. But how do you create them? What are the things involved? Let's see what is programming?

What is Programming?

There are many definitions to this but what I prefer is:

Programming is a way to instruct/tell a computer to perform a specific task/solve a problem.

There are 3 key phrases to look out for:

  • You: Computer will do what you (Programmer) told it to do.
  • Instruct: Instruction is given to the computer in a language that it can understand. We will discuss that below.
  • Problem: At the end of the day computers are tools (Complex). They are there to make out life simpler.

Let us see what Khan Academy has to say

There is a saying

If you told a computer to fall off a cliff, It definitely would!

That is so true! They will do what they are programmed to do.

What is Programming used for?

Programming is used in many scenarios. It can be making games, software that solves a particular task, apps that run on your phone, predicting trends, or the future.

It plays a very important role in the software development process.

What is Computer Programming?

Computer programming is programming that helps to solve a particular technical task/problem.

Computer programming helps in developing programming languages that are used for solving technical problems.

So, How is Computer programming done?

We know that computer programming is giving instructions to the computer to solve tasks/problems.

But, how to convey instruction?

The answer is Programming Languages

Just like us, they have their own language (Machine Language) to convey information. Therefore, computers don't understand languages like English, Spanish, etc.

What are Programming Languages?

According to Wikipedia,  A programming language is a formal language, which comprises a set of instructions that produce various kinds of output. Programming languages are used in computer programming to implement algorithms.

Types of Programming Languages:

Programming Language can be categorized into 2 types of language:

  1. High-Level Language
  2. Low-Level Language

High-Level Language:

High-Level Languages are programming languages like Java, Python, C, C++, etc which helps programmer to write programs which is independent with the type of computer.

The computer with the help of the compiler compiles the High-Level Language into Low-Level Language which the computer can read and run to get the desired output.

High-Level Language is divided into 3 parts:

  1. Procedural-Oriented language (3GL)
  2. Problem-Oriented language (4GL)
  3. Natural language (5GL)

Low-Level Language:

Low-level languages are languages that the computer can understand and process without the need for a compiler.

Low-Level Languages are divided into 2 parts:

  1. Machine language (1GL)
  2. Assembly language (2GL)

Difference between Coding and Programming?

Coding VS Programming
  • Definition:

Coding is the translation of Natural Language into Machine commands through an intermediary coding language.

Programming is the process of the development of a fully functional software solution.

  • Involves:

Coding involves writing many lines of code in order to create a software program.

Programming involves not only coding but also other tasks, such as analyzing and implementing algorithms, understanding data structures, solving problems, and more.

  • Approach:

In Coding, no previous preparation is needed. Trial-and-error. Whereas in Programming,  methodical approach, attention to detail.

  • Experience:

In Coding, basic knowledge of a programming language, it's syntax and keywords are needed.

In Programming, experience in creating algorithms, modeling a problem, data processing, project management is needed.

  • Outcome:

In Coding, a simple solution or a small part of a project is the output. Whereas in Programming, a full ready-to-use application is ready.

  • Difficulty:

Easier to be a Coder. Difficult to be a Programmer. Needs years of Experience.

When I first started coding my first instinct was to learn Web Development since I wanted to make a website of my own where I would upload cool stuff that people could share and have fun with.

So, I started learning HTML and CSS. BTW if you want to learn HTML5 you can check the Free Courses and Tutorial on HTML5.

But wait.

Is HTML even a Programming Language?

Now that's a matter of debate. Since HTML stands for HyperText Markup Language. It can be classified as Language?

Well, some say it is a programming language some say it's just a language.

According to  Brian D Foy,

"No, HTML is not a programming language. The "M" stands for "Markup". Generally, a programming language allows you to describe some sort of process of doing something, whereas HTML is a way of adding context and structure to text."

According to  Chris Pietschmann,

"YES, a declarative programming language."

Well, What do you think, Is HTML a Programming Language?

Where to go next?

So you started to gather interest in programming? Want to learn to Code? Can't find resources? Then you can check out Free Courses and Tutorials from all over the Web.