Il existe de nombreux langages de programmation différents que les développeurs utilisent lors de la création de produits Web. C++, Javascript, Python, GO, Rust, Ruby PHP, la liste est longue. Savoir par où commencer peut être intimidant.
L’une des meilleures façons de commencer un voyage avec de nombreux chemins est de demander à quelqu’un qui a atteint la destination que vous souhaitez aller. Que vous travailliez en tant que développeur front-end, back-end ou full-stack, vous souhaitez apprendre un langage qui peut vous aider à atterrir sur des sites convoités.80 000 $ de salaire annuel. À Baltimore, quand Techniquement a examiné les données sur les hauts revenus – en particulier ceux qui gagnent 200 000 $ – nous avons trouvé la conception de systèmes informatiques et les services connexes figuraient parmi les 10 premières industries qui a produit les revenus les plus élevés de la ville en 2009 et 2019.
Mais la question demeure : quels langages de codage les aspirants programmeurs devraient-ils apprendre s’ils veulent percer dans l’industrie technologique ?
Débordement de pilele site d’apprentissage participatif pour développeurs de logiciels, a interrogé 70 000 développeurs de logiciels pour déterminer ce que les développeurs utilisent pour améliorer leurs compétences, ainsi que les langages dans lesquels ils investissent leur temps. Mais pour donner aux connaissances de ces données brutes une sensation plus personnelle, Technical.ly a demandé aux développeurs de logiciels de Baltimore quels langages de codage ils recommanderaient de commencer une carrière dans la technologie aujourd’hui. Nous leur avons également demandé si, s’ils retournaient à la première année de leur carrière, ils feraient quelque chose de différent et apprendraient un autre langage de codage. Voici ce que cinq d’entre eux avaient à dire :
Chris Uehlinger, ingénieur logiciel chez TechSlice
Quand j’étais enfant, j’ai appris le C (mon oncle m’a donné son vieux manuel). Je ne recommanderais cette approche à personne. Bien que je tienne C en haute estime et pense que tous les ingénieurs logiciels devraient l’apprendre à un moment donné, c’est un langage de départ vraiment difficile et n’est pas très gratifiant tant que vous n’avez pas une tonne d’expérience. En fait, j’ai abandonné la programmation pendant plusieurs années parce que je ne parvenais pas à faire le genre de programmes que je voulais faire.
Ces jours-ci, je recommande aux gens de commencer avec HTML, CSS et JavaScript. Ce sont des langages qui ont une grande valeur marchande, mais plus important encore, ils constituent la matière première qui constitue la plupart des logiciels avec lesquels vous interagissez au quotidien. Et contrairement aux programmes C/C++, si vous voyez un site Web faire quelque chose de cool, vous pouvez ouvrir les DevTools dans votre navigateur et lire le code par vous-même. Lorsque vous commencez, c’est la partie la plus importante pour rester motivé : apprendre à fabriquer les choses que vous aimez.
Il y a des années, j’aurais dit PHP, étant donné la facilité avec laquelle il est possible de créer une application Web à l’aide de PHP. Maintenant, je dirais Ruby on Rails – Ruby étant un langage de programmation et Rails étant un framework construit en Ruby que les gens utilisent pour créer des applications Web. De nos jours, il existe de nombreuses ressources pour apprendre à programmer dans Rails, des bootcamps aux cours autodirigés que l’on peut suivre, des groupes de rencontre locaux et d’autres acteurs de l’industrie qui sont heureux d’encadrer et de transmettre des connaissances aux autres. Si obtenir un emploi est votre objectif, alors [you can] Soyez assuré que vos compétences seront recherchées en tant que développeur Rails.
Je choisirais également un langage de programmation fonctionnel comme Elixir. Elixir est un choix populaire pour créer des applications Web évolutives et est de plus en plus adopté sur le marché. Être un bon développeur Elixir vous aidera également à être un meilleur développeur JavaScript.
Comme la plupart des compétences dans la vie, il est essentiel de savoir où et comment les utiliser pour s’assurer que le bon ensemble de compétences est identifié, appris et perfectionné au fil du temps.
Pour la plupart des développeurs, les gens gravitent très tôt vers le front-end (ce avec quoi les gens interagissent, que ce soit sur un site Web, un écran de téléphone ou un widget visible qui représente un programme ou un code) ou le back-end (script côté serveur qui exécute du code ou stocke des données dans les bases de données qui exécutent des commandes pour récupérer certaines choses lorsque le client/utilisateur le souhaite). Finalement, certains peuvent même bien faire les deux et devenir un ingénieur full-stack.
Après avoir moi-même suivi le processus, je recommanderais fortement les langages à usage général comme Python, étant donné sa capacité à être utilisé dans diverses choses, (de) la création de modèles aux sites Web en passant par les expériences scientifiques.
Si une personne a déjà choisi le développement Web comme objectif (c’est-à-dire qu’elle souhaite devenir développeur Web), alors JavaScript et les bibliothèques associées pourraient être bénéfiques. Une dernière chose à noter est que le codage et la programmation sont des choses distinctes – de la même manière la dactylographie et l’écriture sont différentes. Le simple fait de savoir coder ne fait pas de vous un programmeur. Cela vient avec la pratique. Quel que soit le langage ou la pile que vous avez choisi, commencez à faire de petits projets presque trop simplistes et ajoutez plus de complexité au fil du temps. Ce n’est qu’alors que vous pourrez créer des programmes significatifs avec élégance et simplicité.
J’aimerais avoir une réponse claire et sèche à cette question. Lorsque je suis adjoint au Université de BaltimoreMes étudiants me posent une question similaire chaque semestre.
Si quelqu’un veut percer dans l’industrie du jeu vidéo, le langage qu’il doit apprendre dépendra de l’aspect de l’industrie du jeu dans lequel il souhaite entrer : indépendant ou AAA.
S’ils ne sont pas sûrs, je leur recommande d’apprendre le C++ (au moins jusqu’au standard C++11) car cela leur donnera une base dans n’importe quel secteur de l’industrie du jeu dans lequel ils souhaitent entrer. S’ils se tournent davantage vers le développement de jeux indépendants, alors C # couplé au moteur de jeu Unity3D a tendance à être une voie plus facile à suivre. Une grande communauté d’indies s’est rassemblée autour de lui, ce qui a abouti à une bonne quantité de documentation gratuite, de vidéos et de réseaux sociaux pour s’entraider.
Si le programmeur veut poursuivre AAA, alors C++ et même C non orienté objet sont de bons endroits pour commencer à apprendre. Bien qu’il y ait un peu de courbe d’apprentissage, il existe de nombreuses options de moteur à poursuivre avec ces connaissances en programmation telles que Godot et Unreal. C’est aussi la langue de choix si [you’re] rouler votre propre moteur de jeu.
Ces jours-ci, je pense également que JavaScript / TypeScript a beaucoup de valeur, car l’utilisation du Web comme plate-forme pour fournir des jeux (et d’autres applications) devient de plus en plus répandue avec l’adoption de la technologie WebAssembly dans les navigateurs – qui permettent une utilisation basée sur le Web. programmes à exécuter à des vitesses d’application quasi natives.
Si je commençais aujourd’hui, je suivrais mes propres conseils et m’assurerais d’avoir de bonnes bases en C++, mais je serais également tourné vers l’avenir avec WebAssembly et Rust. Ce dernier pourrait un jour remplacer C++, car Rust attaque les problèmes au même niveau d’abstraction mais a une sécurité mémoire intégrée à sa base. Cela en fait une option intéressante pour les entreprises qui ont besoin de faire évoluer rapidement leurs applications sans sacrifier la sécurité.
J’ai commencé à écrire en C et C++ parce que c’est ce que j’ai appris à l’école, mais je n’ai pas vraiment aimé ça. Je pense qu’écrire en C++ est probablement une bonne chose pour la sécurité de l’emploi et le salaire, car il y a moins de personnes qui semblent y écrire, mais on a également l’impression que moins de projets y sont écrits (vous pourriez donc être plus susceptible de maintenir des bases de code , par rapport à l’écriture d’un nouveau code).
Je ne regrette pas comment j’ai commencé ma carrière. Je suppose que si je devais donner des conseils de carrière à une version plus jeune de moi-même, ce serait peut-être de ne pas aller à l’université. J’ai l’impression que tant de choses que j’ai apprises en tant que majeure en informatique ne m’ont vraiment pas beaucoup aidé. J’ai pris tellement de cours de mathématiques qui ne m’ont pas été très utiles (je n’écris pas d’algorithmes) et j’aurais pu apprendre beaucoup de génie logiciel dans une école de commerce, ou simplement l’ignorer. Je pense qu’il y a certainement des gens qui ont besoin de ce genre de connaissances de bas niveau, et j’ai commencé à suivre cette voie lorsque j’ai fait du développement de noyau et de l’analyse de logiciels malveillants. Mais je n’ai finalement pas beaucoup apprécié.
Il y a beaucoup d’options là-bas, et aucune bonne réponse. Allez faire quelques erreurs et découvrez ce que vous aimez.
Donte Kirby est membre du corps 2020-2022 de Report for America, une initiative de The Groundtruth Project qui associe de jeunes journalistes à des salles de rédaction locales. Cette position est soutenue par la Fondation Robert W. Deutsch. -30-
— to technical.ly