Tweeter

Arnaud Legrand

Pourquoi codes-tu ?

Parce que c'est amusant, bien sûr! C'est comme faire du légo, construire quelque chose, faire la cuisine. Bien des gens pensent que l'informatique c'est le virtuel mais quand je programme, je concrétise mes idées.

Et ensuite parce que je suis fainéant et que l'idée même de refaire plusieurs fois la même chose me fait horreur. Programmer, c'est s'affranchir du besoin de répéter en concevant une bonne solution une bonne fois pour toute. Et comme je suis super fainéant, j'essaie en général de faire le programme le plus court et le plus concis possible afin de ne pas trop me fatiguer à l'écrire! ;)

Comment as-tu appris ?

En BASIC sur une machine à calculer que m'avait offert mon père. Les premiers trucs que j'ai programmé étaient des "jeux" très très primitifs, ce qui permettait d'épater les copains. Mais j'ai rapidement réalisé que ça me permettait d'énumérer des solutions pour résoudre les jeux mathématiques qu'on nous posait. Plutôt que de passer mon temps à me casser la tête, il suffisait que j'écrive un petit programme qui le fasse pour moi. Curieusement, les copains qui ne savaient pas faire trouvaient que c'était de la triche... :)

Ensuite, mon père m'a montré comment faire mieux que des choses vraiment basiques, puis j'ai continué en apprenant CAML en prépa et plein d'autres langages à l'ENS. C'est vraiment là que j'ai pris conscience qu'il y avait des concepts qu'un autodidacte ne découvrirait pas tout seul ou encore qu'on pouvait programmer avec style ou pas. Mine de rien, une vraie formation générale à la programmation, ça sert!

Quel est ton langage préféré ?

Et bien je n'ai pas de langage préféré. J'en connais plusieurs. J'utilise couramment perl, C, R, sh mais je connais également ML, CAML, LISP, PASCAL, PHP, ... Chacun ont leurs avantages et leurs inconvénients et j'utilise l'un ou l'autre en fonction de mes besoins. D'autre part, apprendre un nouveau langage permet bien souvent d'améliorer ses compétences dans ceux qu'on maîtrise. On apprend une nouvelle façon de voir les choses, de les exprimer et on peut réutiliser ces concepts dans les autres langages même s'ils ne sont pas prévus pour. Et une fois qu'on connaît quelques langages, on réalise bien vite que le langage n'es pas une barrière. Quand je dois programmer dans un nouveau langage, il me faut rarement bien plus que quelques heures pour commencer à être opérationnel.

Pourquoi chacun devrait-il apprendre à programmer ou être initié ?

Au delà de l'utilisation purement informatique, parce que ça permet de structurer ses idées, sa façon de penser, et d'apprendre des concepts utiles dans plein d'autres domaines et même dans la vie de tous les jours. La notion de type par exemple, ou bien de dépendance, de pipeline, d'optimisation, ... Ce sont des concepts que j'utilise au jour le jour dans des contextes absolument pas informatiques. Quand je cuisine par exemple, quand je planifie l'emploi du temps des enfants ou les vacances. Si vous savez programmer, vous voyez certainement de quoi je parle! ;)