Comment choisir un langage de programmation pour apprendre aujourd`hui et obtenir un excellent travail en 2 ans

Le codage est pas ou tout au moins EASY-, apprendre à code n`est pas, surtout lors du démarrage à partir de zéro. Il peut prendre des années de travail acharné pour devenir vraiment bon Programmeur est donc là un moyen de choisir la langue de commencer à partir d`aujourd`hui, afin de se faire embaucher dans quelques années?

Pour le savoir, je pris cette question à notre groupe d`experts résidents: Alors que nous écrivons, plusieurs d`entre nous ont également le codage d`expérience. Il s`ensuivit une discussion intéressante que vous voulez lire avant de se lancer dans votre voyage pour devenir un codeur pro.

Une méthode à la folie?

fou

Ce n`est pas la première fois que nous parlons de choisir un langage de programmation: Retour en 2011, nous avons discuté quel langage de programmation, vous devez apprendre pour le développement de logiciels?, ainsi que celui que vous devriez Apprendre pour la programmation Web.Quel langage de programmation Si vous apprendre pour le développement de logiciels?Quel langage de programmation Si vous apprendre pour le développement de logiciels?Lors du démarrage sur le chemin de la programmation, il est important que vous investissez votre temps à bon escient dans le choix d`apprendre quelque chose que vous profitera à la fois dans l`immédiat avec des résultats visibles sur votre plate-forme de ...Lire la suite

Mais cela ne concerne pas un conseil (par exemple « aller avec javascript »), mais une méthodologie - quelque chose les gens pourraient utiliser dans les deux ans à partir d`aujourd`hui, théoriquement. Comment comprendre réellement quelles langues sont à la hausse? Quel code métriques popularité de confiance et qui la méfiance (et pourquoi)? Quels sont les meilleurs sites de projection de salaire? Est-GitHub une indication ou non?

Video: 6 astuces pour être le leader de son cheval ✩

Par exemple, vous trouverez personne jaillissant sur PHP ces jours-ci - mais beaucoup, beaucoup de développeurs font une bonne vie de codage PHP, et il est toujours la plus grande partie de ce qui est en cours d`exécution sur le Web. Ainsi, l`apprentissage de PHP est maintenant une mauvaise idée? (Probablement…)

Il n`y a pas une langue

les choix

C`est ici que James, notre développeur Web résident et Guy technologie, est intervenu pour dire ceci:

Les programmeurs généralement ne pas apprendre une seule langue de toute façon. Toute personne qui va la route CompSci classique finira avec beaucoup de Java, un peu de Haskell, certains Prolog si elles prennent un cours en intelligence artificielle, un nœud si elles prennent un cours en génie de démarrage, un peu de PHP s`ils apprennent traditionnel CMSes, certains .NET si stagiaire à un bureau d`entreprise sans valeur, un peu de javascript s`ils web design, certains C ++ si elles font la conception du jeu, et enfin un peu Ruby s`ils aimeraient perdre leur vie loin des langues obscures qui ne utilise en fait.

Il n`y a pas ?? « méthodologie », et vous ne choisissez pas une langue à apprendre: il vous choisit!

L`apprentissage d`une seule langue est comme manger seulement pendant un an Digestifs quand il y a une allée entière de cookies. Et sérieusement, qui choisit des emplois en fonction du salaire prévu?

Mais si vous ne CompSci pas appris?

Je lui ai répondu à James, en disant:

Voici la chose: Ce n`est pas pour quelqu`un de prendre la route CompSci classique. A en juger par l`explosion MOOC et le nombre de cours de programmation en ligne, beaucoup de gens sont en hausse de codage juste à partir de zéro. Et quand vous commencez comme ça, vous avez besoin d`une langue de départ. Peut-être vous éloignez plus tard, mais cette première langue va être un investissement important de temps et d`efforts - il vaut mieux être la peine.

Ce qui a résonné plus avec moi est que peu dernier, il a dit - qui choisit des emplois en fonction du salaire prévu. Je pense que certaines personnes, mais je pense aussi que ce n`est pas une excellente façon de s`y prendre.

Quand il revient à lui, les gens sont essayer de comprendre quelle langue pour commencer, et l`utilisation que la langue obtient dans le monde réel a du poids dans cette décision (et pas seulement la façon dont il est facile à apprendre - Pascal ...).

Choisissez un premier projet, puis une langue

Trending-projets

James est revenu avec ceci:

D`accord, peut-être l`un des points de cette méthodologie devrait être: n`ont pas une méthode. Quand je suis tombé sur PHP, il est par WordPress. J`ai eu un arrière-plan CompSci dans la programmation et une certaine expérience de conception web, mais je ne l`avais jamais vu avant PHP. Je l`ai appris parce que WordPress avait l`air assez facile, et je voulais jouer avec WordPress. Non pas parce que je l`avais regardé une liste des technologies orientées, ou envisageait un changement de carrière, mais parce que quelque chose de cool que je voulais savoir l`utiliser.

Si quelqu`un cherchait à apprendre la programmation purement aux fins d`un emploi, ils échoueraient. S`ils cherchaient simplement parce qu`ils aiment le son d`apprendre à programmer quelque chose, ce ne serait pas question quelle langue ils ont choisi aussi longtemps que cela pourrait susciter leur passion.

Une autre raison de choisir un premier projet

C`est quand Simon intervenu avec quelques conseils pragmatiques:

Tout d`abord, cela dépend si vous voulez développer pour le Web ou un logiciel « standard ».

Pour ce dernier, Java est assez bonne:

  • simple OO
  • Multi-plateforme (Linux, Windows, Mac, Android)
  • syntaxe semblable à beaucoup d`autres langages de programmation (JS, C #).

Ne peut pas dire grand-chose sur le développement Web, bien que HTML / JS / CSS / PHP / MySQL semble fonctionner pour beaucoup de gens. Python, aussi.

Mais oui, le bit « pour vous obtenir un excellent travail en 2 ans » me contrarie aussi. Souligne l`aspect mal d`apprendre à programmer. Une fois que vous pouvez programmer, il est assez facile d`obtenir le coup d`une autre langue.

Obtenir un emploi pour connaître une langue spécifique est similaire à se faire embaucher comme PA pour savoir comment gérer MS Excel. Si c`est la principale qualification, il va probablement être un mauvais travail.

Ne pas apprendre une langue: apprendre la conception de logiciels

conception de logiciels

Un consensus commence à se former. Bruce Epper, de Réponses MakeUseOf renommée, avait ceci à dire:

La langue elle-même n`a pas d`importance. En ce qui concerne les emplois de programmation des aspects les plus importants ont tendance à être la compréhension de la conception de logiciels de base et l`architecture, le processus de codage en général, connaître les modèles de conception, de savoir quand les utiliser, et comment appliquer un modèle spécifique à la tâche à accomplir - qui sont tous indépendants de la langue. Une fois qu`un codeur connaît ces derniers, ramassant une langue complètement nouvelle est un jeu d`enfant.

Il y a même la gestion de projet, les compétences en matière de documentation et d`écriture qui sont plus importantes pour un programmeur que de connaître une langue spécifique.

La base sur laquelle vous êtes Questions bâtiment: anglais ou en latin?

Ce fut quand Gars est intervenu pour nous rappeler que la langue Est-ce que la matière, dans une certaine mesure:

Latin

Le langage lui-même est pas la chose la plus importante pour obtenir un emploi, je suis d`accord. Cependant, la base sur laquelle vous construisez fait. Depuis que je l`ai fait les deux voies, je vais comparer les langages de programmation aux langues humaines.

Python semble être l`anglais d`aujourd`hui. De plus en plus, je vois Intro CompSci et cours de programmation vous commencez avec Python au lieu de Java, qui semblait être le plus populaire pendant environ 10 ans. Vous pouvez faire beaucoup de ce que vous voulez faire avec Python.

C ++ est le latin du monde de la programmation. Si vous apprenez, vous pouvez apprendre les principes sous-jacents d`une multitude de langues et de les apprendre plus facilement. Python serait une partie de plaisir si vous Fondées en C ++.

Qu`est-ce qu`un « travail de programmation, » Quoi qu`il en soit?

c`était Matthieu tourner maintenant, pour nous rappeler tout ce que étant un codeur peut signifier des choses très différentes pour différentes personnes:

costume

Une chose qui n`a pas été parlé dans une grande longueur est quel genre de travail de programmation que vous voudriez.

N`êtes-vous pas trop embêté sur les avantages jetés aux employés de démarrage? Vous voulez la stabilité et un paquet de salaire décent, mais pas d`équité? Est-ce que vous aimez porter formalwear d`affaires? En savoir C #, Java ou COBOL. COBOL a aussi l`avantage d`avoir toutes les applications bancaire unique jamais conçu (hyperbole, mais vous voyez l`idée) ayant été écrit en elle. Avec la plupart des développeurs COBOL retraités ou morts, il y a beaucoup de demande pour les développeurs COBOL avec un certain gagnant six salaires chiffre! Cependant, vous allez travailler sur d`énormes codebases mal écrites créées sur plusieurs décennies. Ce n`est pas amusant.

Mais si la sécurité d`emploi n`est pas votre truc? Vous aimeriez travailler sur des produits intéressants, mais êtes-vous prêt à être la chance d`un emploi lorsque le modèle d`entreprise ne fonctionne pas? J`ai trouvé que passe (Hacker Nouvelles) est un moyen infaillible pour connaître les langues utilisées par les start-up. Quand j`interné à un emploi au début, nous avons utilisé un mélange de Go, Python et CoffeeScript. D`autres start-ups utilisent Rails et Groovy et toutes sortes de cadres obscurs et les langues. Il suffit de choisir un et vous trouverez un endroit travail intéressant.

Nouveau code ou ancien?

nouveau code d`écriture est une expérience très différente de maintenir une application existante, comme Bruce a ajouté:

Avec vos commentaires sur COBOL, vous sorte de frapper sur une autre considération: ne voulez-vous travailler sur le nouveau code ou maintenir le code de quelqu`un d`autre? Cela peut être un élément énorme au moment de décider dans quelle direction aller. Pour les petits projets, le maintien d`une base de code écrit par quelqu`un d`autre peut-être pas si mal que ça, mais je l`ai vu quelques sections de code où vous avez plusieurs personnes à regarder pendant des heures « quelle était cette façon de penser gars? », Ou lorsque l`original programmeur profitait d`une caractéristique spécifique ou d`un bogue dans le compilateur (qui peut avoir été fixé dans le compilateur actuel) pour accomplir quelque chose.

Que faire si vous ne disposez pas d`un choix?

Guy est revenu pour nous rappeler tout ce que tout le monde ne dispose d`un large éventail de choix:

choix

Matthew soulève une bonne question, «Quel genre de travail de programmation que vous voulez?»

Bizarrement, je ne ai vraiment pensé que j`aurais beaucoup de choix en la matière. Je savais que je voulais faire du développement web quand j`ai commencé, après avoir fait d`autres programmes à des fins récréatives. Mais je me suis dit que je ferais mieux d`être prêt à accepter tout emploi que je pouvais obtenir, et être prêt à apprendre que je suis allé. Maintenant, je suis une prise de tous les métiers, maîtriser plusieurs technologies - maître de rien.

Pour ce qui est de déterminer où vous voulez travailler, déterminer le type de vie que vous voulez est important. Ensuite, regardez ces annonces de entreprises qui semblent répondre à vos critères et de voir ce qu`ils recherchent en général. Mettre sur pied un portefeuille de choses semblables à ce qu`ils font peut être très utile aussi bien, surtout si vous n`avez pas de formation formelle dans les technologies qu`ils utilisent. Peut-être que vous avez appris Java à l`école, mais ils utilisent C #. Donc, vous vous enseigner C # et quelques programmes avec comme preuve que vous savez ce que vous faites et que vous avez l`intelligence fluide.

Pas de réponse simple

S`il y a quelque chose cette discussion montre, il est que des questions simples n`ont pas toujours des réponses simples. Et pourtant, après avoir lu les opinions de tout le monde, je me suis senti beaucoup plus informé - ils ont changé mon esprit.

Je suis sûr que nous ne capture pas tous les points de vue possibles ici - c`est ce que la section commentaire est pour. Je serais très intéressé à connaître votre opinion sur cette question, si vous êtes un codeur pro ou non. Comment voulez-vous choisir un langage de programmation pour obtenir un bon travail en deux ans? Est-ce même une bonne façon de choisir une langue? Partagez votre opinion ci-dessous.

Articles connexes