📜 ⬆️ ⬇️

How to choose a language to learn in 2017

Editor Olga Evsikova, specifically for the Netology blog, described how to choose a language to learn.

image

There are many reasons to become a developer. Programmers make a lot of money, create new products and change the world. Burn with the desire to become one of them, but do not know how to take the first step? This article will help to understand.

Look at the ratings


PYPL rating


The PYPL (PopularitY of Programming Languages) rating system is based on the number of search queries for tutorials on Google. They, together with GitHub, made the top programming languages ​​for 2017.
')
By choosing a language from this ranking, you can be sure that you will always have available study materials and an active student community.

image

Since 2005, Java has been the most popular programming language worldwide. Over the past 5 years, the most interest is in the Python language , and PHP is losing popularity, but not inferior to its pursuer C #. The top languages ​​are still JavaScript , C ++ together with C, R and Ruby.

TIOBE Index


Another system for estimating the popularity of programming languages ​​is TIOBE based on the frequency of searches on Google, Baidu, Wikipedia, Yahoo and YouTube.

image

Java is in the lead again, but Python occupies only the fourth position, closing the top ten JavaScript , PHP . And it starts the twenty - Ruby.

Decide on the direction


Choose a language based on the software products you want to create.

Web development


This is the process of creating websites and applications. It can be anything: from a social network to the landing page of a sports club.

Web development of the exterior is called the front-end . First, a page is created using HTML markup. This markup is responsible for the structure of the page. Then the appearance of the created page is modified using cascading style sheets - CSS and add interactivity in JavaScript.

Back-end is the server side. Here all the magic of interaction with the interface occurs, and often we see only the result of work on the server side. An important part of working with the server is the ability to use databases. If you are interested in this direction, feel free to learn the SQL database management language, MySQL and get acquainted with the Oracle framework. Backend can be written in Ruby, Python , Java, PHP .

Large resources always use several tools, since it is necessary to support the work of several data centers, servers, and the system of interaction between these servers. This is the product of a large team: programmers, engineers, and system administrators. So the social network VKontakte used for its work a translator from the company Facebook - HipHop, which transforms the original PHP language into C ++ to speed up the work. Later VKontakte created their own translator and named it Kitten PHP.

Mobile applications


If you are planning your own project, it will be helpful to find out which operating system your target audience is using. But any project that seeks development goes beyond one platform.

For iOS development, they write in Swift and Objective-C. Under Android - Java and C ++.

image
Mobile applications in the Google Play Market.

Desktop applications or desktop


This may be the desktop version of the mobile application. For example, Viber messenger. Or Skype video call service, created at a time when mobile applications have not been so popular. And in general, any programs for everyday tasks that can be run from a laptop or computer.

For Windows, they write in C ++, C # and Java. For Mac OS - Objective-C. For development under Linux they write in C and C ++.

image
Desktop applications in the App Store.

Game development or game dev


To create games, you need not just to play them, but to understand the features of their creation. This gamedev is different from other areas, and it is distinguished in a separate category.

Mobile games for Android are written in Java and C ++, under IOS - Swift and Objective-C. Browser-based online games can be played on social networks. This is where knowledge of web development in JavaScript + HTML or Flash comes in handy. Computer games are often written in C ++. This low-level language is most suitable when it comes to developing complex things.

image

So one of the most successful games in the world - Minecraft is written in Java, but rewritten specifically for Android in C ++.

More to create games using special game engines such as Unity (C # and Java Script) and the Unreal Engine (C ++). They simplify the process of creating games and allow you to create 2D and 3D games on Mac OS, Linux, Windows and PlayStation, Xbox consoles.

Big data


Social networks and the media are thinking about how to effectively use data that has been accumulated over the years in server repositories and continues to flow. Large amounts of data allow us to find out how the user interacts with services, to simulate situations and make predictions.

In Russia, the Big Data market is only emerging, but banks and telecommunications companies have already shown great interest. A new profession has emerged - a data analyst . There are programming languages ​​such as R, designed specifically for working with large amounts of data. They also use Python , C, Java and Scala.

image
Big Data in the study of the MegaFon company and the Strelka Institute.

Rate the market


If programming is not just a hobby for you, it is better to estimate the level of developer salaries in advance. On the Internet, you can find different statistics. For example, such.

image
The data of "My Circle."

According to statistics, it is clear that the highest paid programmers, on average, are engaged in mobile development or software. For the rest - programmers rarely earn less than 80 thousand rubles. For example, according to the report of the analytic company App Annie, it is expected that the global market for mobile applications in 2017 will grow by 28.6% and reach $ 166 billion.

But often one programming language is not enough, and potential employers require knowledge of several languages ​​and frameworks. This is because only one part is written in one language, and the rest written in others.

Choose what you like

Regardless of the chosen programming area, you should like the language. Try it.

Source: https://habr.com/ru/post/332028/


All Articles