What language to start learning programming on your own

What language to start learning programming on your own
What language to start learning programming on your own

One of the problems for a beginner is which programming language to start learning first. We answer a difficult question.

C# 9 and .NET 5 – Modern Cross-Platform Development: Build intelligent apps, websites, and services with Blazor, ASP.NET Core, and Entity Framework Core using Visual Studio Code, 5th Edition

In C# 9 and .NET 5 – Modern Cross-Platform Development, Fifth Edition, expert teacher Mark J. Price gives you everything you need to start programming C# applications.

This latest edition uses the popular Visual Studio Code editor to work across all major operating systems. It is fully updated and expanded with a new chapter on the Microsoft Blazor framework.

Pascal and Delphi are the strictest teachers

This statement may surprise you a lot, but do not rush to close the tab with the article: this is a recommendation from a practicing senior PHP developer.

Why Pascal?

If we are talking specifically about teaching programming from the very basics, then you need to start in Pascal or Delphi.

The point is that Pascal is a very structured and ordered language. He teaches correct programming. It has a separate section for describing variables. In general, the syntax of the language is strict: for example, a programmer cannot put a comma after the last element of an array.

What language to start learning programming on your own 2
What language to start learning programming on your own 2

Languages ​​like PHP and Node.js give the developer a lot of liberties in the coding process. As a result, without the necessary knowledge of how to program correctly, you are likely to end up with dirty code with many errors.

An example of terrible PHP code, provided that the strings ‘true’ and ‘false’ are passed in the active property:

$ len = strlen ($ r-> active); if ($ len == 4) {$ a = true;} else {$ a = false;} if ($ a) {// do something}

And this is how the correct code looks like:

if ($ r-> active == ‘true’) {// do something}

Another good example is when a class method can take an object, array, number or string as the only parameter. Beginners do a method check for the parameter type and make mistakes. For it, you need to use either four different methods, or four classes and apply the Strategy pattern.

Pascal teaches good development manners. For example, the fact that you always need to declare variables and call them correctly. Many PHP programmers often sin by forgetting about it. As a result, the value of the variable is not assigned, and without it it is used throughout the script – no wonder the program does not work as it should.

Why Delphi?

An alternative to a strict programming teacher is the Delphi language. In terms of efficiency and result, this is the same Pascal, only for OOP: with it you will understand SOLID principles. You won’t do what you can do with C or PHP – but for someone with zero knowledge and no experience, this is an advantage, not a disadvantage.

If a beginner decides which programming language to start with and chooses PHP and the like, then his code will be very “dirty”, sloppy and difficult to read – because the syntax allows you to write this way. And here the responsibility for the cleanliness of the code falls on the shoulders of the developer himself. Therefore, we advise you to start with technologies that you would call “ancient”, and you will be right.

Educational labs in Pascal and Delphi create a somewhat refined understanding of code and programming – that is, divorced from reality. After all, you are not doing technical tasks in a real, working project. They will not give a systematic approach and a complete picture of programming.

Instead of a laboratory solution without practical application, try writing a simple program for working with clients: not a website, but, for example, a desktop accounting application. More options: a graphical or text editor, browser, antivirus, or any program to fit your needs. It will be good practice for a beginner who wants to learn programming from scratch on their own.

Java and C # / C ++ is another option

We offer another way, perhaps more understandable and acceptable for you, – learning Java, C # or C ++. They are also quite strict with newbies. These are statically typed languages ​​that require an understanding of the principles of object-oriented programming and contain many nuances associated with typecasting.

And if you like the language as you learn, you will continue to write in it. It is quite possible to find a programmer’s job in Java and C #, in contrast to the same Pascal and Delphi, which can be considered only as a “training ground” for beginners.

What if I don’t want to learn these languages?

Of course, we do not force you to learn Pascal and Delphi “useless” for a whole year: you just need to practice them for a while to master the rules of good form. Our task is only to give advice on which language is better to start learning programming. Be careful with self-education: you can spoil yourself as a developer, barely starting a career.

It is possible that our recommendations will seem old-fashioned to you, and you will want to jump into the coding loopholes as soon as possible with the dynamic languages ​​of the modern web: PHP, Python and others. Then start learning programming by looking for a mentor and taking online courses. Here you will be taught to write code according to the rules by those who have been able to do it for a long time and have gone through combat school with many other languages ​​and technologies. Having a mentor is a very important factor when learning to program in the early days.

Python Programming and Visualization for Scientists

Python continues to gain dominance as a language of choice for analyzing and visualizing scientific data. Although it has concise, intuitive syntax, learning how to plot and visualize data requires scouring the internet for documentation and examples. This book was written from the perspective of “What book would the authors want to have had when they were transitioning to Python?”

Rate article