Comment débuter comme développeur informatique ?

15/01/2020

Le 10e cercle de l’enfer

Vous connaissez sûrement les 9 cercles de l’Enfer, dans la Divine Comédie de Dante. Je me permets de rajouter un dixième cercle : les tutoriels de programmation.

(Si vous ne connaissez pas la Divine Comédie de Dante, je ne peux que vous inciter à la découvrir)

Je déteste les tutoriels de programmation. C’est la pire méthode pour apprendre à coder. Quand on veut réellement apprendre une notion, j’aime croire qu’une base solide se constitue de ces 3 points clé :

Le problème principal avec les tutoriels, c’est qu’on formate sa façon de réfléchir, en se basant sur l’expérience d’une autre personne, souvent totalement inconnue. Apprendre d’une autre personne n’est pas un problème, au contraire, tout le monde fait ça. Mais apprendre en regardant un tutoriel ne fait rien d’autre que remplir vos cerveaux d’informations sans contexte. Vous ne renforcez pas votre propre cerveau, vous ne faites que copier le code et le raisonnement d’une autre personne.

Vous devez commencer un projet de code sans regarder le code d’autres personnes. Faites des trucs au pif, cherchez dans la documentation des outils et technos que vous utilisez. On s’en fou que ce que vous faites soit “faux”, pas “performant”, pas sécurisé, ou encore pas “propre” (concept de fraudeur de l’extrême qui à trop peur de perdre son job).

Mon premier projet de code (en étude)

Le premier projet de code de mes années d’études (j’ai fait d’autres projets qui n’avaient rien à voir avec le Web, bien avant de rejoindre une école pour apprendre à coder) fut L’agenda Digital. C’était une web app super simpliste, qui fait office de To-Do List, dans laquelle les étudiants de mon école pouvaient contribuer collectivement pour noter les devoirs à faire.

The Digital Agenda login page

La motivation derrière ce projet ? Un élève de ma classe se plaignait que “personne ne notait les mêmes choses à faire pour la semaine suivante, et certains ne notent rien !”. Quand j’ai entendu ça, ma fierté ancestrale de développeur (branleur d’étudiant) s’est réveillée, et je me devais de résoudre ce problème.

Réinventer la roue n’est pas une mauvaise chose

J’ai eu le droit aux réactions classiques de badauds : “Ça existe déjà, tu n’as pas besoin de le refaire toi-même”, “On peut juste créer un fichier partagé sur Google Doc” ou encore “Chacun pour soi, démerdez-vous”. Je prie sincèrement pour que D.ieu leur accorde le salut.

Vous ne devez pas être effrayés de réinventer la roue. L’argument principal contre ça, qui est “Tu ne feras jamais mieux que les solutions existantes” ne vaut RIEN. Peut-être que vous ne ferez pas mieux ou peut-être que si. Mais ce n’est même pas le point. En refaisant vous-mêmes les choses, vous comprenez les concepts cachés derrière la roue que vous réinventez. En codant moi-même ce projet, j’ai appris seul en moins d’un mois le frontend, le backend, la notion de frameworks et librairies. J’ai crée mon propre backend, avec mon propre système d’authentification et de chiffrement des mots de passe. C’était pourri. Il devait y avoir des millions de failles de sécurités. Mais j’ai appris. Si j’avais attendu patiemment les cours pour apprendre tout ça, j’aurais mis 3 ans. Mais on parlera du niveau catastrophique de l’enseignement supérieur Français plus tard.

Quand les élèves de ma classe on commencés à utiliser l’application, et me faire des retours, j’ai pu corriger des bugs. J’ai aussi compris que tout le monde ne fonctionne pas comme moi, et j’ai adapté mon interface utilisateur pour plaire à mes utilisateurs, et non qu’à moi. Je développe ce sujet dans cet article.

N’ayez pas peur du changement

Non non non, ce n’est pas une phrase de politicien mondialiste corrompu qui souhaite détruire vos valeurs traditionalistes afin de supprimer chez vous tout ancrage avec le réel.

Ce projet a énormément changé. Autant le design que les technologies utilisées. Et j’ai évolué en concordance avec ces changements.

Ce petit passage n’a pas pour objectif de montrer aux yeux du monde à quel point je suis trop fort et je sais tout faire (quand bien même je le suis). Je veux juste appuyer mon propos : je n’ai pas eu peur d’essayer de nombreuses options. J’ai essayé beaucoup de technos, mais aussi de façons de résoudre le même problème.

Merci d’avoir lu jusqu’ici ! Si vous êtes fan de moi, vous pouvez consulter mes autres articles.