Pourquoi Obi2b ?

Par : Thierry Chatel (@ThierryChatel), Jérémie François (@jfrancois_obi2b).
Publié le 15/01/2020.

L’article inaugural du blog, c’est l’occasion de nous présenter et d’expliquer notre projet.

Le point de départ d’Obi2b, c’est un constat, partagé depuis longtemps par deux ingénieurs seniors passionnés de technique : la plupart des écueils rencontrés sur les projets auraient pu être évités.

Bien sûr, l’informatique et son écosystème est un domaine d’activité intrinsèquement complexes. Mais tout de même, quel gâchis : choix non fondés, peu d’anticipation, absence de méthode ou de pragmatisme…

La roulette russe des choix mal étayés.

Est-ce la compréhension du besoin ou bien celle des technologies utilisées qui fait souvent défaut ? En réalité, les deux se combinent et œuvrent efficacement à la faillite d’un projet.

Aucun choix n’est pertinent — et ne devrait être avalisé — tant que le besoin, le contexte et la finalité du projet ne sont pas bien compris : ce qui est explicite mais aussi ce qui est implicite, les tenants et les aboutissants, les perspectives du projet. Il est préjudiciable de démarrer la réalisation la fleur au fusil. Les risques sont bien réels : complexité accrue, coût de maintenance, cloisonnement technique, difficulté à recruter et à faire vivre le projet par la suite…

La complexité a même un effet boule de neige. Il est très difficile de trouver des solutions simples, c’est pourquoi beaucoup de projets démarrent avec des solutions déjà trop complexes. Puis pour tenter de juguler cette complexité problématique, on ajoute d’autres technos qui apportent elles-mêmes une nouvelle couche de complexité… Une fuite en avant à l’issue prévisible.

N’attendez pas que votre projet ressemble à un tel enchevêtrement !

N’attendez pas que votre projet ressemble à un tel enchevêtrement !

Il y a beaucoup de choix techniques partisans ou amateurs, cédant aux effets de mode, ou justifiés par des arguments fallacieux tels que “pas de risque, c’est ce qu’ils utilisent chez Netflix”. Certaines technos peuvent même être choisies non pour leur pertinence sur un projet donné, mais pour ajouter une ligne au CV des développeurs ou de l’entreprise. Oui, le deep learning est très à la mode, mais il est inadapté voire suicidaire pour la plupart des projets ! De même pour la blockchain, qu’il vaut mieux aborder la tête froide.

Une technologie n’a aucune valeur en soi, ce n’est qu’un moyen, jamais une finalité. Elle peut être très bien conçue, et utile dans d’autres circonstances, mais si elle apporte une solution à un problème qui n’est pas le bon, alors on en subit les inconvénients sans en retirer aucun avantage.

La technologie universelle ? Ça n’existe pas.

Chaque choix a un coût et des contreparties. Aucune techno n’est gratuite, aucune n’est parfaite. Un choix ouvre des possibilités mais oblige à renoncer à d’autres. Opter pour une base de données NoSQL, par exemple, c’est renoncer à croiser ses données. Mieux vaut l’avoir compris dès le début, plutôt que de se rendre compte quand le projet est bien avancé que le socle sur lequel tout est bâti ne permet pas de répondre au besoin.

Cela requiert de connaître et de comprendre les avantages et inconvénients d’une gamme étendue de technologies, et de savoir les combiner au mieux pour répondre à un besoin toujours spécifique.

Experience et expertise

Faire des choix judicieux demande de l’expérience, qui s’acquiert sur le terrain, à la longue, avec beaucoup de sueur et autant d’erreurs. Le manque d’expérience met les projets en péril ou provoque des retards considérables. Une vue partielle ou biaisée explique souvent l’emploi de technologies inappropriées en premier lieu.

On n’est pas consultant en sortant d’école. On n’est pas expert après quelques jours de pratique ou de formation. On est encore débutant, et ça n’a rien de déshonorant, surtout dans des domaines qui évoluent continuellement, et où il ne faut jamais s’arrêter d’apprendre.

