Basics of programming.

Hello. This will be an introduction to programming. After reading you should know:

  • What computer programming is?
  • Why programming is important?
  • Why are there so many programming languages? Which should I choose?
  • What software do you need to start programming?
  • What should I do to start programming?

Programming is teaching a computer to do things you want it to do. Programming changes problems into executable solutions for these problems. It requires an ability to formalise problems, meaning, to describe a problem in an understandable way, to break down big problems into smaller problems. It requires a little bit of imagination, some patience and time. Programming involves writing code, coming up with algorithms and ideas, managing resource consumption, analysis and more.

Programming is important because it changes our World. You can do more and more things writing software and have a lot of impact on our civilization. Humanity will flourish when we solve and create software that solves our biggest issues. You can also create cool games and apps!

When you decide to become a programmer, you have many choices. There are many languages for computer programming to choose from, but, what is a computer language in the first place? Programming language is a language for humans that can be translated into instructions for a processor. Your single word can be translated into a lot of instructions for your computer. And if you use a high level language, your words can be translated into a lot of words in a simpler language and from that translated into shit ton of instructions for your PC. That’s why in my tutorials, I will introduce you to a high level language. In such a language you can do a lot quickly.

Why are there so many programming languages? Different people have a lot of different ideas and goals. And also they express them differently. They have various problems and those require number of approaches. Also people build on top of others’ ideas and languages resulting in a diverse language scope.

Which languages should you choose? High level languages. They give more creative power that lower level languages. They can accomplish the same things, but it will require less work to do it in higher level language. You have some choices

  • JavaScript – the most popular programming language in the whole World. You can get numerous resources for free on the Internet. Largest community can provide support if you get stuck during learning or have any problem. You can create interactive web pages, progressive web apps, applications for windows, ios, android, client and server side applications. JS has over 500,000 packages on npm (node package manager). JS has a lot of useful frameworks like for example ReactJS developed by Facebook. NodeJS is great for creating almost everything (more on Node.js later). Another good option is TypeScript a superset of JavaScript with optional static typing.
  • Python – has advanced Artificial Intelligence libraries. It is great for creating artificial neural networks. Supports imperative and object programming paradigms (more on different paradigms later). Has it’s own package manager with over 100,000 packages. Popular web framework called Django is developed in Python.

Homorable mentions:

  • C# – great for creating games with Unity3D game engine (example: Blizzard’s Hearthstone).  Works well with Microsoft’s .NET framework.
  • Ruby – very efficient syntax, great for beginners. With Ruby on Rails you can create Web pages (twitter was created in ruby)

What software do you need to start programming?

There is a lot of good software available on the Internet for free. I tested a number of different editors and the following are my favourite:

  1. Visual Studio Code – lightweight editor from Microsoft developed in TypeScript and JavaScript. Has a lot of useful extensions, it is fast and reliable. Has integrated terminal. Has very clear and modern interface.
  2. Atom – It is great too, it has packages, cool themes and allows for a lot of customisation.

You can use other editors: Brackets, JetBrains editors, Notepad++, however I highly recommend VS Code

What should I do to start programming and develop new programming skills?

Subscribe for my posts on programming. 🙂
Edit: New post is out: Basics of programming #2 JS


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.