Une légende tenace prétend qu’une partie du lectorat de Chro est constituée de geeks indécrottables, lecteurs de Douglas Adams et William Gibson depuis leur plus jeune âge, propriétaires successifs d’à peu-près toutes les consoles de jeu sorties depuis la Megadrive et fins connaisseurs des arcanes de la programmation informatique. Tous ne sont peut-être pas pour autant des codeurs confirmés, capables de cracher des lignes de code en C+ ou en Cobol, tels ces post-adolescents hirsutes et narquois qu’on voit à l’œuvre dans The Social Network, scotchés à leur écran, prêts à révolutionner le monde. Aussi la lecture de Geek sublime (version française un peu racoleuse du titre original, Mirror Minds, my life in letters and code, d’autant que Laffont a ajouté un sous-titre à rallonges : « Une vision esthétique, littéraire, mathématique et pleine d’autodérision du codage ») leur apprendra-t-elle sans doute deux ou trois choses sur ce monde impénétrable pour les profanes, dont on découvre d’ailleurs qu’il évolue si vite que même les spécialistes chevronnés sont généralement largués au bout de quelques années.
L’auteur, Vikram Chandra, la cinquantaine, est devenu célèbre dans les années 2000 avec un roman-Bollywood qui a fait le tour du monde, Le Seigneur de Bombay. Dans une vie antérieure, il avait été programmeur informatique, représentant cette génération d’Indiens formés aux mathématiques et à l’informatique puis émigrés aux Etats-Unis. Ce sont ces deux facettes de sa vie, la littérature et le codage, qu’il met en parallèle dans cet essai marrant et documenté qui tient à la fois de l’autobiographie, de la réflexion sur l’art et du manuel introductif façon « le codage et les portes logiques pour les Nuls ». Bourré d’anecdotes, Geek sublime part ainsi sur les traces des premiers langages informatiques, évoque le Foltran et les monstrueuses machines IBM des origines, révèle que 90% des transactions financières sur la planète se déroulent encore aujourd’hui en Cobol, un langage inventé en… 1959 ( !), explique à ceux qui ont loupé les cours de techno du collège comment traduire un nombre décimal en binaire, et multiplie les parallèles avec le sanskrit et la mythologie hindoue.
Surtout, il réfléchit sur cet aspect relativement méconnu de l’activité du codeur : l’esthétique, et le fait que les codeurs se veulent aussi des artistes, à leur manière. « Le beau code, explique-t-il, est limpide, il est facile à lire et à comprendre, son organisation, sa forme et son architecture révèlent ses intentions, tout autant que sa syntaxe déclarative. La plus infime de ses parties est cohérente, unique dans son objectif et, bien que tous ces petits segments s’emboîtent, telles les pièces d’une mosaïque complexe, quand un élément doit être changé ou remplacé, il se détache facilement. Cette volonté de cohérence architecturale incite à des comparaisons entre code et musique, souvent décrite comme le plus mathématique des arts ». A l’inverse, un programme mal foutu est hideux, compliqué, illisible, et ressemble à une énorme boule de crasse enchevêtrée comme celle que représente le fameux « diagramme de dépendance » (un graphique montrant l’interdépendance entre composants logiciels d’un programme : plus il est touffu, moins il est possible de modifier un paramètre sans déclencher une catastrophe), dont une illustration est fournie par l’auteur. Les comparaisons valent évidemment ce qu’elles valent, mais beaucoup d’amateurs de séries, de films ou de romans se diront qu’on pourrait se livrer au même exercice pour distinguer les bons scénarios des mauvais.