L’expertise pour les nuls ?

L’expertise pour les nuls ?

Alors que dire de toutes ces formations qui vous promettent d’être expert sur une techno en quelques jours — ou ninja, ou rock-star — à part que cette surenchère de titres emphatiques dévalorise complètement le métier ? Tant qu’il y aura des clients pour y croire, il y aura des commerciaux pour vous promettre que vous allez devenir bilingue en chinois en deux jours. Les formations sont très utiles, mais il faut avoir des attentes réalistes, et pas espérer un miracle impossible. Non, après quelques jours de formation, vous ne serez pas expert. Vous serez un débutant formé, ce qui est déjà très bien.

En rassemblant une équipe de juniors pour un projet, on peut éveiller un enthousiasme, une passion communicative, et d’obtenir ainsi une grande force motrice. Mais encore faut-il avancer dans la bonne direction ! Et là, c’est l’expérience, le recul, le pragmatisme qui permettent d’éviter les choix techniques hasardeux ou franchement désastreux.

Mais pendant combien de temps est-on “junior” ? Un certain temps, mais plus long que pour refroidir le fût du canon ? L’année d’expérience est une unité de mesure tout aussi subjective et dénuée de sens que le mois-homme, quand il s’agit de mesurer les compétences, les acquis, la compréhension et la vision globale. Peut-être qu’on n’est plus junior quand on a conscience de tout ce qu’on ne sait pas, et qu’on a compris que le plus important ce n’est pas les technos mais leurs relations.

Et nous alors ?

Ce n’est pas le fait d’être de travailler depuis 25 ans qui fait de nous des experts. C’est celui d’exercer depuis 25 ans nos facultés à compiler, abstraire, relier, corréler, généraliser, adapter, expliquer. C’est ça qui nous permet d’avoir une vision d’ensemble, plutôt qu’une simple accumulation de connaissances techniques.

Deux experts…

Thierry et Jérémie ?

L’un de nous, Thierry Chatel, est un pur informaticien avec une formation d’ingénieur généraliste, spécialiste de l’architecture logicielle et des applications web, conférencier réputé et le premier en Europe à avoir été nommé Google Developer Expert (GDE) sur Angular.

Le second, Jérémie François, est ingénieur en informatique et docteur en contrôle des systèmes complexes. Spécialisé dans la R&D (prototypage logiciel et matériel, start-ups), du fer à souder à la modélisation mathématique, il a acquis une vision large, fonctionnelle et pragmatique des projets informatiques “pointus”, à défaut d’un domaine d’activité précis.

Deux profils différents et complémentaires, capables de couvrir un large domaine de projets, avec une approche similaire.

… et une vision commune

Nous aimons relever des défis, nous confronter à des projets qui sortent de l’ordinaire. Nous proposons des idées, et souvent des solutions simples et élégantes.

Nous donnons des avis éclairés et étayés, avec franchise, sans langue de bois ni discours commercial, même quand la vérité est déplaisante.

Et nous avons des regrets lorsque nos clients nous demandent d’intervenir tardivement sur leurs projets, pour trouver des solutions à des problèmes qu’ils n’auraient pas dû rencontrer, que nous aurions pu leur éviter en intervenant en amont. Même si une intervention tardive nous génère plus de travail, même si c’est intéressant, c’est quand même dommage.

Nous n’allons pas sauver le monde à nous deux — l’effectif est un peu trop faible. Mais nous pouvons sauver des projets ambitieux, les accompagner dès le début, les mettre sur les bons rails, leur éviter des écueils que notre statut de seniors avec pas mal de bouteille nous permet de voir venir de plus loin. Nous pouvons former, conseiller, partager nos connaissances, nos idées et notre vécu. Et c’est ce que nous allons aussi faire dans ce blog.

Bon ok, mais Obi2b ?

C’est bien beau tout ça, mais il reste en suspend la question principale : pourquoi ce nom Obi2b ? Est-ce pour la connotation geek “sage de Star Wars”, ou pour le business-to-business ?

Les deux, bien sûr !