How to Start Programming - Learning for a Self-Taught Software Engineer, Developer or Programmer

How to Start Programming - Learning for a Self-Taught Software Engineer, Developer or Programmer

ยท

3 min read

A more fitting topic for this article would have been "How I Learnt Programming", but then I realized this shouldn't be about me because I didn't take the best path. Over time though, I have learned from my mistakes. This is, therefore, a filtered and approachable way into programming.

A little about my background. I have a BSc in Electrical and Electronic Engineering. Somewhere in my course, I was introduced to two programming languages, that's, C and Fortran. C is still the leading programming language to date due to its speed and wide usage in this age of automation and the internet of things. Fortran, on the other hand, is practically dead in my opinion; only still in use in old scientific applications.

We studied Fortran because, I think, in the past, it was used in engineering fields a lot. I am confident today most scientific applications employ Python because of a plethora of math and statistics libraries.

Basic Understanding

Programming is just plumbing. When you write a program, you are building a pipe. The pipe takes some input, manipulates it, and gives an output.

When you simplify programming into just this basic concept, learning the intricacies becomes trivial. You then get a better grasp of the practices and approaches involved in the world of programming.

Programming, therefore, is a way to represent computer input, procedures required to manipulate or process the input, and handling the output.

Input to a computer is data. Data can be represented in multiple ways. One of the basic requirements of computer programming is to understand how to represent this data. The data representations happen in form of data types and data structures.

Manipulating input/data in a computer is done by following a given procedure. These procedures of manipulating input are called algorithms. Algorithms can be as simple as accepting a number, reducing it by one, and giving back some output.

Computers provide many ways to output results. A good example is a screen or console. The console prints our the results so the user can see. Another output can be to a file, like saving a document, or even a command to light bulb to turn on or off.

When you understand how to represent data or input, manipulate the data, and finally provide the output in the desired format, you have conquered programming.

Many people fail to recognize that computer programming is made up of simple pipes of data; see this and you are on your way to mastering this lucrative career.

Where to Start When Learning Programming

Where should you start? Start by choosing a language. Python is highly recommended because of its short syntax. It is also easy to remember because it uses intuitive English words. For example, to print out some results on the screen, you simply write print("Some text"). It is so comfortable to start with.

Visit w3schools.com and choose Python Tutorial. Follow the tutorial from start to finish, and don't worry about big projects yet. After you have understood the core elements of programming, you can pick up any language you need to use to develop a solution for your problem.

Throughout the tutorial, try to understand the following key areas of a programming language:

  • Data types
  • Input and output
  • Variables
  • Decisions (e.g if statements)
  • Loops (e.g. for loops)
  • Operators

Again, to be clear, I do not consider myself an expert programmer yet, for I still have so much to learn. My only mission is to help grow the community of self-taught software engineers, developers and programmers. Have fun learning! ๐Ÿš€๐Ÿš€