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

47PARTAGES

2  3 
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 ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de 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... »

14  2 
Avatar de 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.
13  2 
Avatar de 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 ?
11  0 
Avatar de vanskjære
Membre averti https://www.developpez.com
Le 22/06/2015 à 10:02
Moi ça me fait surtout penser à ce strip

Finalement tout le monde code...et le sysadmin..........
9  0 
Avatar de Zirak
Inactif https://www.developpez.com
Le 23/06/2015 à 8:42
Citation Envoyé par sazearte Voir le message
Perso, c'est un ressenti, mais plus tu fais de grandes études en informatique, plus tu t'éloignes de la technique et donc moins tu codes.

Si je compare mon IUT et mon doctorat, ç’a été clairement le cas pour moi.
Et donc sur l'autre fil et ici par la suite, tu nous fais un foin sur les ingé qui sont les meilleurs codeurs du mondes alors qu'en fait, ils codent peu voir pas (car ils sont passé "chef de" ?

Allez moi aussi je m'arrête de faire dévier le sujet !
9  0 
Avatar de 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.
8  0 
Avatar de Carhiboux
Expert éminent sénior https://www.developpez.com
Le 22/06/2015 à 14:44
Tout comme l'habit ne fait pas le moine, le diplôme ne fait pas le codeur, le développeur ou le programmeur.
.
Bien qu'étant Ingénieur "diplômé", j'ai pu voir des collègues être "diplômés" aussi avec des connaissances... pour le moins minimalistes.
.
Pour la terminologie... c'est une vaste fumisterie. Les termes changent avec les modes. Maintenant on parle de devops, de dev full stack, de bidule, de truc, de chouette... mais au final, on fait à peu près tous les même chose: on nous soumets un problème, on propose une solution intéressante et logique, on négocie une solution nettement moins intéressante et logique avec celui qui à posé le problème pour beaucoup de mauvaises raisons, et on écrit les lignes de code qui correspondent plus ou moins à la solution qui aura émergé bien après le lancement du problème.

Des fois on ne fait pas toutes ces taches, des fois on ne fait qu'une d'entre elle, mais grosso modo, on fait tous les même chose.
.
Ce qui change, ce n'est pas l’appellation, c'est l’environnement de travail. Dans telle boite, ça sera plus segmenté, plus découpé, dans d'autres boites, tu gèreras un problème (certains, surtout ceux qui n'ont pas à mettre les mains dedans, appellent cela un "projet" de bout en bout, ...
.
Mais juste pour la petite histoire, codeur fait très péjoratif quand même. Parce que cela induit qu'on se limite à coder un truc prémâché.
6  0 
Avatar de Potomac
Membre habitué https://www.developpez.com
Le 23/06/2015 à 0:39
Citation Envoyé par Paul TOTH Voir le message

cela ne veux pas dire que les ingénieurs sont des quiches, mais simplement que le diplôme ne fait pas tout.
ce qui est dommage c'est que lorsqu'on interroge ces ingénieurs fraichement diplômés sur leurs objectifs de carrière on se rend compte que beaucoup veulent rapidement devenir "chef de projet" alors que c'est un métier radicalement différent qui demande des compétences très spécifiques et qui s'éloigne de la technique pure,

résultat : au lieu de rester développeurs experts ces ingénieurs finissent par évoluer vers un métier où ils vont passer la majorité de leur temps à remplir des plannings, des feuilles excel, à assister à des réunions, et ils ne vont plus du tout faire de développement/codage ( activité qui sera déléguée à des bac+2~3 qui eux feront véritablement le travail technique de codage/conception )

et c'est un phénomène typiquement français qu'on ne retrouve pas dans les autres pays,

aux USA tu peux être un bon développeur expert jusqu'à 70 ans sans être obligé de sortir d'une école d'ingénieur, l'expérience et la motivation primant sur le diplôme
6  0 
Avatar de martopioche
Membre éclairé 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é)...
6  1 
Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 22/06/2015 à 10:07
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...
oui, je l'ai déjà fait et j'ai obtenu le poste sans passer de test technique...faut dire c'était sur un poste Delphi et j'avais un CV de 800 pages

ce qui posait problème aux RH c'était de fixer un salaire vu que justement, sans le diplôme, je n'entrais pas dans la grille des salaires. Mais on a trouvé un accord malgré tout.
4  0 
Le code payé par les citoyens devrait être disponible pour les citoyens !
Libra : Facebook renonce à sa vision ambitieuse sur la cryptomonnaie
Rustls, une bibliothèque TLS écrite en Rust, surclasse les performances d'OpenSSL
Cours complet Bootstrap 4 - Premiers pas, un tutoriel de Maurice Chavelli
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web