PROJET AUTOBLOG


Le Hollandais Volant

source: Le Hollandais Volant

⇐ retour index

Une définition de la programmation

vendredi 17 août 2012 à 10:05

J’ai parfois eu à expliquer qualitativement ce que je voulais dire par « je programme » ou « je code ».
Je sais pas comment vous vous en sortez quand on vous pose la question, mais voilà la version longue de l’explication que je donnerai dans le futur.

Une phase essentielle en informatique

« Programmer ». Si je prends le dictionnaire, il est dit que c’est l'action d’écrire des programmes. Bien, c’est la bonne définition, mais on est pas du tout avancé.

C’est dur d’expliquer ce qu’est la programmation à quelqu’un qui n’en a jamais fait, encore plus à quelqu’un qui utilise l’ordinateur tous les jours sans en faire…

Je vais pourtant essayer de me lancer dans une explication, car la programmation est quelque chose de fascinant et j’ai envie de partager ça (et je voulais partager un moyen d’expliquer ce que je fais une partie de mon temps libre).

Et surtout cette phase de « programmation » est essentielle : sans elle rien n’existerait sur nos ordinateurs : ni Windows, ni Firefox ou Word, ni le BIOS, ni votre fond d’écran, ni iTunes, ni Google, rien. Idem pour nos téléphones, nos « Box », nos consoles, nos montres à quartz, nos GPS, ni voitures, ascenseurs, feux de croisement…
Même les langages de programmation ont dû être programmés… Dans d’autres langages !

Alors c’est quoi, en quoi ça consiste « programmer » ?

Imaginer et écrire un code

Je vais utiliser un exemple que tout le monde comprend : celui de la recette de cuisine.

Votre ordinateur dispose de programmes prêts à l’emploi : navigateur, lecteur audio, traitement de texte…

Chaque programme a été imaginé et il est passé par une étape, la programmation, qui consistait à l’imagination et à l’écriture du code source du programme. Tout comme chaque plat, gâteau ou recette a forcément eu besoin d’une étape d’imagination et d’écriture d’une recette pour exister.

Une recette de cuisine est une suite d’instructions à suivre et de procédures à appliquer sur des ingrédients pour obtenir un plat comestible.

Par analogie, la recette est le code source d’un programme. Le programme (navigateur, traitement de texte…) c’est le gâteau ou le plat.

Évidemment, quand vous utilisez le programme, vous n’avez pas besoin de connaître le code source et heureusement ; tout comme manger un plat ne vous oblige pas à connaître et savoir appliquer la recette.

Le travail du programmeur, c’est d’imaginer un nouveau programme (pour combler une nécessité technique par exemple), puis d’en créer le code source en écrivant ligne après ligne des instructions que la machine sait interpréter. Si tout est fait correctement, le programme fonctionne. Il peut éventuellement rester quelques bogues mais cela se corrige par quelques ajustements (comme en cuisine en fait).

Pourquoi programmer soi-même ?

Ce qu’il faut bien voir, c’est que tous les programmes, interfaces, formats de fichiers, pages web, etc. ne sont pas sortis de nulle part.
Tapis dans l’ombre, il a quelqu’un qui un jour (ou une nuit très probablement) a écrit le code et ce que vous utilisez tous les jours sur votre ordi, c’est le résultat de ça.

Ce site web par exemple, ses couleurs, sa mise en page, ses articles qui s’affichent dans l’ordre ; fonctionne parce que j’en ai écrit le code source. Le système qui fait fonctionner le site (BlogoText) est une suite d’une dizaine de milliers de lignes de code dans pas moins de 6 langages différents. Évidemment, l’utilisation du logiciel ne nécessite pas d’en connaître le code source et c’est ça la beauté : tout le monde peut utiliser un logiciel, alors que seuls quelques personnes ont besoin de les écrire.

Programmer, ou écrire des recettes pour ordinateur, c’est quelque chose de passionnant et avec un peu de patience, tout le monde qui veut s’y essayer peut y arriver.
Je pense que c’est un peu comme découvrir la face caché de l’ordinateur, de nos jours : tout le monde utilise des logiciels, mais vous n’aviez jamais eu l’idée de faire votre propre programme ? Ne vous êtes vous jamais dit « tiens, ce serait cool si un logiciel faisant ceci-cela existait ! ». Apprendre à programmer c’est fun ! Ça demande du temps et de la patience, mais une fois qu’on a atteint un certain niveau, il est possible de demander à l’ordinateur de faire ce qu’on veut, (y compris le café s’il le fallait) et c’est exactement à cela que sert un ordinateur.

Savoir programmer, c’est donc reprendre la main sur l’ordinateur. C’est ne plus être son esclave mais au contraire son maître.

Où commencer pour apprendre ?

Pour terminer, voilà quelques liens sur la programmation. Ils sont du Site du Zéro, la référence francophone pour apprendre à programmer. Ils font aussi des bouquins.
apprendre à programmer en Python, sur le SdZ aussi. Python est sûrement plus simple pour débuter : peu de tracas avec les types de variables, les syntaxes ultra-strictes du C par exemple.
apprendre à programmer en C/C++, sur le Site du Zéro. Ce langage est très connu, pas forcément compliqué, mais il a le mérite non seulement de vous apprendre à programmer avec de bonnes bases, mais aussi de vous apprendre beaucoup de choses sur le fonctionnement interne d’un logiciel informatique.
programmer un site Web en PHP (également sur le SdZ). C’est ça que je fais : PHP permet de faire beaucoup de choses, en rapport avec le Web, mais aussi autres (CLI, traitement d’images, etc.).