Codeur, programmeur, développeur : y a-t-il une différence ?
Ces termes sont-ils interchangeables ?

Le , par Stéphane le calme, Chroniqueur Actualités
Codeur, développeur, programmeur. S’il nous est déjà arrivé de désigner le même individu par ces mots, Scott Hanselman, un programmeur, a mis un point d’honneur à établir la différence entre ces différentes appellations (et d’autres encore) pour éclairer tout individu voulant se lancer dans l’apprentissage du code et désireuse de savoir par où commencer, estimant que « connaître les différences –entre ces appellations- peut vous donner une idée sur la profondeur à laquelle vous voulez aller dans votre aventure de codage ».

Avant de passer aux comparaisons, il serait important de souligner ce qu’Hanselman met en exergue afin de comprendre la phrase « je voudrais apprendre à coder ». « Quelle est la question sous la question ? La personne veut-elle faire des sites web ? En faire le design ? Veut-elle faire des applications mobiles et les rendre effectives ? Veut-elle créer un gadget qui va lui faire parvenir un message texte dès lors qu’elle laisse la porte du garage ouverte trop longtemps ? Ce sont là de différents objectifs et il y a plusieurs excellentes façons de commencer si nous creusons un peu » estime-t-il.

Comprendre ce que les gens font peut amener les autres à mieux comprendre le travail de quelqu'un. Dans le cas de l'aspirant-étudiant-de-code, Hanselman met en avant quelques questions qui peuvent les lancer sur le chemin où résident leurs intérêts :

  • Êtes-vous intéressé par le développement Web?
  • Ou êtes-vous intéressé par le Hardware?
  • Peut-être êtes-vous intéressé par le code et l'histoire sous-jacente au code que vous utilisez tous les jours?
  • Peut-être êtes-vous déjà un technophile mais que vous voulez apprendre à la dure?
  • Ou êtes-vous simplement intéressé dans le fait de devenir un développeur bien aguerri ?

Une fois que vous savez ce que quelqu'un fait, alors vous pouvez vous amuser à trouver la terminologie.

Il faut dire que Daniel Kaplan, développeur logiciel, ne partage pas le même point de vue puisque, pour lui, dans un billet intitulé « Coder contre programmeur contre ingénieur logiciel contre architecte contre … » où il s’adresse à des personnes qui ne sont pas issues du monde technique mais qui doivent travailler avec des techniciens et veulent mieux comprendre leurs titres, « 9 fois sur 10 vous pourrez considérer ces titres d’emploi comme étant synonymes. La principale spécialité des trois est qu’ils vont écrire du code pour concevoir des logiciels personnalisés. Si vous rencontrez quelqu’un qui parle de lui comme étant un codeur et un autre comme un programmeur, vous pouvez penser qu’ils font la même chose ». Il précise quand même que « l’ingénieur logiciel a une connotation qui évoque la tendance à traiter le développement de logiciel comme un art qu’il cherche constamment à améliorer. Il ne réunit juste pas les choses de façon insouciante, il fait de l’ingénierie de ce qu’il conçoit. Cela ne signifie pas que les autres soient négligents, juste que l’ingénieur logiciel à une connotation de quelqu’un qui n’est pas insouciant ».

La vision d’Hanselman est quelque peu différente puisqu’il estime que les codeurs vont comprendre et faire le travail qui leur est assigné bien que, même si la solution qu’ils proposent marche, elle ne « sera pas esthétique ». Un genre de description qui rappelle celle que faisait Alan Skorkin, développeur logiciel, quelques années auparavant dans un billet intitulé « la différence entre un développeur, un programmeur et un informaticien » lorsqu’il présentait le travail des informaticiens comme ceci : « cela pourrait ne pas être le plus esthétique ou le meilleur code mais cela fait l’affaire ».

Une fois qu’il évoque le terme ‘développeur’, Hanselman dépeint une image un peu plus méliorative puisqu’il estime qu’ils « sont les meilleurs généralistes » et peuvent « utiliser un tas de systèmes et de langages différents et les faire communiquer ». Il va plus loin dans les éloges lorsqu’il dit qu’ils sont de vrais professionnels qui travaillent bien en équipes et communiquent aisément. Il fait écho à Skorking qui, bien qu’il estime que les développeurs sont « des généralistes sans aucune spécialisation vraiment prononcée », « sont experts dans l’art de contourner les problèmes et de relier des composants ensemble pour remplir un ensemble d’exigences ».

Si nous progressons dans le domaine du programmeur, Hanselman estime qu’ils « écrivent le code et comprennent les algorithmes », code qui marche « souvent tout seul et bien ». Skorking pour sa part estime que « les programmeurs écrivent du bon code. Le rendre clair et avec le minimum d’erreurs possibles sont des facteurs très importants mais qui ne doivent pas primer sur le fait de faire la tâche assignée. Il s’agit de connaître la signification de ‘bon code’ dans leur domaine ».

