Coder rapidement ou écrire du code de qualité ?
Les deux approches reviendraient au même, selon un célèbre développeur dessinateur

Le , par Idelways, Expert éminent sénior
XKCD est une célèbre bande-dessinée créée et publiée par Randall Munroe, un ancien consultant à la NASA, qui la définit comme un webcomic sarcastique qui parle de romance, de maths et de langage.

Une planche publiée récemment sous forme d'organigramme algorithmique n'a d'autre prétention que celle de résumer, d'une manière extrêmement pessimiste, le métier de développeur.

Les développeurs seraient, selon Munroe, éternellement confronté au dilemme : coder rapidement ou coder correctement.

Ceux qui prennent la décision de "coder correctement" sont selon Munroe toujours dépassés par les événements, et quand leur travail arrive enfin à terme, les spécifications auront déjà changé. Les malheureux doivent donc tout jeter et reprendre depuis le début.

Les autres (ceux qui choisissent de coder vite) finiraient, eux, immanquablement par produire une masse de « bidouilles et de code spaghetti ». Résultat, leur code subirait le même triste sort que celui de leurs confrères : être jeté et repris depuis le début.



Bien entendu, cette planche exclut toute possibilité de juste milieu entre ces deux extrêmes.

Il existe bien entendu des développeurs qui arrivent à produire du bon code dans les délais, sinon nous ne serions pas là pour en parler.

Mais d'après vous ?

Comment trouver le juste milieu pour développer vite tout en produisant du code correct ?
Comment faire des concessions tout en étant consciencieux ?
Y arrivez-vous plus avec l'expérience ? Ou pas du tout ?

Source : XKCD.com


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Barsy Barsy - Expert confirmé http://www.developpez.com
le 27/01/2011 à 16:43
Le but du commercial reste quand même d'essayer de vendre la baignoire même si le client n'a besoin que d'une douche.

Le but du client par contre est de réussir à acheter la douche au prix du lavabo.

Le défi du développeur sera de réussir à réaliser la "baignoire-douche-lavabo" qui sera un subtil mélange entre les trois solutions et qui au final ne répondra à aucun besoin.
Avatar de MigouW MigouW - Membre actif http://www.developpez.com
le 27/01/2011 à 17:24
Citation Envoyé par Barsy  Voir le message
Le but du commercial reste quand même d'essayer de vendre la baignoire même si le client n'a besoin que d'une douche.

Le but du client par contre est de réussir à acheter la douche au prix du lavabo.

Le défi du développeur sera de réussir à réaliser la "baignoire-douche-lavabo" qui sera un subtil mélange entre les trois solutions et qui au final ne répondra à aucun besoin.

La "baignoire-douche-lavabo" étant installé dans la cuisine pour couronner le tout...
Avatar de pseudocode pseudocode - Rédacteur http://www.developpez.com
le 27/01/2011 à 17:28
Citation Envoyé par Barsy  Voir le message
Le but du commercial reste quand même d'essayer de vendre la baignoire même si le client n'a besoin que d'une douche.

Le but du client par contre est de réussir à acheter la douche au prix du lavabo.

Le défi du développeur sera de réussir à réaliser la "baignoire-douche-lavabo" qui sera un subtil mélange entre les trois solutions et qui au final ne répondra à aucun besoin.

Je ne sais pas d'où vient ce penchant des développeurs pour les analogies de plomberie...

Une overdose de Mario étant jeune, peut-être ?
Avatar de zaventem zaventem - Membre expérimenté http://www.developpez.com
le 28/01/2011 à 14:22
Citation Envoyé par pseudocode  Voir le message
Je ne sais pas d'où vient se penchant des développeurs pour les analogies de plomberie...

Une overdose de Mario étant jeune, peut-être ?

C'est moi qui l'ai lancée et je n'ai jamais joué à Mario de ma vie, ça doit donc pas être ça. (ben oui, des comme moi, c'est peut-être rare mais ça existe)

Bien tenté quand même
Avatar de Nebulix Nebulix - Membre éclairé http://www.developpez.com
le 01/02/2011 à 14:28
Les architectes savent aussi vous vendre une douche comme "salle de bains" http://www.maisonapart.com/edito/con...2-p10-5112.php
Avatar de BugFactory BugFactory - Membre éprouvé http://www.developpez.com
le 25/02/2011 à 11:57
Citation Envoyé par Barsy  Voir le message
Non, quand il s'agit de demande d'évolutions, celles-ci sont chiffrées et ajoutées au coût du projet. Ce sont les anomalies qui sont à la charge de la SSII. Évidemment, les commerciaux s'arrangent avec le client (faudrait pas le braquer non plus) et intègrent au projet une certaine partie des évolutions si leur coût est raisonnable par rapport à l'ensemble du projet.

Dans le cadre d'une régie, ces questions ne se posent pas...

Ca, faut vraiment être informaticien pour avoir des idées pareilles!

En pratique, quand les délais s'allongent et que les coûts augmentent, le client ne se montre pas toujours raisonnable et fait preuve de mauvaise foi, arguant n'importe quoi pour que ce soit le prestataire qui assume les coût, même si la responsabilité est entièrement celle du client (genre envoyer le cahier des charges quinze jours APRES la date de fin du projet).

