La majorité de tous les logiciels sont écrits dans un dialecte compréhensible par l'homme. En d'autres termes, il se présente généralement sous une forme lisible par l'homme, généralement exprimée dans un langage formel basé sur l'anglais qui suit certaines règles et permet au programmeur de représenter certaines actions pouvant être effectuées dans/sur un ordinateur. Il est ensuite compilé dans une forme plus facile à comprendre par l'ordinateur. En fin de compte, il devient des instructions (sous une forme compacte et numérique) que le processeur de l'ordinateur a été conçu pour exécuter facilement.
Il est également possible de programmer sous une forme exécutable par la machine, mais elle n'est pas aussi facile à comprendre et généralement un peu fragile. Il est fragile parce que tout changement dans les opérations ou les résultats attendus doit être pris en compte et modifié explicitement. Il lui manque l'abstraction que donne un code source compréhensible par l'homme ; cela rend les modifications sujettes aux erreurs, difficiles et longues.
Dans tous les cas, le codage consiste à écrire le code source pour résoudre un problème particulier. Par exemple, un tableur... qui lit un fichier de feuille de calcul et l'affiche sur un écran, ce qui permet de le modifier. Il y aura des éléments de code pour lire le fichier, d'autres pour interpréter les données du fichier, et d'autres encore pour l'afficher à l'écran dans un format de feuille de calcul. Il y aura également du code pour interpréter les données et les formules entrées dans la feuille de calcul à partir du clavier ou d'autres dispositifs d'entrée, et finalement pour sauvegarder les données dans un format de fichier. Tout ce code sera intégré pour produire un programme/application complet et fonctionnel.
Et c'est là que le bât blesse. Le codage n'est qu'une partie du travail de programmation. Si vous vous considérez comme un codeur, vous ignorez les responsabilités implicites de planification, de conception, d'intégration et de test. Cela suppose que quelqu'un d'autre fera le travail pour s'assurer qu'il s'agit d'une appli/programme complète et fonctionnant correctement.
Dans une équipe de développement, il est entendu que les différents membres de l'équipe travailleront ensemble pour produire un meilleur produit. Il existe également un contrat explicite selon lequel chaque programmeur/développeur produira un code entièrement fonctionnel et bien testé. Dans certaines équipes, les tests sont écrits avant qu'une seule ligne de code ne soit produite. Le code est considéré comme terminé lorsque tous les tests peuvent être exécutés correctement. Cette méthode est parfois connue sous le nom de méthodologie de programmation test-first.
Tout ce qui précède sert à illustrer la philosophie selon laquelle se considérer comme un codeur est dangereux. Se concentrer uniquement sur la tâche d'écrire le code est dangereux. Il ignore le contrat du développeur : tout le code doit fonctionner correctement.
Donc, pour faire court, codeur est un terme inexact pour programmeur ou développeur. Le codage n'est qu'une petite partie de la vie d'un programmeur informatique.
La codification n'est qu'une petite partie de la vie d'un programmeur.