Top Code 2024, les challenges sont de nouveau disponibles dans les boards pour les participant(e)s => Boards

Manifeste

Le code, c’est comme un marathon !

Mais pourquoi il me parle de marathon ?

Un jour, après quelques semi marathon, je me suis mis en tête de préparer le marathon de Paris. On m’a alors dit « un marathon c’est chaud… trouve un plan d’entrainement ». Ok, j’ai trouvé un plan d’entrainement. Il y a plein d’étapes à suivre, un savant mélange de théorie et de différents exercices pratiques.

Je trouve qu’il y a de nombreux parallèles avec la pratique de la programmation et je vais essayer d’expliquer tout ça 🙂

La théorie

Pour un marathon, c’est important d’avoir des concepts en technique de course, en nutrition, en gestion de l’effort, de recueillir l’expérience de personnes ayant déjà accompli cette performance, etc. Pas besoin de passer un doctorat non plus, mais il y a de bonnes questions à se poser pour se préparer correctement.

Dans le code, c’est pareil, on ne fonce pas tête baissée dans son éditeur de code. Il y a des concepts à appréhender : la syntaxe d’un langage, ses fonctionnalités, ses conventions, etc. Pas besoin de tout apprendre par coeur, mais on commence toujours en parcourant une documentation, en regardant une vidéo. Puis on découvre des concepts de plus en plus poussés, qui seront mis en pratique au fur et à mesure de la pratique.

Le matériel

Pour un marathon, il vaut mieux de bonnes chaussures. Sinon tu vas te faire mal aux pieds, au dos, etc. On peut aussi aller plus loin : la tenue, une montre, des équipements pour porter un peu de nourriture.

Dans le code, c’est pareil ! Pour bien coder, il faut : une bonne machine, un bon éditeur de code et utiliser les bons outils : versioning, plugins pour accompagner l’écriture du code, analyse, tests, etc.

La course

S’entrainer pour un marathon ? Facile ! je mets mes chaussures et vais courir ! Si on suit un plan d’entrainement, on découvre qu’il y a courir et courir. Explications…

La sortie courte

Courir 30min, 45min, 1h.

La sortie longue

Courir de 1h30 à 2h30 pour s’entrainer sur des longues distances et de longues durées. On va rarement jusque la distance d’un marathon durant la phase d’entrainement.

Le fractionné

Alterner des séquences de haute intensité et des séquences de repos. Durant 30min par exemple.

Ces 3 types d’entrainements sont nécessaires pour préparer correctement un marathon.

Et le code dans tout ça ?

Le fractionné peut être assimilé à la programmation compétitive : résoudre des problématiques algorithmiques le plus rapidement possible, en prenant le maximum de raccourcis possibles dans l’utilisation des langages, en laissant souvent de côté la clarté et les conventions de code. Comme le fractionné (personne ne court un marathon comme ça), personne ne code un projet professionnel comme on code dans un cadre de programmation compétitive. Mais pour gagner en intensité, découvrir de nouvelles pratiques, c’est très intéressant.

La sortie longue peut être assimilé à un « side project ». On lit souvent que pour progresser en programmation, il faut faire un side project. C’est une bonne idée, ça permet en effet de voir beaucoup de problématiques, liées directement au code et aussi à d’autres : UI/UX, communication, marketing, hébergement, etc. Le side project requiert néanmoins un investissement en temps très important.

La sortie courte, c’est ce que propose Tainix. Un challenge de programmation à réaliser dans des conditions le plus proche possible de la réalité professionnelle. On code en local, dans son éditeur de code favori, avec ses outils, ses habitudes. On applique les bonnes pratiques et les conventions du langage. On réalise des tests. Selon la complexité et vos capacités, un challenge va prendre environ 1h (un peu plus pour les challenges les plus complexes). Au bout de cette heure, on a le sentiment du travail bien accompli.

Du code durable

C’est ça que Tainix souhaite mettre en avant : une pratique du code en accord avec ce qui est attendu dans un environnement professionnel. Parce qu’un développeur ou une développeuse a besoin de développer ses capacités à produire un code de qualité, compréhensible par ses pairs, et qui puissent rendre la solution développée durable.

Cette approche centrée sur la technique et la qualité permet de progresser sur le long terme et surtout avec des techniques au plus proche de la réalité professionnelle.

Un code durable c’est avant tout un code qui peut être transmis, diffusé, repris, corrigé, adapté. Un code qui vit, qui évolue et qui s’améliore.

Des challenges pour toutes et tous, mais pas « faciles »

Tainix propose une démarche de valorisation de l’effort. C’est pourquoi nous ne nous vantons pas de proposer une technique dite “facile” ou « rapide ». Notre vision de nos challenges repose sur la possibilité de chacun.e de développer une solution en fonction de son niveau et de son expérience. Et de progresser.

Il y a des challenges pour tous les niveaux, que tu (ici, on est entre nous, on se tutoie 😉 ) débutes dans la programmation ou que tu aies un bagage technique plus avancé. Un challenge Tainix est toujours l’occasion de mettre en pratique une nouvelle fonction, un nouveau concept, un pattern particulier, s’entrainer à la programmation orientée objet, pratiquer les tests unitaires, etc.

Conclusion

Tu l’as compris, le job de développeur.se c’est le marathon : un ou plusieurs projets conséquents, des journées entières dans une codebase, des patterns, un métier à appréhender, une équipe avec laquelle interagir… Il faut mettre en pratique un grand nombre de compétences.

Et pour s’entrainer et progresser, il y a ces différentes possibilités, que je pense toutes complémentaires :

  • La théorie : documentation officielle, articles, vidéos
  • La programmation compétitive : avec des plateformes comme Codingame
  • Réaliser un side project
  • Et Tainix !

On tâchera de partager du contenu sur chacun de ces points pour t’accompagner dans ta progression technique.

Tu peux poursuivre la découverte de Tainix avec la présentation de nos différents contenus.

A très vite

Arthur

Est ce que j’ai couru le marathon de Paris ? Non… j’étais inscrit à l’édition 2020, repoussée plusieurs fois à cause du COVID… Promis je m’y remets bientôt, j’ai déjà le plan d’entrainement 😉


Ta newsletter chaque mois

Corrigés, challenges, actualités, veille technique... aucun spam.