42, v’la l’école !
Publié le 27 mars 2013

Xavier Niel vient tout juste de présenter son école de programmation, 42. L’initiative est quelque peu inédite mais résonne tout particulièrement dans mon esprit car cela fait des années que je prêche le constat fait par M. Niel : le système scolaire actuel n’est plus efficace dans le contexte des nouvelles technologies. Cela fait aussi écho aux diverses initiatives récentes prônant le développement, telles celle mise en avant par MM. Zuckerberg et Gates ou encore le plébiscite de John Naughton sur le site du Guardian pour l’enseignement de la programmation à l’école. Décryptage.

Back to the future

La programmation c’est le bien. J’ai commencé par cela il y a de nombreuses années, et je crois que ce qui m’a fasciné dans ce domaine c’est tout simplement le potentiel de créativité qu’il offre. La programmation est un outil permettant de créer d’autres outils. Pas moins que cela. J’ai commencé avec du BASIC. Sur un PC 486DX400. Une vieille bête qui tournait sous Windows 3.1. Oui, ce vieil OS bien vieux où l’on devait taper "win" à l’invite MS-DOS pour lancer l’environnement de bureau (quand je pense aux windowsiens qui se moquent du startx ...), mais qui m’a permis de faire mes armes en programmation. Je n’en suis pas resté là, j’ai appris ensuite le C, le C++, l’assembleur, et les langages du web bien plus tard. J’étais au collège. Pendant que les autres passaient leurs soirées devant la télévision ou participaient à des boums, je codais. Je créais. Car coder ça n’est pas simplement "que" pisser du code. Comme le hacking, c’est un état d’esprit, un apprentissage qui entraîne à la logique et à la réflexion. Comme aime le dire Ange Albertini : il s’agit "juste" de résoudre des casse-têtes. Rien que cela. Et les résoudre de la meilleure manière qu’il soit.

Retour à la réalité. La réalité de l’école 42, une "école de programmation" ouverte à tous et gratuite avec une sélection à l’entrée : seuls les meilleurs codeurs seront retenus et se verront dispenser un enseignement digne d’un code guru. A l’époque où j’ai appris par moi-même la "programmation", je rêvais de trouver une école de ce type. Une école où l’on puisse s’épanouir dans la création de code, une école qui valorise les profils comme le mien. Mais je n’en ai pas trouvé. J’ai essayé l’université, une grosse déception. A quoi ça sert d’apprendre le Pascal ? D’apprendre seulement à aligner deux lignes de code sans que l’on sache pourquoi ? We’re doing it wrong !. Et maintenant, cette école spécialisée, qui vise à former l’élite des codeurs. Qui vont apprendre à maîtriser le C, le C++, la vie quoi. Où l’algorithmique sera une composante essentielle et pas un truc qui se résume à apprendre par coeur des algos de tri. Il l’a fait. Sincèrement, sur le principe j’approuve totalement. Si, si. J’aurais aimé m’inscrire, il y a quelques années déjà.

We are not code monkeys anymore !

Le programme de l’école semble un brin prétentieux, mais avec des élèves motivés à bloc et ayant une capacité d’adaptation, cette école peut envoyer du poney, comme on dit par chez nous. Néanmoins, j’ai quelques angoisses pour la suite, qui peuvent se résumer à deux grosses angoisses :

Ma première angoisse est issue d’une observation depuis quelques années des profils d’élèves que je croise : lors d’entretiens, lors de stages, durant les meets HZV. Une tendance générale se dessine : ils sont attentistes. Ils sont en école d’ingénieur, apprennent à développer (du moins on le croit) mais ne perçoivent pas forcément l’ouverture que leur donne cette discipline. Certains ont ouvert les yeux et sont conscient de ce que cela leur permet de faire (n’est-ce pas Jonathan ;) : je me rappelle la tête d’une connaissance quand je lui ai mis en tête de coder une machine virtuelle, et qui le lendemain me montrait un prototype presque viable. Tout bonnement motivant. Pour la faire courte : il faudrait que les élèves arrêtent de choisir leur école en fonction du salaire qu’ils souhaitent avoir, mais plutôt en fonction de ce qu’ils veulent vraiment faire. De leur passion. Et choisir une école qui met en avant le code, comme Epitech ou 42. Où ils devront s’immerger et repousser leurs limites. Et être créatifs.

La seconde est tout simplement une généralité en France : un développeur, c’est un pisseur de code. Point barre. Le prolo de l’informatique, incapable de réfléchir et qui pond juste le code qui fait quelque chose. "Bah tu cliques sur le bouton là, et ça te fait des chocapics. Okay, tu peux me faire ça ?". J’ai travaillé comme ingénieur R&D auparavant. J’ai pondu aussi du code. Et je me rappelle toujours d’une bonne blague dans le milieu :

« Quel est le futur d’un développeur en France ? Chef de projet ! »

Cherchez l’erreur. Tant que l’on considérera la programmation comme une discipline qui consiste simplement à traduire une solution à un problème en langage informatique, les développeurs resteront maltraités et mal payés. Mais la programmation est et restera un art. Créer du code (ou "coder") n’est pas simplement pisser du code, mais apporter une réponse intelligente et parfois brillante à un problème posé, et cela de manière optimale. Coder, c’est tout simplement résoudre un ensemble de casse-têtes de la manière la plus intelligente possible, et faire en sorte que cela fonctionne dans tous les cas. Certains codes méritent le respect, même de la part d’un chef de projet ou d’un ingénieur sécurité. Pour illustrer mon propos, je vous propose de jeter un oeil à ce solveur de sudoku qui fait 67 octets, ou encore ces générateurs de labyrinthes, qui sont des bijoux de code. Allez, une petite vidéo en prime.

Alea jacta est

M. Niel, quelle bonne idée que cette école ! J’admire l’initiative et l’ambition de celle-ci et de son programme, tout en appréciant la référence à l’univers de Douglas Adams. Cependant, n’est-ce pas mettre la charrue avant les boeufs, dans ce pays où le statut de développeur est à des années-lumière de ce qu’il est dans un pays comme les Etats-Unis d’Amérique par exemple ? Former de bons développeurs c’est bien, mais les sociétés françaises actuelles qui sont en partie responsables de l’immobilisme dans les cycles de formation sauront-elles valoriser les développeurs issus de cette école et de ce cursus particulier ? J’ai peur. Et je suis content à la fois. Mitigé en somme. Ce serait dommage de ne pas pouvoir récompenser les talents qui seront révélés. Vraiment dommage.