Évaluation des langages de programmation populaires. Où vivent les meilleurs programmeurs du monde ? Le langage de programmation le plus utilisé au monde

HackerRank publie régulièrement des dizaines de milliers de nouvelles tâches de codage conçues pour améliorer les compétences des développeurs. Selon le projet, sa communauté grandit chaque jour et en 2016 dépasse 1,5 million de personnes. La plateforme est également utilisée par les entreprises lors du recrutement de programmeurs, comme Facebook et Airbnb.

L'étude HackerRank couvre les programmeurs de 50 pays où la ressource est le plus souvent utilisée. Pour commencer, les auteurs ont identifié 15 types de tâches les plus populaires auprès des visiteurs.

Les problèmes les plus courants étaient ceux liés aux algorithmes. Ils sont choisis par environ 40 % des participants au test. On parle notamment de tri de données, de programmation dynamique, de recherche par mot-clé, etc. Pour résoudre ce type de problème, vous pouvez choisir n'importe quel langage de programmation.

En plus des algorithmes, les trois premiers comprenaient également des tâches liées à la programmation Java et aux structures de données : elles sont exécutées respectivement par 9,3 % et 9,1 % des utilisateurs. Sur la base des notes globales pour chacun des 15 types d'affectations, la note globale pour les qualifications des programmeurs a ensuite été dérivée pour chaque pays. Le score le plus élevé pouvant être obtenu dans le classement est de 100 points.

Les programmeurs de Chine ont montré les meilleurs résultats pour accomplir des tâches sur HackerRank - ils se classent au premier rang du classement, gagnant les 100 points. Les programmeurs russes suivent légèrement derrière eux - 99,9 points. En plus d'eux, les cinq premiers pays avec les meilleurs programmeurs incluent également la Pologne, la Suisse et la Hongrie.

Les États-Unis n'étaient qu'à la 28e place du classement, l'Inde - à la 31e place. Dans le même temps, ces pays sont en tête du nombre de programmeurs qui utilisent la plateforme HackerRank. Les développeurs du Pakistan, du Sri Lanka et du Nigeria affichent les pires performances sur les missions, selon l'étude.

Séparément, l'étude présente les résultats des pays par type de tâche. Ainsi, la Russie était la meilleure dans l'exécution des tâches liées aux algorithmes - le domaine le plus populaire et le plus compétitif. La Chine a montré les meilleurs résultats dans les problèmes de mathématiques, de programmation fonctionnelle et de structures de données.

L'étude a révélé que les développeurs du monde entier sont les plus susceptibles de choisir des emplois dans le langage de programmation Java. Cette situation est très différente pour le Pakistan et la Malaisie, où les utilisateurs préfèrent le C++, et à Taïwan, où Python est en tête.

Les résultats de la Russie dans cette étude peuvent être mis sur un pied d'égalité avec les réalisations dans les compétitions internationales liées à l'informatique et à la programmation. Plus tôt, en août 2016, lors des Olympiades internationales d'informatique, la Russie avait pris la deuxième place pour le nombre de points marqués, derrière seulement l'équipe chinoise. En mai 2016, l'équipe de l'Université d'État de Saint-Pétersbourg (SPbSU) est devenue le vainqueur de l'Olympiade internationale de programmation étudiante ACM ICPC 2016, battant les équipes de l'Université Jiao Tong de Shanghai et de l'Université Harvard. En 2016, le programmeur russe était également l'un des trois lauréats du concours de programmation Google Code Jam.

Selon Andrey Bivetsky, PDG de SAP Labs dans la CEI, il est clair pour tout le monde dans le monde que les développeurs chinois sont parmi les leaders. Les spécialistes russes du marché mondial sont également classés parmi les meilleurs au monde, ce qui a été clairement démontré par les résultats de la récente Olympiade ACM ICPC 2016, a-t-il noté.

SAP classe également les développeurs russes comme les spécialistes les plus qualifiés, et lorsque nous décidons où placer un développement, nous prenons en compte de nombreux paramètres, notamment la disponibilité du personnel, son coût et la possibilité d'embauche. La confirmation que SAP reconnaît les développeurs informatiques russes comme des leaders de l'industrie mondiale est l'ouverture du centre IoT (le centre de "l'Internet des objets" - environ TAdviser) basé sur SAP Labs en juin de cette année, qui a eu lieu dans le cadre de le SAP Innovation Forum pour les entreprises de développement , - Andrey Bivetski a déclaré à TAdviser.

Sergei Belov, coordinateur des programmes universitaires d'IBM, note que le leadership des programmeurs chinois, russes et polonais n'est généralement pas surprenant, faisant également référence aux "résultats du concours de programmeurs le plus prestigieux" ACM ICPC. Selon Sergey Belov, le côté le plus fort des programmeurs russes est précisément la connaissance dans le domaine des algorithmes et la capacité de les appliquer pour résoudre efficacement des problèmes : « Ce n'est pas un hasard si ACM ICPC est appelée la bataille des intellects. La contribution de nos gars à la composante innovante du développement du pays est déjà perceptible et, je pense, au fil des ans, elle sera encore plus importante, compte tenu des tendances technologiques modernes. "

  • Outils de développement d'applications - Catalogue de produits et de projets

Parmi les gens ordinaires, les programmeurs sont maintenant une profession respectée. En effet, sans eux il n'y aurait pas d'iPhone et de Facebook, ils créent des entreprises cool et ils sont parmi les rares, en Ukraine ils sont liés au dollar. Qui est directement populaire parmi les informaticiens ? VentureBeat est une liste de programmeurs légendaires qui jouissent de la plus grande autorité dans la communauté informatique mondiale.

Linus Torvalds créé Linux, un système d'exploitation gratuit, dans un dortoir de l'Université d'Helsinki. Aujourd'hui, Linux gère des centres de données et des superordinateurs, et est développé par une horde de fans de logiciels gratuits à travers le monde.

Torvalds est connu, notamment, pour le fait qu'il ne rentre pas un mot dans sa poche et ne cherche pas à plaire au public. Lors d'un des discours récents, lorsqu'on lui a demandé dans le public s'il effrayait les membres de la communauté Linux avec sa manière de communiquer, il a répondu : « Je m'en fous de vous ». À propos de Torvalds parmi les développeurs, il y a les mêmes blagues que parmi les gens ordinaires à propos de Chuck Norris. Par exemple, Torvalds peut diviser par zéro et jouer à des jeux 3D en exécutant leur code source en tête en temps réel.

Sir Tim Berners-Lee- le seul de cette liste à avoir réussi à devenir chevalier - il a été fait chevalier par la reine britannique Elizabeth II. Il est le créateur du protocole HTTP (Hypertext Transfer Protocol), la technologie sur laquelle tout Internet est construit.

Il dirige maintenant l'Alliance Internet Accessible, une organisation sociale soutenue par Google, Facebook et Microsoft qui vise à rendre l'Internet haut débit accessible aux personnes du monde entier.

Donald Knuth... Ses travaux universitaires en informatique lui ont valu le titre de « Père de l'analyse d'algorithmes ». Tout sur le web, de l'algorithme de sélection de flux Facebook à l'algorithme de sélection Amazon, lui doit quelque chose. Il a déjà 77 ans mais travaille toujours. Il écrit actuellement un livre intitulé The Art of Computer Programming. Il est également professeur émérite à Stanford.

Brendan Icke, créateur du langage de programmation JavaScript, qui est la norme de facto pour la programmation Web. Il a aidé à fonder Mozilla, la société qui développe le navigateur Firefox. Il a démissionné de son poste de PDG lorsqu'il a été informé de son soutien financier à un projet visant à interdire le mariage homosexuel en Californie.

Salomon Haykes, le créateur de Docker, une technologie que les développeurs adorent car elle conditionne le code dans des conteneurs et le livre aux serveurs. Fonctionne comme une machine virtuelle, mais beaucoup plus rapide. Docker a commencé en tant que projet parallèle chez dotCloud, mais lorsqu'il s'est avéré être populaire, l'entreprise a survécu à un pivot et est rapidement devenue une licorne.

Mark Zuckerberg, créateur de Facebook. que plus l'équipe est petite et flexible, plus elle fonctionnera avec succès. Le milliardième réseau social est desservi par "seulement" 10 000 personnes dans le monde.

David Heinemeyer Hansson connu sous le nom de DHP. Créateur de Ruby on Rails, un framework très populaire qui lui a valu le titre et le prix du Google Hacker of the Year 2005.

Richard Stallman, connu principalement pour la lutte pour le logiciel libre, le fondateur de GNU, l'auteur de l'idée de "copyleft" - par opposition au droit d'auteur. Très fondé sur des principes, n'utilise aucun développement propriétaire.

Bram Cohen, le créateur du protocole BitTorrent, offrant aux utilisateurs des téléchargements de fichiers ultra-rapides. BitTorrent est incroyablement populaire, avec une estimation prudente de 250 millions d'utilisateurs dans le monde. L'année dernière, Thom Yorke a essayé de distribuer l'album exclusivement via BitTorrent. Et pourtant, les capacités de BitTorrent étaient principalement appréciées par les pirates Internet.

James Gosling, créateur du langage de programmation Java. Mais vous savez déjà que. Ce que vous ne savez peut-être pas, c'est que James de la célèbre startup ukrainienne Jelastic est un réalisateur indépendant.

