Les développeurs sont-ils réellement des ingénieurs ? Ou tout du moins opèrent-ils comme les ingénieurs d'autres domaines comme le génie civil ?
La réponse à cette question, limite provocatrice pour certains, semble au premier abord évidente et clairement positive, mais pas de l'avis de Chris Aitchison, un blogueur développeur australien qui tente d'établir une nouvelle définition du métier de développeur.
Selon lui, les développeurs devraient être plutôt assimilés à des jardiniers ! Et appuie cet énoncé par une comparaison entre de « réels » ingénieurs qui construisent des grattes-ciels et des ponts et les jardiniers chargés de fleurir des jardins, tout en situant les développeurs du côté de ces derniers.
Pour lui, les jardiniers ne peuvent prévoir dans le moindre détail la forme finale de leur jardin avant de commencer à le labourer, ni même le temps qu'atteindre cette forme prendra.
Il s'agit là bien entendu d'un clin d'oeil aux obstacles et imprévus qui surgissent durant le cycle de vie d'un logiciel et poussent certains à adopter des méthodologies de développement dites agiles.
Les ingénieurs seraient, quant à eux, capables de prédire et concevoir, dans le moindre détail, les délais de réalisation et la forme du moindre recoin d'un futur gratte-ciel, avec un taux élevé de succès dans leurs prédictions.
De même, Chris Aitchison se demande quelles raisons font qu'autant de projets de jardins échouent alors qu'autant de projets de grattes ciels réussissent.
Cela revient selon lui au fait que la technique de construire un gratte-ciel est, à quelques exceptions près, identique, partout dans le monde alors que chaque jardin est unique par son sol et son environnement, tout comme chaque projet de développement logiciel.
En référence aux bogues et autres imperfections, Chris Aitchison rappel que contrairement à un gratte-ciel, de mauvaises herbes poussent dans un jardin et font qu'il ne sera jamais fini, arrêter de l'émonder risque de l'étouffer.
Dernier point de comparaison, dans la plupart des pays, les ingénieurs qui construisent des ponts doivent avoir un permis de construire délivré suite à des contrôles de qualité imposés par les gouvernements.
Des mesures qui ne s'appliquent pas aux jardiniers (ni même aux développeurs) alors que leurs rôles sont plus prépondérants dans le succès de leurs projets respectifs.
Ce billet est hautement controversé dans les commentaires du blog et ailleurs dans la toile, entre ceux qui trouvent cette métaphore très pertinente et d'autres, plus mitigés, qui trouvent cette comparaison déplacée, n'a pas lieu d'être et estiment que la discipline du développement est encore très jeune pour être comparée à l'architecture et le génie civil par exemple.
D'autres intervenants jugent au contraire que le développement logiciel commence à atteindre la maturité avec l'arrivée du Cloud Computing et qu'il est temps aux développeurs d'aspirer à être de réels ingénieurs... plutôt que des jardiniers.
Et vous ?
Comment trouvez-vous cette métaphore ? Juste intéressante, complètement pertinente, ou définitivement farfelue ?
Comment définissez-vous le métier de développeur ?
Source : blog de Chris Aitchison
Les développeurs ne seraient pas des ingénieurs, mais des jardiniers !
D'après une tentative de mieux définir ce métier
Les développeurs ne seraient pas des ingénieurs, mais des jardiniers !
D'après une tentative de mieux définir ce métier
Le , par Idelways
Une erreur dans cette actualité ? Signalez-nous-la !