JavaRush /Java Blog /Random EN /Rating of programming languages
Alex
Level 37

Rating of programming languages

Published in the Random EN group
There is no one right answer to the question of which programming language is the best. Each language was created to solve specific problems. Over time, some of them lost relevance and faded into the background. The most popular programming languages ​​today are those that meet the needs of large corporations, businesses, mobile and Internet platforms. The ranking of programming languages ​​will help you find out the demand for a language in the IT technology market, and also simplify the task of choosing if you decide to start programming. In the article we will talk about such ratings, and also determine the top programming languages ​​of 2020, according to these ratings. Programming languages ​​rating - 1

What is a rating?

The rating does not answer the question of which language is better. Rather, it measures the popularity of programming languages ​​by determining it based on one or more criteria. Such criteria may be the language requests of users on the Internet, the amount of downloaded software, the number of discussions on forums, the number of vacancies on the market. Here, for example, is how you can calculate the rating of Java among four languages ​​based on user requests on the Internet: Programming languages ​​rating - 2, where n is the number of user requests for the language on the Internet.

What are the ratings?

Below are ratings from various companies that have been monitoring the popularity of programming languages ​​for a long time. One of the most famous ratings is TIOBE. Analysis of ranking results includes data based on search results from 25 major search engines, including Google, Ebay, YouTube, Yahoo!, Wikipedia, Amazon, Bing. In the first picture you can see the most popular programming languages ​​in May of last year and this year. Programming languages ​​rating - 3
Figure 1. Rating of programming languages ​​2019 (May), Rating of programming languages ​​2020 (May) from TIOBE Software
Programming languages ​​rating - 4
Figure 2. The most popular programming languages ​​over the past 8 years and the dynamics of changes in their popularity. TIOBE Software Data
The Red Monk rating (Fig. 3) uses data from GitHub and StackOverFlow to compare languages. The parameters by which the rating is compiled are the frequency of discussion and use of language in projects. Programming languages ​​rating - 5
Figure 3. Rating of programming languages ​​according to Red Monk
Below are the top programming languages ​​as of January 2020 based on the Red Monk rating. According to the rating, the most JavaScript code is posted on GitHub, with Java and Python sharing second place.
  1. JavaScript
  2. Python and Java
  3. PHP
  4. C#
  5. C++
  6. Ruby and CSS
  7. TypeScript and C
  8. Swift
  9. Objective-C
  10. Scala and R
  11. Go and Shell
  12. PowerShell
  13. Perl
  14. Kotlin
  15. Haskell
The PYPL ranking (Fig. 4) is based on an analysis of the frequency of searches for language documentation on Google. The more requests, the more popular this language is considered. Source data comes from Google Trends. Programming languages ​​rating - 6
Figure 4. PYPL Top programming languages ​​2020 (May)
As you can see, according to PYPL, the top programming languages ​​in 2019 are not too different from the top in 2020 for the same month (May). Rating compiled by the Institute of Electrical and Electronics Engineers IEEE Spectrum (Figure 5). It uses data from 12 sources, including Google, GitHub, StackOverFlow, Reddit, Twitter, Career Builder, Dice, IEEE Xplore. In addition, this ranking allows you to evaluate programming languages ​​from a career perspective and by industry. According to the ranking, Python, Java and C lead the world, with Java showing excellent results in web, enterprise and mobile development. Programming languages ​​rating - 7
Figure 5. IEEE Spectrum Rating (2020)
Figure 6 shows the leaders among languages ​​used by developers according to the Stackoverflow Developers Survey (2019). Programming languages ​​rating - 8
Figure 6. Rating of programming languages ​​according to StackOverFlow Developers Survey
And Figure 7 shows the dynamics of the popularity of language queries from Google Trends for the first 5.5 months of 2020 Programming languages ​​rating - 9
Figure 7. Dynamics of requests for languages ​​Java, C++, Python, JavaScript, C

Analyze ratings and narrow the search