Source : blog Hanselman, blog Alan Skorking, blog Daniel Kaplan

Et vous ?

Qu'en pensez-vous ? Ces termes sont-ils interchangeables ? Partagez vous l'opinion de l'un de ces auteurs ? Sinon quelles différences faites-vous entre ces termes ?


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


 Poster une réponse

Avatar de MikeRowSoft MikeRowSoft - Provisoirement toléré https://www.developpez.com
le 21/06/2015 à 17:59
Ces activités ont des travaux en commun.
Il devra commencer par là pour les dissociés par la suite, en parler avec des collègues de travail ou faire une enquête en industries (production), laboratoires de recherches (CNRS, INRA, etc...), bureau d'études (conception), etc... Chaque diplômes permettant aux titulaires d'accéder aux métiers les mieux appropriés.
Avatar de Voïvode Voïvode - Membre émérite https://www.developpez.com
le 21/06/2015 à 18:28
La vision d’Hanselman est quelque peu différente puisqu’il estime que les codeurs vont comprendre et faire le travail qui leur est assigné bien que, même si la solution qu’ils proposent marche, elle ne « sera pas esthétique ». Un genre de description qui rappelle celle que faisait Alan Skorkin, développeur logiciel, quelques années auparavant dans un billet intitulé « la différence entre un développeur, un programmeur et un informaticien » lorsqu’il présentait le travail des informaticiens comme ceci : « cela pourrait ne pas être le plus esthétique ou le meilleur code mais cela fait l’affaire ».
Et les ducs sont plus nobles que les marquis…
Wikipédia est très clair sur la terminologie et permet d’éviter de nager dans ce flou artistique teinté de jugements de valeur.

Mais tout ça, ce sont des petites cases. En pratique, il y a d’une part des tâches qui peuvent (et doivent) être clairement définies, et d’autre part des individus aux connaissances variées et aux expériences différentes pour les accomplir.

Et puis t’façon : « Developers, developers, developers, developers... »

