3712Fermer3714
BrunniLe 05/07/2018 à 11:52
Je voulais faire un post comme ça depuis un moment, je ne savais juste pas le format.

J'ai réalisé que ces dernières années je n'ai jamais fait 2 projets avec les mêmes technos. Quand je connaissais déjà le langage c'était pas mal, mais le framework principal et l'écosystème est toujours différent. J'ai réalisé ça avec la lassitude que j'ai d'aborder tout nouveau projet. On se retrouve à rechercher toujours les mêmes choses, comment faire ci ou ça, comment les briques sont assemblées ensemble, des choses qui sont normalement triviales mais qui sont soudain curieusement difficiles. En fait, ce boulot de consultant (qui touche à une nouvelle techno à chaque projet) que j'ai évité, malgré la thune que ça m'aurait rapporté, est subrepticement devenu mon quotidien.

Je me rends compte que je n'aime pas cet écosystème. Tandis que certains programmeurs s'ennuient, et que pour cette raison ils aiment avoir toujours du neuf, pour ma part je suis toujours dans une situation d'inconfort total sans la moindre idée de comment (et si) je vais pouvoir faire telle ou telle chose. Il n'y a pas vraiment de maîtrise que je peux build-up, c'est comme si je recommence toujours à zéro. Le seul skill que j'ai c'est comprendre, déboguer du code souvent conçu à la va-vite (on fait les choses simplement, on étendra quand ce sera nécessaire), honteusement incomplet, non documenté (voire même typé) et relativement bogué. L'impression est un peu comme faire de la grimpe sans prise : tu ne peux que prendre ta respiration et espérer que tu arriveras au sommet, mais parfois au milieu il y a juste un gros trou ou une protubérance infranchissable.

L'inconfiance vient se loger dans tous les recoins possibles, jusqu'au fait que le framework lui-même te permettra de compléter le projet. Mais dernièrement c'est plus la combinaison qui cause problème, puisque les frameworks sont plus légers, réinventent la roue, et sont généralement mal documentés sur comment les intégrer ensemble. On trouve souvent ces "starter projects" qui incluent tout plein de trucs, configurés ensemble pour toi. Ces trucs ne sont pas éducatifs pour deux sous, généralement pas documentés au-delà de "comment les lancer". Ils ont une configuration complète des composants, faite pour que "ça marche", mais ce n'est valable que pour une version donnée des sous-composants. Si tu n'es pas prêt à simplement redémarrer en utilisant ce starter kit comme base, il va être difficile voire impossible d'identifier l'option qu'il te manque dans ton projet actuel et la porter vers le tien (parfois il faudra même downgrader un composant, en ajouter un autre qui a un effet de bord, etc.).

Bref au final c'est particulièrement un problème pour moi puisque je n'y vois pas de sens. Parce que je sais que comme ça évolue si vite rien de ce que j'apprend ne me resservira d'ici une année, car tout aura changé. Du coup le temps passé à chercher, résoudre les soucis, apprendre n'est pas vraiment pas vu comme une construction utile dans ma vie. En sachant que je veux à terme faire de moins en moins de ce genre de code de merde bien sûr c'est encore plus dur de trouver un sens, mais même.

Est-ce que d'autres personnes ici ont un peu cette même impression ou c'est moi ?