What conclusions can be drawn by analyzing these ratings? Despite some differences in the distribution of languages, the leaders are Java, JavaScript, Python, C. It is these four languages ​​that occupy about 60% of the total use of programming languages ​​in the world. Therefore, by choosing one of them, you will be in the technology trend.

Let's take a closer look at the "candidates"

So which programming language should you learn if you choose from these four? To decide, you need to consider several important points.
  • JavaScript is a very popular language for developing front-end web applications. This language is closely related to HTML and CSS, so in parallel with learning JavaScript, you will have to understand these technologies. Choose this language if you want to do front-end programming; if not, it’s better to choose one of the three Python, Java or C family as your first language. However, the basics of JavaScript will not hurt all developers, regardless of their profile.

  • Python is a good option as a first language. But it is significantly inferior in performance to the C and Java languages, so it is not used for developing high-load applications. For example, here are the results of benchmarking various languages ​​using nested loops:

Programming languages ​​rating - 10
Figure 8. Performance test results for various languages
Be sure to research the job market in your area. If in the West it is quite easy for a Python developer to find a job, then in Eastern European countries things are somewhat different. Is there enough demand for Python in your city? Choose this language if you are sure that you can easily find a job as a Python programmer. If you want to make money through programming, take a look at Java, a family of C languages. C++ is worth learning if you want, for example, to write various application programs or games. C is closer to the hardware and is used for low-level programming. Suitable, for example, for writing drivers and operating systems. The C# language is created in the image and likeness of Java, only with a syntax even closer to C++ and is used primarily for developing software products for the NET.Framework and Windows platforms. As for Java , it has established itself as a fast (Fig. 7), reliable and platform-independent language, which makes it the best programming language for developing enterprise applications - enterprise-scale applications. Moreover, Java is one of the main languages ​​for mobile development and is also widely used to create a variety of web and desktop applications. The Java language was created to simplify the work of programmers and reduce the requirements for their qualifications, so it is simpler and “fault-tolerant” to use compared to the C and C++ languages. To program correctly in C or C++, you need to have a fairly high qualification, since these languages ​​have the ability to use low-level programming tools. With insufficient knowledge, the likelihood of writing unsafe and confusing code that is difficult to debug using these languages ​​is much higher than in Java. Java is an easy language to learn, which can be mastered “without leaving home”, thanks to the huge amount of material on the Internet and various online educational resources, so I advise you to take a closer look at it as the first language to learn. Thanks to the existence of forums such as StackOverFlow , Javatalks , and Cyberforum, when learning Java, you can easily find the answer to any question on the topic of programming. Additionally, Java developers are some of the highest paid programmers. You can read more about this here .

Let's summarize

So, if you have not yet decided on the first language to study, follow these steps:
  1. Think about what you would like to do in the future (web development, development of application programs and software for games, mobile development, development of server enterprise applications)
  2. Look at two or three main language ratings and review the popularity of languages ​​on the Internet
  3. Study the job market and salaries in your region (for example, on job search sites)
  4. Assess your strength and time that you can devote to learning programming

Java is the best choice

Why is Java the best programming language for the vast majority of beginners?
  • Knowing Java, there is a high probability that you will develop enterprise applications. This work pays well, because the customers are corporations, banks and large business players.
  • Knowledge of Java gives you the opportunity to engage in promising, actively developing and also decently paid mobile application development.
  • The vast majority of running enterprise server applications in the world are written in Java, so the language, even in the most pessimistic scenario, will be supported for many years to come.
  • For many years, Java has been one of the leaders in the number of vacancies. Often employers are large companies, and it is easier for a “junior” to develop in a large company than in a small one.
  • Java is quite easy to learn. Once you master it, you will master the fundamental principles of programming needed for any programmer. At the same time, after this it is quite easy to learn JavaScript or Python and it is much easier to approach the relatively complex C++.
  • Java language is easier to use compared to C/C++ languages.
  • Last but not least, Java development pays well.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION