Un récent stagiaire, en deuxième année d'école d'informatique, vient me demander de relire un peu de son code :
- Je ne comprends pas pourquoi ça ne fait pas ce que je demande...
- Bon alors déjà, si le compilateur rapporte une erreur, ça veut dire qu'il n'a pas pu transformer ton code en exécutable.
- Mais si, le fichier EXE il est là !
- ... Bah oui, mais il date d'hier. Aucune compilation aujourd'hui n'a visiblement réussi...
Bon, il comprend déjà pas qu'une erreur de compilation l'empêchera de tester son code. Même lorsque Visual Studio lui dit : « Votre EXE n'est pas à jour », alors qu'il lance le débogueur.
Plus tard dans la même journée, il me dit : « Voilà, ça compile. Mais je ne comprends pas pourquoi il sort de ma boucle... ». On regarde le code ensemble, puis je lui dis :
- Et bien, si tu veux une boucle, tu peux utiliser "for", "while", ou "do... while". Mais de là à utiliser "if"... ça ne sert pas à ça.
- Ah, merci. Là j'ai appris quelque chose !
Et il était sérieux. PEBKAC.
Donc celui-là, c'est un cas.