×

Blog

Pourquoi on code avec le cul?

Savez-vous pourquoi les développeurs codent avec le cul? Pourquoi il y a toujours plus de bugs dans les logiciels et jeux vidéos? C’est une question que se posent beaucoup le JDG ou encore les joueurs de CyberPunk 2077 😋

Nous allons voir dans cet article que les développeurs ne sont pas tous des incompétents et qu’ils ne sont pas non plus de gros sadiques qui aiment voir souffrir les utilisateurs de leurs logiciels… j’espère en tout cas!

Coder avec le cul c’est quoi?

Quand un programme est mal codé et qu’il génère plein de bugs, on dit qu’il a été codé avec des moufles, des pieds, le cul ou toutes autres parties du corp du développeur. Il faut comprendre ici que le développeur a fait de la merde dans le code.

Mais pourquoi les développeurs codent avec le cul? Es-ce-que c’est par incompétence ou peut être que les développeurs sont sadiques et qu’ils aiment voir les utilisateur souffrir?

Pour résumer cette question, voici le lien vers le clip de VoxMaker: je code avec le cul

je code avec le cul

Les deadlines

haaaa les deadlines, clairement un enfer pour beaucoup de développeurs. La deadline est la date limite pour rendre un projet. Souvent, voir même tout le temps, cette dealine est beaucoup trop courte, du coup on se retrouve avec des développeurs sous pression qui doivent coder vite sans se préoccuper de la qualité: le fameux quick and dirty.

Mais ce n’est pas tout, le manque de temps peut pousser a sauter certaines étapes indispensables pour faire du code de qualité, le parle ici des tests. On dit parfois, en développement logiciel fait avec le cul, que tester c’est douter.

tester c'est douter

Comprenez par là que le développeur code et que l’on ne test pas ce qu’il a fait, on livre directement au client…

Vous allez me dire “Mais pourquoi faire des deadlines trop courtes?” 

Dans un monde de bisounours, les entreprises perfectionnent leurs produits avant de les sortir mais dans notre monde, elles sont soumises à des contraintes plus fortes que la satisfaction du travail bien fait.

Time to market

Parfois, une équipe de développement n’a pas la choix, il faut sortir le produit à une date précise et pas plus tard car le client vous met la pression ou simplement que le marché vous l’impose. Je prend ici l’exemple des smartphones. Il y a clairement une course pour sortir une version tout les ans. Sinon la concurrence vous bouffe! Ici, le moindre retard peut avoir des graves conséquences sur les ventes. On sort alors les produits avec pleins de bugs pour les patcher plus tard.

Le temps c’est de l’argent

Et oui, dans le coup d’un logiciel, ce n’est clairement pas le prix des licences ou des PCs qui compte le plus mais belle et bien le salaire des développeurs. Donc, si vous rallongez le temps de développement, vous augmentez mathématiquement le coup de production du logiciel. C’est pourquoi les entreprises cherchent a minimiser ce temps de développement. Si vous avez déjà fait du développement logiciel dans une entreprise vous voyez de quoi je veux parler. Quand on demande à un développeur d’estimer sont temps de dev, les manageur et chefs d’entreprises, on une tendance a seulement allouer la moitié du temps demandé. Résultat? il faut coder avec le cul pour tenir les jalons.      

Une complexité grandissante

La deadline n’est pas la seule raison du nombre de bugs toujours grandissant dans les différentes applications.

Des technologies toujours plus complexes

Il y a également la complexité toujours grandissante des outils, frameworks et autres technologies du développement logiciel. Pour faire du code de qualité, il faut maitriser les outils que l’on utilise. Je pense que c’est valable peut importe le métier 😋
Le problème avec le développement logiciel, c’est que les outils des développeurs sont de plus en plus complexes. C’est une bonne chose car cela permet de faire des programmes toujours plus puissants mais cela entraine aussi une baisse de la maitrise de ce que l’on fait. Ainsi, on gagne en fonctionnalité et en rapidité de développement mais on perd en maitrise et donc en qualité.

Des programmes de plus en plus gros

Avec le temps, le nombre de lignes moyenne d’un programme ne fait qu’augmenter. Mathématiquement, plus on augmente le nombre de lignes de code plus on augmente les chances d’avoir des bugs. De nos jours, même un programme très basique, comporte des dizaines voir des centaines de lignes de code.

Coder avec le cul, c’est mal?

Avec tout ce que je viens de vous dire, la réponse logique est clairement OUI! coder avec le cul c’est mal… et bien non 😋

Coder avec le cul et donc coder vite fait et salle, c’est parfois une bonne chose. En fait c’est bien si c’est utilisé judicieusement comme pour faire des tests ou des maquettes. L’objectif ici est de passer le moins de temps possible à tester une fonctionnalité pour valider, au plus vite, sa pertinence. Si elle n’en a pas, on balance le code et finalement on n’a pas perdus beaucoup de temps. Inversement, si la fonctionnalité est bonne, on la recode mais proprement. Mais ça, c’est la théorie, et dans la pratique, les entreprises ne jouent pas le jeu. En effet, vous avez une fonctionnalité déjà codé, avec le cul certes, mais déjà codé. Dans l’optique de réduire les temps et les coups de développement, on ne recode pas proprement la fonctionnalité…