Bjorn Stroustrup, programmeur danois. En 1978, il crée le langage de programmation C++, améliorant le C. Il travaille toujours activement : il enseigne à l'Université du Texas A&M, Columbia University, et aussi à Morgan Stanley.

Jean Carmack, co-fondateur d'id Software. Il est connu dans le monde entier comme le créateur de Doom. D'ailleurs, l'idée même du jeu est née lors d'un match dans D&D, auquel l'équipe a joué régulièrement au siège d'id Software pendant plusieurs années. Et John a toujours été le maître du jeu. Il a été le premier à essayer ces astuces graphiques 3D qui sont encore utilisées aujourd'hui.

Il est maintenant employé dans la société Oculus VR à 2 milliards de dollars.

Selon HackerRank, une plate-forme avec 1,5 million d'audience où les programmeurs s'affrontent pour résoudre des problèmes, fin 2017, la Russie se classait deuxième après la Chine dans le classement des programmeurs les plus forts et détient le leadership absolu dans le domaine du développement d'algorithmes. Mais les résultats les plus impressionnants sont ceux des étudiants russes, qui ont battu tout le monde en mille morceaux lors des olympiades et des championnats internationaux.

Depuis 2000, la Russie a remporté 32 médailles d'or au Championnat international de programmation sportive étudiante (ICPC), laissant la Chine loin derrière avec 13 et les États-Unis avec six.

Qu'est-ce qui fait que les spécialistes russes de l'informatique sont recherchés et réussis ?

"LITMO-1" (1958) était la première machine numérique électronique universelle pour les calculs d'ingénierie, contenait 850 tubes électroniques, produisait 100 opérations par seconde et avait 2048 octets de mémoire.
.

Continuité

La Russie moderne a hérité d'une solide école mathématique de l'Union soviétique. Les scientifiques soviétiques ont fait des percées révolutionnaires dans les sciences techniques et naturelles - rappelez-vous simplement les noms de Piotr Kapitsa, Igor Kurchatov, Lev Landau.

Après l'effondrement de l'URSS dans les années 90, les informaticiens étaient très demandés. La programmation était presque le seul domaine professionnel dans lequel vous pouviez gagner de l'argent. Il est facile pour un mathématicien averti d'apprendre la programmation car l'informatique est une application pratique des mathématiques. Par conséquent, l'informatique en Russie, bien qu'avec un retard, est également devenue un domaine développé de la science et de la pratique.

Les gars intelligents de l'école

Les écoliers russes déjà des classes élémentaires résolvent de nombreux problèmes dans lesquels ils doivent garder plusieurs étapes dans leur tête à la fois. Forum donne également à nos étudiants une interdiction d'utiliser une calculatrice dans les cours et les olympiades. En France et aux USA, il est permis de se simplifier les calculs dès la troisième année.

De plus, nos écoliers commencent assez tôt à travailler avec des concepts abstraits. Par exemple, nous avons déjà des polynômes au lycée. Les nombres sont un concept imaginable, mais (a + b) 2 est beaucoup plus difficile à appréhender. Cela nécessite l'habileté de la pensée abstraite.

En Russie, il existe également un système bien développé d'écoles spéciales, de lycées à orientation physique et mathématique, divisés en spécialisations dans les classes supérieures. Les olympiades aident à sélectionner et à envoyer des enfants talentueux dans les meilleures universités du pays dès l'école. En parcourant les étapes de l'Olympiade panrusse pour les écoliers, les élèves s'entraînent sur des problèmes difficiles et acquièrent l'expérience de la compétition avec les meilleurs des meilleurs. En conséquence, déjà au stade scolaire des Olympiades internationales d'informatique et de physique, les enfants russes affichent des résultats exceptionnels.

Tous ceux qui aiment les programmes sportifs connaissent bien le nom de Gennady Korotkevich. Il est le programmeur Olympiad le plus titré au monde et se classe premier dans le classement des codeurs sur la plate-forme Codeforces. Au début, Korotkevich était le plus jeune vainqueur absolu de l'Olympiade internationale des écoliers en informatique IOI de Biélorussie, et plus tard il est entré dans une université russe et en 2013 et 2015 a remporté l'or absolu au championnat du monde des étudiants ICPC en programmation dans le cadre de l'ITMO Equipe universitaire. Korotkevich a également remporté de nombreuses victoires à Yandex.Algorithm, VK Cup, Google Code Cup et de nombreuses autres compétitions.

Les étudiants de l'Université ITMO sont six fois champions du monde absolus de la programmation en 2015 / Photo Wikipedia
.

Les universités

Les universités: MIPT, Université d'État de Saint-Pétersbourg, Université ITMO, Université d'État de Moscou contribuent grandement à la formation du personnel informatique le plus fort de Russie. Lomonosov, Université d'État de Saratov, Université fédérale de l'Oural. Les universités organisent des concours de programmation. À Moscou, le MIPT Center for the Development of IT Education organise le festival international MosCode. Le championnat de programmation sportive de l'Oural a lieu chaque année, des compétitions régulières ont lieu à Saint-Pétersbourg, ainsi que dans de petites villes comme Kovrov.

Depuis le début des années 2000, des compétitions d'entraînement régulières ont lieu en Russie et dans les pays de l'ex-URSS : camps d'entraînement à Petrozavodsk, EV Pankratyev Open Cup en programmation. Et depuis 2012, d'abord sur le campus du MIPT, et maintenant à Vladivostok, Grodno, Barcelone et Kollama (Inde), les ateliers de Moscou ICPC ont commencé à avoir lieu, où des équipes d'étudiants du monde entier viennent se préparer pour les Jeux Olympiques en ICPC. la programmation. A ce jour, 167 universités de 50 pays y ont déjà participé. Les résultats de la formation aux bootcamps sont impressionnants - 10 des 13 vainqueurs du championnat final ICPC 2018 ont été formés aux ateliers de Moscou ICPC. L'histoire locale des bootcamps russes est devenue un réseau mondial et n'a pas d'équivalent à l'échelle dans d'autres pays.

Les programmes de base dans notre pays et à l'étranger sont généralement similaires, mais le niveau des étudiants est également important. Dans de nombreuses universités, nous avons une sélection si stricte que des groupes uniques en termes de niveau y sont regroupés. Par exemple, au MIPT, la note de passage à l'examen d'État unifié est de 94 depuis de nombreuses années, ce qui, avec le MGIMO, en fait l'université la plus difficile à s'inscrire en Russie. Les enfants sélectionnés reçoivent une éducation approfondie et travaillent beaucoup en équipe. La capacité à travailler en équipe, bien établie par les physiciens, est une compétence importante en entreprise. Aujourd'hui, les principales universités de Russie, parmi lesquelles, par exemple, l'École supérieure d'économie et l'Université ITMO, développent activement les compétences entrepreneuriales des étudiants. Le MIPT s'oriente vers l'entrepreneuriat technologique, et de nombreux enfants continuent à travailler après l'obtention de leur diplôme dans des équipes qui se sont développées au cours de leurs études. Ceci est important car au stade de la recherche d'investisseurs, l'une des questions clés est « qui est votre équipe » et « comment interagit-elle ».

Un exemple frappant est Looksery Inc, fondée par Viktor Shaburov, dont l'équipe a développé une application populaire qui ajoute des masques aux visages des gens en mode vidéo. Le noyau de l'entreprise était constitué des membres d'une équipe de programmation d'Olympiades. Trois ans seulement après sa création, en 2015, ils l'ont vendu à Snapchat pour 150 millions de dollars. Shaburov soutient désormais activement des programmes éducatifs pour les écoliers et les étudiants. Il a récemment lancé la Botan Investments Foundation et ouvert un programme de subventions pour les éducateurs en apprentissage automatique.

La société moscovite - le développeur d'algorithmes de trading AIM Tech, qui a été fondée par Ilya Sedoshkin, emploie également des médaillés des finales mondiales ICPC du MIPT: Renat Gimadeev, Alexander Ostanin, Konstantin Semyonov et d'autres. C'est un domaine où la vitesse de transaction est valorisée. Et la vitesse et les algorithmes sont ce qui est particulièrement bien développé dans la programmation sportive.

L'entrepreneuriat technologique a également touché les banques, qui se transforment désormais de plus en plus en sociétés informatiques. Par exemple, le projet iPavlov, basé sur des technologies d'apprentissage automatique, développe un chat automatique pour la Sberbank of Russia.

Les sociétés informatiques et leurs services

Le travail coordonné des universités et le soutien des entreprises informatiques ont formé une culture de programmation dans notre pays. Les entreprises, en collaboration avec les universités, organisent des programmes éducatifs, introduisant ainsi de nouvelles compétences et modèles de processus commerciaux que les universités introduisent dans les activités éducatives. Parmi les entreprises soutenant l'enseignement informatique dans le pays : Yandex, JetBrains, Mail.Ru Group, 1C, Tinkoff Bank, Sberbank et autres.

Par exemple, JetBrains développe un programme de licence au Département de mathématiques et de technologies de l'information de la SPbAU, ainsi qu'avec Acronis, un programme de maîtrise au MIPT. Mail.Ru Group a organisé cinq programmes éducatifs sur le développement web et mobile, l'intelligence artificielle et les projets à forte charge : Technopark avec MSTU im. NE Bauman, « Technosphère » avec la Faculté de mathématiques computationnelles et de cybernétique, Université d'État de Moscou. Lomonosov, Technotrek avec MIPT, Technopolis avec SPbPU et Technoatom avec MEPhI.

Yandex a créé de nombreux programmes éducatifs, par exemple, l'École d'analyse de données pour les étudiants seniors et les diplômés des spécialités techniques. Yandex a également créé une bourse pour les étudiants en première année de la Faculté d'informatique HSE.

Les entreprises font appel au personnel de la communauté étudiante. Le développement de VKontakte est très proche de l'approche Olympiade dans la résolution de problèmes, car ses créateurs issus de l'école étaient dans ce système. Par exemple, Nikolay Durov, double vainqueur du championnat du monde ICPC de l'Université d'État de Saint-Pétersbourg, et son coéquipier Andrey Lopatin, entraîneur des ateliers de Moscou ICPC, qui a entraîné les équipes victorieuses de l'Université d'État de Saint-Pétersbourg, ont été impliqués dans le développement logiciel du réseau social VKontakte. Et maintenant, les champions ICPC Dmitry Egorov et Pavel Kunyavsky travaillent sur VKontakte.

Les entreprises à l'étranger aident également les étudiants, mais nous nous distinguons par des programmes fonctionnels et efficaces. Yandex a créé une plate-forme relativement facile à utiliser appelée Yandex.Contest, où sont organisés des concours de programmation. Là, les enseignants universitaires peuvent télécharger eux-mêmes leurs devoirs. Le contrôle est automatisé, ce qui signifie qu'il est impartial, ce qui aide les universités régionales à s'intégrer dans le système de formation des principaux programmeurs.

Capacité de travail des Russes

Les champions des compétitions internationales sont des gars qui ont travaillé très dur depuis l'école. Par exemple, dans l'équipe MIPT, l'un des participants avait une médaille de l'Olympiade scolaire internationale en informatique. Un autre, pendant six ans à l'université, en plus d'étudier, consacrait plusieurs heures par jour à l'entraînement, se rendait à d'innombrables championnats, camps d'entraînement.

Lors des compétitions elles-mêmes, les élèves surmontent de grandes surcharges psychologiques. Les tâches les plus difficiles, les délais serrés et les concurrents puissants ne sont pas si mauvais. Au championnat ICPC par exemple, les gars sont comme sous un microscope : ils sont filmés en permanence par des caméras, un écran avec un code est diffusé sur Internet. Ceux qui peuvent supporter la charge se sentent déjà beaucoup plus en confiance dans les situations stressantes au travail.

Liberté

L'industrie informatique en Russie et dans le monde se développe en grande partie de manière indépendante, selon le principe "Le plus efficace survit". Cela ne fait aucune différence d'où vous venez si vos algorithmes accélèrent les processus et rendent le système plus rapide et moins cher. Par conséquent, la programmation est la chose dans laquelle une personne peut réussir à la fois en Russie et à l'étranger. Les programmeurs russes, contrairement aux idées reçues, ne veulent pas toujours émigrer. Au contraire, ils recherchent des tâches intéressantes pour eux-mêmes, dont il y en a beaucoup maintenant dans Yandex, dans VKontakte et dans les startups.

Enseignants

Dans le domaine de l'informatique en Russie et dans le monde, il y a une grande pénurie de personnel. Par conséquent, quel que soit le pays ou la région que vous choisissez, le salaire moyen d'un informaticien sera plus élevé que dans d'autres secteurs. Selon HeadHunter, le salaire moyen dans l'informatique en Russie est de 88 246 roubles, tandis que le salaire moyen en Russie est de 45 640 roubles. Aux États-Unis, selon Glassdoor, le salaire moyen d'un informaticien en termes de roubles est d'environ 330 000 par mois. Au Royaume-Uni, le salaire d'un programmeur est de 31 901 livres sterling par an (environ 220 000 roubles par mois). En Suisse, selon SwissInfo, les programmeurs reçoivent en moyenne 4608 francs suisses (environ 230 000 roubles par mois). Mais lorsque vous travaillez avec des statistiques, vous devez comprendre que le niveau des prix dans d'autres pays varie également de manière significative, le montant est influencé par le taux de change du rouble par rapport aux autres devises. De plus, dans de nombreux pays étrangers, le niveau des impôts réduit considérablement le salaire réel sur lequel l'employé opère réellement.

Les salaires élevés dans l'informatique ne sont pas tout. Les programmeurs des grandes universités sont recrutés immédiatement après l'obtention du diplôme et même plus tôt - les entreprises tentent de fidéliser les futurs spécialistes de l'école. Et cette tendance n'est pas seulement en Russie. Il y a une pénurie de programmeurs qualifiés dans la Silicon Valley. En Californie, plusieurs mois de cours de codage pour les diplômés des collèges locaux sont devenus populaires car après l'obtention du diplôme, les étudiants ne peuvent pas écrire de code par eux-mêmes.

Il semblerait que nous ayons juste besoin de former plus de diplômés, mais est-ce que quelqu'un devrait le faire ? Et les salaires dans l'enseignement sont plus bas que dans les entreprises. C'est dans l'industrie informatique qu'il existe un écart important qui provoque un exode d'enseignants de qualité. Il s'avère qu'il n'y a personne pour cuisiner la prochaine génération. Par conséquent, la culture de la programmation joue un rôle important pour s'assurer que les gens sont impliqués et restent dans la profession. En Europe et aux USA, ce n'est pas aussi développé, mais nous avons réussi à impliquer un nombre suffisant de personnes dans ce système. Pour que le succès dans le secteur informatique se poursuive, il est nécessaire d'accroître le prestige de l'enseignement informatique, de populariser ce type d'activité.

De nombreuses personnes qui ne sont pas liées à la sphère informatique, au début de leur parcours, réfléchissent au sujet : quel langage de programmation apprendre ? Après tout, il y a beaucoup de langues, environ un millier. Cependant, il n'y a pas de réponse unique et correcte à la question de savoir quel langage de programmation est le meilleur. Chaque langue a été créée pour résoudre des problèmes spécifiques. Au fil du temps, certains d'entre eux ont perdu de leur pertinence, respectivement, ces langues sont passées au second plan. Les positions de leader ont été occupées par des langages qui satisfont les besoins des grandes entreprises, des entreprises, opérant sur la plate-forme Internet. Pour connaître la demande du langage sur le marché informatique, ainsi que pour simplifier la tâche de choisir par vous-même, si vous décidez de commencer à programmer, les évaluations des langages de programmation vous aideront.

Qu'est-ce qu'une note ?

Évaluation du langage de programmation Est une mesure de sa popularité, basée sur un ou plusieurs critères. Par exemple, la langue des requêtes des utilisateurs sur Internet, le nombre de logiciels téléchargés, le nombre de discussions sur les forums, le nombre de postes vacants sur le marché. Par exemple, voici comment vous pouvez calculer la note Java parmi quatre langages en fonction des demandes des utilisateurs sur Internet :

Où n est le nombre de demandes d'utilisateurs par langue sur Internet.

Quelles sont les cotes ?

La note ne répond pas à la question de savoir quel langage de programmation est le meilleur ; il caractérise plutôt la popularité de son utilisation. Vous trouverez ci-dessous les notes de diverses entreprises qui surveillent la popularité des langages de programmation depuis longtemps. Évaluation de l'entreprise Logiciel TIOBE(Fig. 1). L'analyse des résultats du classement comprend des données basées sur les résultats de recherche de 25 principaux moteurs de recherche, dont Google, Ebay, YouTube, Yahoo !, Wikipedia, Amazon, Bing.

Figure 1. Évaluation du logiciel TIOBEÉvaluation moine rouge(Figure 2) utilise les données GitHub et StackOverFlow pour comparer les langues. Les paramètres selon lesquels la notation est compilée sont la fréquence des discussions et l'utilisation de la langue dans les projets.

Figure 2. Évaluation du moine rougeÉvaluation PYPL(Fig. 3) est basé sur une analyse de la fréquence des recherches de documents linguistiques dans Google. Plus il y a de demandes, plus cette langue est considérée comme populaire. Les données brutes proviennent de Google Trends.

Figure 3. Cote PYPLÉvaluation compilée par l'Institute of Electrical and Electronics Engineers IEEE Spectrum (Figure 4). Il utilise les données de 12 sources, dont Google, GitHub, StackOverFlow, Reddit, Twitter, Career Builder, Dice, IEEE Xplore.

Figure 4. Classement du spectre IEEE 2017 La figure 5 montre les leaders parmi les demandes de langage pour StackOverFlow (données à fin juin 2018).

Figure 5. Demandes de langue pour StackOverFlow Et la figure 6 montre la dynamique de la popularité des requêtes linguistiques de Google Trends au cours des 12 derniers mois (données à fin juin 2018).

Figure 6. Dynamique des requêtes par langages Java, C++, Python, JavaScript, C#

Analyser les notes et affiner la recherche

Quelles conclusions peut-on tirer de l'analyse de ces notations ? Malgré quelques différences dans la répartition des lieux de langages, les leaders sont Java, JavaScript, Python, C. Ces quatre langages occupent environ 60% de l'utilisation totale des langages de programmation dans le monde. Par conséquent, en choisissant l'un d'entre eux, vous serez dans la tendance de la technologie.

Nous étudions de plus près les "candidats"