Evidemment, tous les clients ne sont pas à ce point cauchemardesques.
Avatar de Barsy Barsy - Expert confirmé http://www.developpez.com
le 25/02/2011 à 13:38
Citation Envoyé par BugFactory
le client ne se montre pas toujours raisonnable et fait preuve de mauvaise foi

D'où l'intérêt de toujours communiquer par mail et de garder un écrit. Quand un client me téléphone en me demandant une évolution, je lui renvoie tout de suite un mail dans lequel je détaille cette évolution (en commençant le mail par "suite à note conversation téléphonique..." et en demandant de confirmer et même s'il ne le fait pas, ça laisse une trace).

Des clients de mauvaises foi, il y en a (plutôt rarement cela dit). Et souvent, s'ils sont de mauvaise foi avec le presta, ils le sont aussi avec le commercial (en tout cas, ceux que j'ai connu étaient comme ça). Quand on est prestataire, il faut savoir se protéger et conserver des traces reste le meilleur moyen.
Avatar de ovh ovh - Rédacteur http://www.developpez.com
le 25/02/2011 à 18:06
Citation Envoyé par Barsy  Voir le message
C'est quand même rare que le commercial valide une évolution sans en faire part au préalable à l'équipe technique (enfin, j'imagine qu'il doit bien y en avoir qui le font... ).
Dans le cadre d'un forfait, tout dépassement est la charge de la SSII. Accepter de prendre en charge des évolutions sans les chiffrer, c'est aller droit dans le mur.

Le chiffrage c'est de la vaste blague... Les délais sont toujours largement sous-estimés... C'est souvent très aléatoire, même pour un dev expérimenté qui est à fond dans un projet, estimer le délai de réalisation d'une nouvelle fonctionalité est très difficile (à part pour certaines tâches simples bien sûr). Et on a très souvent tendance à minimiser.
Avatar de el_slapper el_slapper - Expert éminent sénior http://www.developpez.com
le 28/02/2011 à 10:48
Citation Envoyé par ovh  Voir le message
Le chiffrage c'est de la vaste blague... Les délais sont toujours largement sous-estimés... C'est souvent très aléatoire, même pour un dev expérimenté qui est à fond dans un projet, estimer le délai de réalisation d'une nouvelle fonctionalité est très difficile (à part pour certaines tâches simples bien sûr). Et on a très souvent tendance à minimiser.

j'ai voté +1, mais j'ai vu des exceptions. Sur des applis matures, dans des environnements matures, avec un chef de projet présent depuis 10 ans, on pouvait avoir des chiffrages précis à quelques pourcent. En 15 secondes, "il faut 420 jours pour passer le code produit de 4 à 5 caractères, en comptant la recompilation de tout les batchs, la retaille de tous les JCL, mais surtout la refonte de tous les écrans CICS, dont certains n'ont pas la place pour, et devront être chamboulés; celà compte également l'intégration et la recette". A 10 jours près, il avait tout vu.

Mais c'est une exception. En général, on avance dans l'inconnu. Les boites sérieuses(pas toujours les plus grosses) parlent de R&D pour le développement, pas de production de code, car elles savent que le coté aléatoire(i.e. les mauvaises surprises, les choses qu'on découvre en cours de dév) est important.
Avatar de gangsoleil gangsoleil - Modérateur http://www.developpez.com
le 28/02/2011 à 11:51
Citation Envoyé par ovh  Voir le message
Le chiffrage c'est de la vaste blague... Les délais sont toujours largement sous-estimés... C'est souvent très aléatoire, même pour un dev expérimenté qui est à fond dans un projet, estimer le délai de réalisation d'une nouvelle fonctionalité est très difficile (à part pour certaines tâches simples bien sûr). Et on a très souvent tendance à minimiser.

Moui. Certaines personnes savent faire de vrais chiffrages, qui sont tres souvent corrects, a quelques pourcents pres bien sur.
Mais ca ne veut pas dire que les commerciaux accorderont ce chiffrage au projet.

Par ailleurs, il faut tenir compte de la loi de Hofstadter :
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.

Avatar de souviron34 souviron34 - Expert éminent sénior http://www.developpez.com
le 28/02/2011 à 17:42
Citation Envoyé par gangsoleil  Voir le message
Moui. Certaines personnes savent faire de vrais chiffrages, qui sont tres souvent corrects, a quelques pourcents pres bien sur.
Mais ca ne veut pas dire que les commerciaux accorderont ce chiffrage au projet.

Par ailleurs, il faut tenir compte de la loi de Hofstadter :

moui...

D'un autre côté c'est par application de ça par , dans l'ordre, le programmeur, puis le Chef d'équipe, puis le Chef de Projet, puis le Directeur Technique, puis le Directeur du Marketing,, puis les commerciaux, qu'on finit par avoir des délais aberrants...

C'est le principe du parapluie... Chacun ouvre son parapluie .. Du coup, ça n'a plus rien de réel, et les délais et les budgets explosent....

Offres d'emploi IT
Developpeur php Magento H/F
Lyon Tertiaire ADEQUAT - Rhône Alpes - Ain
DBA SQL SERVER (H/F)
CAREER BOOSTER - Ile de France - Courbevoie
Formateur mainframe H/F
Adaming - Ile de France - Paris (75000)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil