dans Littérature informatique, Programmation

Apprentissage continu — 97 choses qu’un programmeur doit savoir

Aujourd’hui, c’est le chapitre Apprentissage continu que je vais traduire, comme sa licence Creative Commons Attribution 3.0 me le permet. Il a été écrit à l’origine par Clint Shank.

Nous vivons des temps intéressants. À mesure que le développement être distribué à travers le globe, tu découvres que d’autres sont capables de faire ton travail. Tu dois continuer à apprendre pour rester compétitif. Autrement, tu deviendra un dinosaure, coincé dans ton travail jusqu’à ce qu’un jour, on n’ait plus besoin de toi ou bien que ton travail soit délocalisé pour des ressources moins chères.

Que fais-tu à propos de ça ? Certains employeurs sont assez généreux pour te laisse t’entraîner pour élargir tes compétences. D’autres ne sont pas en mesure de ménager du temps ou de l’argent pour aucun entraînement que ce soit. Pour être tranquille, tu dois prendre la responsabilité de t’éduquer toi-même.

Voici une liste de moyens pour continuer à apprendre. Beaucoup se trouvent gratuitement sur Internet.

  • Lis des livres, des magazines, des blogs, des flux Twitter et des sites web. Si tu veux approfondir un sujet, réfléchis à rejoindre une mailing list ou un newsgroup.
  • Si tu veux vraiment t’investir dans une technologie, mets les mains dans le cambouis — écris du code.
  • Essaye de toujours travailler avec un mentor, parce qu’être le meilleur peut entraver ton éducation. Bien qu’on puisse toujours apprendre de n’importe qui, tu peux apprendre beaucoup plus de quelqu’un de plus intelligent ou plus expérimenté que toi. Si tu ne trouve pas de mentor, envisage de passer à autre chose.
  • Utilise des mentors virtuels. Trouve des auteurs et développeurs sur le web que tu aimes vraiment et lis tout ce qu’ils écrivent. Inscris-toi à leurs blogs.
  • Apprends à bien connaître les frameworks et bibliothèques que tu utilise. Savoir comment quelque chose fonctionne t’enseigne à mieux l’utiliser. S’ils sont open-sources, tu es vraiment chanceux. Utilise le déboguer  pour voir ce qui se passe sous le capot. Tu verras du code écrit et revu par des gens vraiment bons.
  • Chaque fois que tu commets une erreur, corrige un bug ou rencontre un problème, essaye de vraiment comprendre ce qui s’est passé. Il est probable que quelqu’un d’autres a rencontré le même problème et en a posté la solution quelque part sur le web. Google se montre précieux ici.
  • Une excellente façon d’apprendre quelque chose est encore de l’enseigner ou d’en parler. Quand des gens vont t’écouter et de poser des questions, cela te motive vraiment à apprendre. Essaye un lunch-n-learn au travail, un user group ou une conférence locale.
  • Rejoins ou créé un groupe d’étude ou un user group local sur un langage, une technologie ou une discipline qui t’intéresse.
  • Vas à des conférences. Et si tu ne peux pas, beaucoup d’entre elles postent les talks en ligne gratuitement.
  • Long trajet ? Écoute des podcasts.
  • Déjà lancé un outil d’analyse statique sur la base de code ou regardé les warnings remontés par l’IDE ? Comprends ce qu’ils signalent et pourquoi.
  • Suis les conseils de The Pragmatic Programmer et apprend un nouveau langage chaque année. Ou tout du moins, une nouvelle technologie ou outil. Cet enrichissement te donnera de nouvelles idées à utiliser dans ta stack technologique courante.
  • Tout ce que tu apprends ne doit pas forcément avoir de lien avec la technologie. Apprends sur le domaine dans lequel tu travailles pour devenir meilleur à comprendre les exigences et aider à la résolution des problèmes business. Apprendre à devenir plus productif — comment mieux travailler — est une autre bonne idée.
  • Retourne à l’école (NdT : heu, vraiment ?).

Ça serait bien d’avoir la même capacité que Néo dans The Matrix et de simplement télécharger les information dont on a besoin directement dans nos cerveaux. Mais ce n’est pas le cas, donc ça demande un investissement en temps. Pas la peine de passer chaque heure du réveil au coucher à apprendre. Un peu de temps, disons chaque semaine, reste mieux que rien du tout. Il y a (ou, tout du moins, il devrait y avoir) une vie en dehors du travail.

La technologie évolue très rapidement. Ne te laisse pas distancer.

Mon mot à moi

Presque que des bons conseils. À part retourner à l’école, qui me semble être une très mauvaise idée quand on est déjà dans la vie active et surtout quand on voit le retard de certaines écoles sur la réalité du monde du développement.

J’aime beaucoup les points sur l’enseignement de la matière et sur les conseils de The Pragmatic Programmer. C’est en écrivant (à plusieurs) un tutoriel sur le C que j’en avais le plus appris sur ce langage, notamment parce que je me plongeais plus facilement dans la norme, que j’allais plus loin dans mes recherches et parce que j’ai beaucoup échangé avec des pros du C.

Quant aux conseils d’un des livres les plus connus des développeurs, j’approuve aussi. C’est un objectif que j’ai essayé de remplir au cours de l’année 2016. On peut dire que j’ai commencé à apprendre sérieusement Python ; j’ai aussi bossé sur Docker et AWS, entre autres. J’aurai l’occasion d’en reparler bientôt en faisant le bilan de l’année.

Laisser un commentaire