Alors quel langage de programmation apprendre si vous choisissez parmi ces quatre ? Pour décider, vous devez considérer plusieurs points importants.
Si vous voulez gagner de l'argent grâce à la programmation et être traité comme un développeur sérieux, jetez un œil à Java et à la famille de langages C. Après avoir étudié l'un de ces langages, vous maîtriserez les concepts de base et les principes fondamentaux de la programmation nécessaires à tout programmeur : variables, types, valeurs de retour, méthodes, fonctions, expressions, initialisation et cycle de vie, algorithmes, flux d'entrée/sortie. C ++ vaut la peine d'être appris si vous voulez, par exemple, écrire une variété d'applications ou de jeux. C est plus proche du matériel et est utilisé pour la programmation de bas niveau. Convient, par exemple, à l'écriture de pilotes et de systèmes d'exploitation. Le langage C # a été créé à l'image et à la ressemblance de Java, uniquement avec une syntaxe encore plus proche de C ++ et est principalement utilisé pour développer des produits logiciels pour les plates-formes NET.Framework et Windows. Java a fait ses preuves en tant que rapide (Figure 7), robuste et indépendant de la plate-forme, ce qui en fait le meilleur langage de programmation pour le développement d'applications d'entreprise. Java est depuis longtemps un leader sur le marché du travail des programmeurs. Ceci est démontré par les résultats de la surveillance des travaux d'IEEE Spectrum au cours des 4 dernières années, ainsi que par les données d'Indeed :

Le langage Java a été créé pour simplifier le travail des programmeurs et réduire les exigences de leurs qualifications, il est donc plus simple et plus « tolérant aux pannes » à utiliser par rapport aux langages C et C++. Pour programmer correctement en C ou C++, vous devez être hautement qualifié, car ces langages ont la capacité d'utiliser des outils de programmation de bas niveau. Avec un manque de connaissances, la probabilité d'écrire du code de programme dangereux et déroutant, difficile à déboguer à l'aide de ces langages, est beaucoup plus élevée qu'en Java. Java est un langage facile à apprendre, qui peut être appris "sans sortir de chez soi", grâce à l'énorme quantité de matériel sur Internet et aux diverses ressources Internet éducatives, je vous conseille donc de l'examiner de plus près en tant que premier langue à apprendre. Grâce à l'existence de forums tels que StackOverFlow, Javatalks et Cyberforum, lors de l'apprentissage de Java, vous pouvez facilement trouver la réponse à toute question sur le thème de la programmation. De plus, les développeurs Java sont parmi les programmeurs les mieux payés. Vous pouvez en savoir plus à ce sujet.

Résumons