Avatar de Tibimac Tibimac - Membre du Club https://www.developpez.com
le 21/06/2015 à 18:49
Tout ça c'est un peu masturber des mouches. Sérieusement est-ce que ca importe un tant soit peu quelqu'un quelque part de faire une différence entre codeur, programmeur, développeur, ingénieur logiciel ?
Ces mecs sont surement un peu perché et se prennent surement pas pour de la merde pour faire ce genre de comparaison bidon.
Avatar de TheLastShot TheLastShot - Membre averti https://www.developpez.com
le 21/06/2015 à 19:34
Bon alors déjà il y a un terme qui n'a rien à faire là : "Ingénieur logiciel". A rappeler que "ingénieur" est un titre (en tout cas en France) qui s'obtient à bac+5 en ayant fait... Une école d'ingénieur (oui, étant moi-même ingénieur je suis un peu pointilleux sur le sujet).
En ce qui concerne les autres terme par contre ils sont plus ou moins synonyme. Le terme "codeur" appartient (à mon sens) à un registre un peu plus familier. "Développeur" semble être plus ou moins le terme standard, c'est celui que l'on utilise en général pour désigner un poste (je n'ai encore jamais vu d'annonce d'emploie "Recherche codeur avec 5 ans d'expérience").

Petite nuance cependant: Les termes "codeur" et "programmeur" désignent essentiellement la même fonction: Ecrire du code. En revanche les tâches d'un développeur et a fortiori d'un ingénieur logiciel vont bien au delà (que ce soit de la conception, du management de projet, etc.)
Je ne veux bien évidemment pas, par là, dénigrer le travail des "simples programmeurs" en sous-entendant qu'ils sont incapables de faire autre chose, mais bien que leur fonction principale est celle qui consiste à taper des lignes de code (avec tout ce que ça implique en optimisation, en réflexion, etc.).
Avatar de Paul TOTH Paul TOTH - Expert éminent sénior https://www.developpez.com
le 21/06/2015 à 21:01
vous avez vu le synopsis de Ex Machina ?

bon en fait ça a été modifié sur Allociné depuis, mais on retrouve la perle en cherchant un peu
[2 juin] Caleb, 24 ans, est programmateur de l’une des plus importantes entreprise d’informatique au monde.
[actuellement] À 26 ans, Caleb est un des plus brillants codeurs que compte BlueBook

et sur WikiPedia
[octobre 2013] Le film narre l'histoire d'un programmateur informatique milliardaire
[novembre 2013] Le film narre l'histoire d'un programmeur informatique milliardaire
[juin 2015] Caleb, 24 ans, est programmateur de l’une des plus importantes entreprise d’informatique au monde
[dernière version] Caleb, 26 ans, est programmeur dans l’une des plus importantes entreprises d’informatique au monde

alors peut-être était-il programmateur à 24 ans (après tout on parle ici d'IA) avant de devenir programmeur (et humain) à 26

à priori la version US a toujours parlé de programmer: A programmer, computer programmer, developer, coder, or software engineer is a person who writes computer software.
Avatar de Hizin Hizin - Modérateur https://www.developpez.com
le 22/06/2015 à 0:35
Perso, je suis plutôt d'accord avec divers conférencier d'Agile Tour : "on en a rien à foutre des titres, on fait le boulot qu'on doit faire" (un indép' et un software craftsman... les noms par contre...).

Qu'est-ce que ça apporte, concrètement ? OK, la rédaction de code et de spécifications demandent des termes précis, mais ne serait-ce pas une déformation professionnelle ?
Avatar de martopioche martopioche - Membre confirmé https://www.developpez.com
le 22/06/2015 à 0:56
Citation Envoyé par Tibimac Voir le message
Tout ça c'est un peu masturber des mouches. Sérieusement est-ce que ca importe un tant soit peu quelqu'un quelque part de faire une différence entre codeur, programmeur, développeur, ingénieur logiciel ?
Ces mecs sont surement un peu perché et se prennent surement pas pour de la merde pour faire ce genre de comparaison bidon.
C'est un peu ce qui me semble, sensation que j'ai dès qu'on parle de titres dans le domaine informatique et qu'on cherche à les hiérarchiser...

Cependant, à mon sens, "codeur" a peut être une signification particulière qui est la spécificité du "code". "Codeur" est donc quelqu'un qui "code" diminutif pour "écrire des lignes de code". Or, avec un outil comme LabView, je bouge des cubes, les paramètres mais pourtant je n'écris pas "du code". Mais je "programme" bien... Bon, c'est peut être une approximation, je ne connais pas trop LabView et je sais que si je cite des outils comme Automator ou l'outil Mindstorm, je vais blesser les puristes ;p

Cette capilotractation mise de coté, oui à mon sens, chercher des spécificités est juste une volonté de manutention sexuelle de mouches.
Avatar de martopioche martopioche - Membre confirmé https://www.developpez.com
le 22/06/2015 à 1:03
Citation Envoyé par TheLastShot Voir le message
Bon alors déjà il y a un terme qui n'a rien à faire là : "Ingénieur logiciel". A rappeler que "ingénieur" est un titre (en tout cas en France) qui s'obtient à bac+5 en ayant fait... Une école d'ingénieur (oui, étant moi-même ingénieur je suis un peu pointilleux sur le sujet).
Ben pour être pointilleux, il faudrait se renseigner sur le sujet... "Ingénieur" en France est aussi bien une profession qu'un titre, le CEFI le précise d'ailleurs. Cette profession n'est pas réglementée, l'usage du titre et l'accès à la profession sont libres... C'est le titre d'"Ingénieur Diplômé" qui lui est réglementé, mais dans le domaine qui nous intéresse (l'informatique), il n'apporte rien pour l'exercice de la profession, intitulé du poste ou titre de la fonction (je n'ai jamais vu un poste exigeant un titre d'ingénieur diplômé)...
Avatar de Cafeinoman Cafeinoman - Membre éprouvé https://www.developpez.com
le 22/06/2015 à 7:14
Citation Envoyé par martopioche Voir le message
dans le domaine qui nous intéresse (l'informatique), il n'apporte rien pour l'exercice de la profession, intitulé du poste ou titre de la fonction (je n'ai jamais vu un poste exigeant un titre d'ingénieur diplômé)...
Euh... As-tu déjà essayé de te pointer devant un recruteur qui cherche un ingénieur en lui disant "je n'ai pas de diplôme d'ingénieur, mais j'ai les compétences que vous demandez. Vous n'avez qu'à me faire passer le test technique, vous verrez."?
Moi je l'ai fait, bah ça marche pas... Si le diplôme d'ingénieur n'apportait rien, croit moi je ne me casserai pas la tête sur mes cours tous les soirs...
Avatar de martopioche martopioche - Membre confirmé https://www.developpez.com
le 22/06/2015 à 9:08
Citation Envoyé par Cafeinoman Voir le message
Euh... As-tu déjà essayé de te pointer devant un recruteur qui cherche un ingénieur en lui disant "je n'ai pas de diplôme d'ingénieur, mais j'ai les compétences que vous demandez. Vous n'avez qu'à me faire passer le test technique, vous verrez."?
Moi je l'ai fait, bah ça marche pas... Si le diplôme d'ingénieur n'apportait rien, croit moi je ne me casserai pas la tête sur mes cours tous les soirs...
Dans mon message, "il" fait référence au diplôme d'ingénieur donnant le titre "d'ingénieur diplômé" et au début de la phrase a son importance dans un domaine (comme pas mal d'autres) où l'accès à la profession d'ingénieur ne nécessite qu'un Bac+5.
Offres d'emploi IT
RESPONSABLE WEB ANALYTICS F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
Développeur WEB PHP F/H
VACALIANS GROUP - Languedoc Roussillon - SETE (34)
Développeur Web FULL-STACK
VACALIANS GROUP - Languedoc Roussillon - SETE (34)

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