Portrait de développeur : Clément Cornen

Portrait de développeur : Clément Cornen
Clément Cornen, photographié par Mathieu Eveillard

Pour bien démarrer l'année, j'ai eu envie de laisser la place à quelqu'un qui, dans sa pratique quotidienne du développement, fait pleinement vivre les valeurs de l'artisanat logiciel.

Meilleurs vœux à tous, bonne lecture et happy coding!

D’où vient le développeur que tu es, Clément ?

À vrai dire, je suis tombé dans l’informatique un peu par hasard. Adolescent, j’adorais déjà créer, j’avais l’âme d’un bidouilleur. Je faisais mes essais en électronique aussi bien qu'en menuiserie. À l’heure critique des choix d’études, j’ai hésité entre un BTS menuiserie et un DUT informatique, deux disciplines où je savais pouvoir créer. L'informatique s'est imposée du fait des débouchés qu'elle offrait.

Mais je ne connaissais strictement rien au développement ! Pour te dire, j'ai écrit ma première ligne de code pendant les vacances avant la rentrée en DUT. Au début, je travaillais sur Notepad, et ne sachant pas faire le caractère "|", je le copiais depuis une page Web… M’ai j'ai rapidement été mordu et j'apprenais avec facilité. Et puis j'avais déjà plusieurs side projects, notamment autour de la cryptographie et du hacking.

Ensuite, dans le monde professionnel, je dirais que c'est d'abord des rencontres, des gens qui m'ont tendu la main 😉. Ces personnes m'ont aidé à prendre de la hauteur sur le code que je produisais et m'ont parlé architecture, qualité logicielle, réutilisabilité etc. Peu à peu, j'en suis venu à considérer la technique comme un outil au service d'un métier.

C'est donc la recherche de la qualité qui te guide ? La recherche de la perfection ?

J’aime penser que les artisans logiciels sont des bâtisseurs des temps modernes : nous érigeons des cathédrales numériques. Nous recherchons sans cesse de nouveaux outils et de nouvelles méthodes pour parfaire nos constructions. Au fond, ce qui compte, c'est la beauté. Cette beauté, c'est la perfection, c'est une utopie, c'est un idéal que l'on n'atteint pas, mais c'est un vecteur qui oriente notre effort et nous tire vers le haut.

Le chemin du développeur est pavé de frustrations, parce que ses compétences et son niveau d’exigence évoluent de jour en jour, de sorte qu'il prend la mesure de l’imperfection de ses réalisations passées. Sans compter qu'il doit toujours rester pragmatique, parce que les enjeux métiers sont là, bien réels. Ces enjeux lui imposent de réajuster son curseur entre la valeur business apportée et le temps consacré à l’implémentation.

Tu parles implicitement d'un savoir-faire. Mais que signifie "savoir", pour toi ?

On dit que "savoir c’est apprendre, connaître c’est comprendre". Autrement dit, la connaissance requiert de la pratique, beaucoup de pratique. De toute façon, mieux vaut partir de l'idée que l'on ne sait rien, vu le rythme auquel les technologies évoluent… Dans les interactions, cela veut dire aussi mettre son ego de côté : je ne sais pas, et ce n'est pas un problème. Ou peut-être que je sais, mais je laisse la porte ouverte car il se peut qu'il y ait une vérité plus large à laquelle je n'accède pas encore. Et c'est le but de la discussion de la faire émerger. Certains appellent ça "l'egoless programming", mais c'est une attitude que l'on gagnerait à adopter plus largement à mon avis.

Pour revenir à la question, l'impossibilité du savoir peut paraître vertigineuse, mais c'est aussi ce qui fait qu'on ne s'ennuie jamais : il y a toujours plus à "manger" ! Notre métier échappe à toute forme de routine. C'est un défi de rester à la page, mais intellectuellement c'est très stimulant.

Tout à l'heure, tu disais "considérer la technique comme un outil au service d'un métier". Peux-tu développer ?

Je vais utiliser une allégorie, qui n'est pas de moi : trois tailleurs de pierre œuvrent sur un chantier ; un passant demande au premier ce qu’il fait dans la vie. Ce dernier répond : "Je taille une pierre." Le passant pose la même question au second, qui répond : "Je taille une pierre pour construire une colonne." Le troisième, sans même attendre la question, déclare avec fierté : "Je bâtis une cathédrale".

Lors de mes diverses expériences professionnelles, j’ai pu expérimenter une relation au business plus ou moins présente. Les situations les plus difficiles se sont toujours présentées quand il y avait trop d'intermédiaires entre l'IT et le business. Ça conduisait à des pertes en ligne et un réel manque d'investissement des équipes de dev, qui ne comprennaient pas la finalité de leur travail.

A l'opposé, si en tant que dev je sais le problème que l'on cherche à résoudre, je peux challenger le métier, enrichir la conception, repérer des erreurs, en clair être force de proposition. C'est tout l'intérêt de l'example mapping, par exemple. Les devs sont là pour coder, oui, mais pas que.

Est-ce que cela signifie que tu souhaite créer un produit, à terme ?

Certainement ! Créer est ce qui m'a motivé à faire de l'informatique. Et avec l'expérience, la question de "savoir faire" a de moins en moins sa place. La période où je codais pour coder est révolue.

L'envie de créer est là, depuis toujours. J'ai fait plusieurs projets personnels, dont un produit, DirectShare.io, créé à deux. C'est un service de transfert de fichiers en peer to peer, ce qui veut dire que la donnée ne transite pas par nos serveurs. C'est particulièrement important aujourd'hui, dans un contexte où l'on se soucie de la souveraineté des données. Le service est utilisé régulièrement par une base d'utilisateurs fidèles, pour environ 3 000 utilisations par mois. C'est bien, mais ça n'est pas encore suffisant pour justifier d'y consacrer plus de temps.

C'etait un projet stimulant, et il y en aura d'autres, ça c'est certain !

Retrouvez Clément Cornen sur LinkedIn.

Subscribe to Mathieu Eveillard

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe