• # FizzBuzz

    Posté par (site web personnel) . En réponse au journal Développeur, ou comment sur-évaluer ses compétences. Évalué à 10.

    Ah, tu viens de comprendre que le CV n'est rien d'autre qu'une plaquette promotionnelle vérifiée par personne si ce n'est l'embaucheur officiel ? Bien, te voilà entré dans un monde plein de surprises !

    Le problème des Expert PHP/Perl/Java/C/C++/ complètement faux sur les CVs n'a rien de nouveau, et les tests basiques de coding n'ont rien de nouveau: le fameux test de FizzBuzz (ou, en tout cas, un test dans le genre) permet d'éliminer une grande partie des candidats. Tu as inventé ton propre test, et tu en es arrivé aux même conclusions, il est juste dommage que tu le découvres aujourd'hui !

    J'ai juste une petite remarque sur ton test: Est-ce que les candidats n'ont pas passé une grande partie de leur temps sur le déchiffrage de vCard ? C'est un format très utile et très utilisé, mais pas connu de nombres de développeurs (de la même manière qu'à peu près tout le monde sait comment marche DNS, mais en proportion très peu savent à quoi ça ressemble dans les tuyaux). Bon, ça n'excuse pas d'écrire du code dégueulasse, mais ça peut faire perdre du temps pour rien. Si vraiment tu veux garder le même test, je pense qu'il serait pas mal d'utiliser un format plus connu, même fictif (allez, pourquoi pas JSON), histoire de voir les gens se pencher sur la logique.

    La question que je fini par me poser, c'est: Est-ce que j'accorde une trop grande attention, à la qualité de code ? Suis-je un cas particulier à aimer le travail bien fait ? Quand j'en voit certain qui pondent des bouses infâme, mais "On s'en fou, tant que ça marche... Tout le monde est content." je sais plus trop. Au final, quelqu'un qui code mal et aussi bien vu, que quelqu'un qui code bien.

    Si tu fais du logiciel open source/libre, qui a pour principale valeur la qualité technique, tout le monde ici s'accordera à dire que les gens comme toi sont bien. On est des artisans, on aime le travail bien fait. Si tu fais du logiciel en vue de gagner ta vie, là les choses sont complètement différentes: le client est là pour un logiciel qui marche, pas pour un joli logiciel. Tu ne peux pas forcément lui reprocher ça, parce qu'il n'a pas forcément le temps ni l'envie de savoir comment déterminer si un logiciel et bien fait ou pas, donc il ne peut pas savoir si le code est dégueulasse (surtout s'il n'a pas accès au code). C'est là la principale différence, et tant que la grande majorité de la population n'aura pas une connaissance poussée dans le développement logiciel et l'accès aux sources, ça ne changera pas.