Donc, si vous n'avez pas encore décidé de la première langue à apprendre, suivez ces étapes :
  1. Réfléchissez à ce que vous aimeriez faire à l'avenir (développement web, développement de programmes d'application et de logiciels pour jeux, développement mobile, développement d'applications serveur d'entreprise)
  2. Regardez deux ou trois grands classements de langues, faites un tour d'horizon de la popularité des langues sur Internet
  3. Faites des recherches sur le marché du travail et les salaires de votre région (par exemple, sur les sites de recherche d'emploi)
  4. Estimez votre force et le temps que vous pouvez consacrer à l'apprentissage de la programmation

Java est le meilleur choix

Pourquoi Java est-il le meilleur langage de programmation pour la grande majorité des débutants ?
  • Connaissant Java, vous êtes plus susceptible de développer des applications d'entreprise. Ce travail est bien rémunéré, car les clients sont des entreprises, des banques et des grandes entreprises.
  • La connaissance de Java vous donne la possibilité de vous engager dans le développement d'applications mobiles prometteuses, en développement actif et également bien rémunérées.
  • L'écrasante majorité des applications d'entreprise de serveur en cours d'exécution dans le monde sont écrites en Java, de sorte que le langage, même dans le scénario le plus pessimiste, sera pris en charge pendant de nombreuses années à venir.
  • Depuis de nombreuses années, Java est le leader du nombre de postes vacants. Souvent, les employeurs sont de grandes entreprises, et dans une grande entreprise, il est plus facile pour Junoo de se développer que dans une petite.
  • Java est assez facile à apprendre. L'ayant maîtrisé, vous maîtriserez les principes fondamentaux de la programmation, nécessaires à tout programmeur. En même temps, après cela, il est assez facile d'apprendre JavaScript ou Python, et il est beaucoup plus facile d'aborder un C++ relativement complexe.
  • Le langage Java est plus facile à utiliser que les langages de la famille C. Dans le même temps, la connaissance de Java permet à juste titre d'être considéré comme un développeur professionnel.
  • Enfin, le développement Java paie bien.

Linus Torvalds, Donald Knuth, Richard Stallman, John Carmack - sinon un nom, alors une légende. L'édition en ligne VentureBeat répertorie les programmeurs les plus réputés de la communauté informatique mondiale.

Linus Torvalds

Création de Linux, un système d'exploitation gratuit, dans un dortoir de l'Université d'Helsinki. Aujourd'hui, Linux est alimenté par des centres de données et des superordinateurs, et est développé par une horde de fans open source à travers le monde.

Torvalds est connu, notamment, pour le fait qu'il ne rentre pas un mot dans sa poche et ne cherche pas à plaire au public. Lors d'un des discours récents, lorsqu'on lui a demandé dans le public s'il effrayait les membres de la communauté Linux avec sa manière de communiquer, il a répondu : « Je m'en fous de vous ». À propos de Torvalds parmi les développeurs, il y a les mêmes blagues que parmi les gens ordinaires à propos de Chuck Norris. Par exemple, Torvalds peut diviser par zéro et jouer à des jeux 3D en exécutant leur code source en tête en temps réel.

Sir Tim Berners-Lee

Le seul sur cette liste à avoir réussi à devenir chevalier - il a été fait chevalier par la reine britannique Elizabeth II. Il est le créateur du protocole HTTP (Hypertext Transfer Protocol), la technologie sur laquelle tout Internet est construit.

Il dirige maintenant l'Alliance Internet Accessible, une organisation sociale soutenue par Google, Facebook et Microsoft qui vise à rendre l'Internet haut débit accessible aux personnes du monde entier.

Donald Knuth

Ses travaux universitaires en informatique lui ont valu le titre de "Père de l'analyse algorithmique". Tout sur le web, de l'algorithme de sélection de flux Facebook à l'algorithme de sélection de produits similaires sur Amazon, lui doit quelque chose. À 77 ans, il écrit un livre intitulé L'art de la programmation informatique. Knut est également professeur émérite à Stanford.

Brendan Icke

Le créateur du langage de programmation JavaScript, qui est en fait le standard de la programmation Web. Il a aidé à fonder Mozilla, la société qui développe le navigateur Firefox. Il a démissionné de son poste de PDG lorsqu'il a été informé de son soutien matériel à un projet visant à interdire le mariage homosexuel en Californie.

Salomon Haykes

Le créateur de Docker, une technologie que les développeurs adorent, car elle conditionne une application avec tout son environnement dans des conteneurs et la livre aux serveurs. Fonctionne comme une machine virtuelle, mais beaucoup plus rapide. Docker a commencé en tant que projet parallèle chez dotCloud, mais lorsqu'il s'est avéré être populaire, l'entreprise a survécu à un pivot et est rapidement devenue une licorne.

Mark Zuckerberg

Créateur Facebook. Il pense que plus l'équipe est petite et flexible, plus elle fonctionnera avec succès. Le milliardième réseau social est desservi par "seulement" 10 000 personnes dans le monde.

David Heinemeyer Hansson

Connu sous le nom de DHP. Créateur de Ruby on Rails, un framework très populaire qui lui a valu le titre de Hacker of the Year 2005 et le prix Google Hacker of the Year.

Richard Stallman

Mieux connu pour s'être battu pour le logiciel libre, fondateur de GNU, auteur de l'idée de "copyleft" - par opposition au droit d'auteur. Très fondé sur des principes, n'utilise aucun développement propriétaire.

Bram Cohen

Créateur du protocole BitTorrent, qui permet aux utilisateurs de télécharger des fichiers très rapidement. BitTorrent est incroyablement populaire, avec une estimation prudente de 250 millions d'utilisateurs dans le monde. L'année dernière, Thom Yorke a essayé de distribuer l'album exclusivement via BitTorrent. Et pourtant, les capacités de BitTorrent étaient principalement appréciées par les pirates Internet.

James Gosling

Création du langage de programmation Java chez Sun Microsystems. Après le rachat d'Oracle en 2010, Gosling a démissionné, devenant l'un des principaux critiques d'Oracle. Depuis lors, il a travaillé pendant cinq mois chez Google jusqu'à ce qu'il rejoigne la startup Liquid Robotics. Il est également membre de l'équipe de la célèbre startup ukrainienne Jelastic en tant qu'administrateur indépendant.

Bjorn Stroustrup

Un programmeur danois a créé en 1978 le langage de programmation C++, améliorant le C. Il travaille toujours activement : il enseigne à la Texas A&M University, à la Columbia University, et est également employé à Morgan Stanley.

Jean Carmack

Co-fondateur d'id Software. Il est connu dans le monde entier comme le créateur de Doom. D'ailleurs, l'idée même du jeu est née lors d'un match dans D&D, auquel l'équipe a joué régulièrement au siège d'id Software pendant plusieurs années. Et John a toujours été le maître du jeu. Il a été le premier à essayer ces astuces graphiques 3D qui sont encore utilisées aujourd'hui.

Il est maintenant employé chez Oculus VR, que Facebook a racheté pour 2 milliards de dollars.