One of the most important skills for today is the ability to write a program. After all, computer technology is everywhere, from factories and transport to home appliances. They have greatly simplified our lives.
An ordinary user, as a rule, heard about 3-4 programming languages. But professional coders know that they are many times more. According to various sources, on average today there are between 500 and 5000 programming languages.
But among them, year after year, programmers trust only a dozen (if not less).
Obviously, a language chosen for subjective reasons. But for me it was a surprise to see a huge difference in polls from different sources.
One of the largest IT hosts annually publishes statistics on the use and development of programming languages, frameworks and libraries. Their audience includes about 31 million developers and at least 2 million organizations. Therefore, the indicators can be considered quite reliable.
As can be seen, the same languages fall into the top 10 of the last 5 years (with the exception of TypeScript, which broke into 7th place only this year). Remarkably, the top four is completely unchanged. It is clear that the programmers have not yet discovered anything new and prefer proven options.
They also published data on the popularity of languages in different parts of the world:
PYPL-index and Tiobe
PYPL and TIOBE are two indices that analyze the popularity of programming languages according to the frequency of search queries. PYPL explores Google trends exclusively, while Tiobe takes data from Youtube, Wikipedia, Bing and other popular systems.
But there is one nuance: PYPL examines only the pages that describe the programming process, and TIOBE creates a rating based on all sites where there is at least a mention of a language. Because it is less accurate. I provide the latest published data so that you can be sure.
I will go to the TIOBE statistics:
You could say that I unreasonably withheld. But I want to provide the results of a survey of programmers conducted by Stackoverflow, drawing attention to some of the details.
Typescript and Ruby in this ranking took 12 and 13 places respectively. But Visual Basic. NET is located at 18, while TIOBE is 6 at index.
What to look for
Having studied all the statistics, we can distinguish several programming languages that will definitely be trend in 2020.
- high speed due to the ability to run through the browser on the client side;
- easy to learn;
- it is perfectly combined with other languages;
- the ability to create a crowded interface;
- annual updates.
- since the code is executed on the client side, this somewhat reduces the security of the user's computer;
- scripts can be executed differently depending on the browser.
- a complete description of each component of the code, which eliminates the likelihood of a violation of one element when changing another;
- requires fewer tests due to the special architecture;
- extended toolbox;
- the ability to configure so that the erroneous code did not commited.
- to integrate the libraries, it is necessary to describe each module in order to avoid compilation errors;
- few professionals;
- the code is written longer than in JS.
As the statistics of Github and PYPL showed, this language is gaining momentum, and its community is expanding. The documentation is very well designed, because it is not so difficult to learn. Despite the shortcomings, it is highly likely that its ratings will increase significantly by 2020.
HTML allows you to organize all the page content. It is also widely used for web page layout and is considered fairly simple to learn. Very often they start their programming path with HTML.
- easy to create sites;
- supported by any browser;
- optimizes the appearance of the page for any device well;
- lightweight files;
- completely free.
- impossibility of correct interpretation without a browser;
- creates only static pages;
- you need to write large code to create simple pages;
- low security level;
- each page must be created separately.
It cannot be said that this language will be used by large corporations. Its functionality today is not enough to create sites of the 2020 level. Nevertheless, it is still good for beginners and will often be used to create news portals, online stores and more.
One of the most popular server-side programming languages. According to the latest PYPL statistics, users most often seek training and assistance in working with Python. As a rule, it is used to write scripts and plug-ins. For example, through Python are recorded episodes and actions of characters in games.
It is a universal language with easy to read code. Due to the features of the syntax, programmers need to perform fewer actions to create a plugin than in Java or C ++. Brands like Instagram and Surveymonkey use it. Google, Netflix and Quora cannot do without Python.
- very simple code;
- the possibility of asynchronous coding (alternating the execution of processing cycles);
- supports most libraries;
- open source;
- object oriented.
- despite the simplified way of writing code, many processes run long enough;
- weak for mobile application programming;
- requires many tests to completely eliminate errors.
Many advice Python to absolute programming weasels for initial learning. Ideally, after 2-3 lessons, you can write a simple code.
Python ratings are growing noticeably. In the past, statistics put it in 4-5 places, but in February 2019 it was already in the first place in the number of search queries. More detailed statistics will be only at the end of the year. But now we can confidently say that this is the main trend among programming languages.
Another popular choice of programmers. This language is widely used by large enterprises to create applications of various kinds. The Java environment is incredibly stable, making it the choice for writing Android applications.
A lot of sites today do not function without Java. It is noteworthy that every year there are more such services. Because of the demand for professionals who are well versed in this programming language, more and more.
- object-oriented programming;
- readable and easily manageable language;
- does not require a specific hardware infrastructure;
- good level of security;
- automatic memory management.
- non-standard interface, which you need to get used to for a long time;
- consumes a lot of memory and reduces hardware performance;
- difficult to learn;
- limited critical delay setting;
- does not support general programming, which increases the amount of work when writing code;
- no possibility to make backup;
What can I say about Java? Strong old fellow, to whom no one has found a replacement. It is a little behind the current pace of technology development. But thanks to the high-quality code compilation and high stability, it still occupies high positions. Recently, there has been a decline in interest in Java, but it is still one of the most desirable languages among programmers.
- low knowledge threshold to get started;
- large ecosystem;
- huge community;
- high-grade debugging.
- interpreted language: requires more resources and slows down code execution;
- multi-threaded execution (requires a lot of memory, but it is always limited);
- requires changing the configuration file to install extensions.
PHP is one of the most controversial trends. If you are up to date, most developers have called it the worst programming language. Moreover, due to the low threshold of knowledge, it is easy to stumble upon an amateur, rather than a qualified specialist.
Nevertheless, already over the years it occupies the top lines and, believe me, in 2020 it will be one of the most popular in the market.
Finally, I want to draw a little of your attention to the little-known, but rapidly developing programming languages. They have great prospects to enter the top 10. Among them are Kotlin, HCL and Go.
So far they have not gained much popularity due to the relative novelty and traditional approach of companies to developing applications. However, the appearance in the TypeScript top indicates that interest in new methods is growing. Therefore, watch out for these languages and study their features at your leisure.