Quelqu'un lui dit quoi faire, on les appelle des programmeurs. Ils interviennent à différents niveaux. Pour démarrer, un ordinateur doit savoir où trouver les instructions qui lui indiquent ce qu'il doit faire, en commençant par rechercher quels bits matériels se trouvent dans son environnement (sur un PC, il s'agit du programme BIOS qui ;est stocké dans une mémoire morte). Cela lui permet de trouver où se trouve le reste des instructions de démarrage (Master Boot Record ou équivalent). Le code écrit par d'autres programmeurs est exécuté sous le nom de système d'exploitation. Il existe des programmes qui exécutent des tâches spécifiques, appelés programmes d'application (par exemple, les navigateurs Web). Pour un matériel spécifique, le système d'exploitation devra accéder à un code spécifique au périphérique, appelé pilote. Chacun de ces bits est écrit par des programmeurs; ; et les ;ils doivent se mettre d'accord sur la façon dont les parties vont parler entre elles en utilisant des points mutuellement convenus.
Auparavant, les programmeurs entraient réellement les instructions de base en utilisant des commutateurs sur le panneau avant de la machine et les programmes d'application contenaient réellement les instructions sur la façon de travailler directement avec le matériel. Il n'y avait pas de système d'exploitation. Pour des tâches simples comme le contrôle de votre montre, il n'y a peut-être toujours pas de système d'exploitation, mais le fait de disposer d'une bibliothèque standard de routines (écrites par d'autres programmeurs) rend la vie beaucoup plus facile.