vendredi 2 octobre 2009

Gold rush

Récemment, un ami me disait toute la déception que lui avait apporté Java. Qu'il avait abandonné son vieux C pour se plonger dans la nouveauté de l'époque, pour se rendre compte qu'il était temps de renoncer.
Au début, mus par un enthousiasme euphorique, mon ami, tout comme des foules de développeurs chevronnés et d'apprentis gourous, se sont rués vers le Klondike de l'informatique de la fin des années 90: Java.
La majorité de ceux qui ont connu le Klondike, à en croire London, sont revenus, fourbus, alcooliques, avec comme seul gain, une pépite porte-bonheur en pendentif. Ceux qui ont connu Java ont eu un sort moins dramatique, quoique la déception a été à la hauteur des attentes, après quelques cycles interminables de Garbage Collector.
Cet ami qui se plaignait de Java, a aussi admis que ce langage lui a facilité l'apprentissage de la conception par objets et la notion de "Thread".
"Apprendre"…depuis la renaissance et jusqu'au début du 20ème siècle, les familles nobles apprenaient à leurs rejetons le grec et le latin. Non pas pour demander une adresse ou le chemin des toilettes dans un restaurant, mais juste pour… se distinguer. Il était alors de bon aloi d'auréoler son allocution de citations de Platon et de quelques proverbes latins.
Ce genre d'apprentissage élitiste avait pourtant une origine bien plus sérieuse. Les savants de la renaissance lisaient les écrits de leurs prédécesseurs grecs et latins, pour apprendre sur les réflexions anciennes et créer le système de pensée, qui distingua plus tard le siècle des lumières. Ces deux langues ont donc été perçues durant longtemps, comme vecteurs de savoir.
Ce mouvement est similaire à l'apparition de l'algèbre dans les démonstrations de physique du 19ème siècle. Grace à Newton, l'emploi d'équations différentielles s'est démocratisé et a ouvert la voie à de nouvelles théories mieux armées pour formaliser les observations informelles de Galilée. Cela a poussé, plus tard, des générations de chérubins, futurs apprentis nobelists, à verser dans l'étude du langage du moment, clé de toutes les portes de la science: les mathématiques.
Le grec et le latin ne sont plus appris à l'école. Sur des projets internationaux, le pragmatisme est de rigueur; on parle donc Globish! De même, les mathématiques sont de moins en moins considérées comme un passeport pour l'avenir social des enfants. On préférerait qu'ils apprennent le Jazz, la voile ou le Thaï-Chi.
Qu'adviendra t-il de Java?
Java est une langage qui s'inscrit dans la lignée des accélérateurs d'apprentissage. Il a démocratisé la conception par objets et par patterns. Il a permis d'élever la syntaxe des langages informatiques à un plus haut niveau, permettant ainsi de réduire la courbe d'apprentissage, de notions restées trop vagues même dans l'esprit de gens qui prétendaient le contraire: threads, accès concurrents, programmation réseau…etc
Nous sommes sûrs aujourd'hui que les langages informatiques modèlent le processus de pensée et donc d'innovation. Nous savons aussi que la richesse syntaxique et conceptuelle d'un langage, rendent réalisables des rêves d'architectes. Java fait partie d'une famille de langages dont les membres ont subi des mutations syntaxiques pour s'adapter aux mutations technologiques.
On continue d'étudier le grec et le latin à l'université…en plus d'autres langues. Les mathématiques sont toujours essentielles pour formaliser la science, en plus de la logique et des méta-langages.
Se demander quel langage sera celui de l'avenir, est réducteur de nos ambitions d'avenir. Il faudrait peut être se demander quels langages seront ceux de l'avenir. Cela conjugue d'emblée nos rêves au pluriel.

jeudi 5 mars 2009

Solow VS Moore: entre paradox et conjecture

J'ai assisté récemment à un excellent séminaire autour d'ITIL et la gouvernance informatique, présenté par Romain Hennion de Thyses. Dans ce séminaire, qui se voulait un état de l'art, un débat a émergé en aparté de la présentation et a donné lieu à un échange que j'ai trouvé très riche d'enseignements.
Le sujet polémique portait sur la capacité réelle de l'informatique à dégager de la valeur. Selon Robert Solow, « L'ère de l'informatique est visible partout sauf dans les statitiques de productivité ». Selon Gordon Moore, le coût d'une puissance de calcul diminue chaque année et durant la même période, la puissance de calcul double pour le même prix.
Donc, d'une part, une puissance technologique en augmentation constante pour un prix de moins en mois élevé et d'autre part, le constat sévère que la productivité n'y est pas nécessairement liée.
La course au plus puissant et au plus complet aboutit souvent à la multiplication d'imperfections, qui finissent par éclipser l'effort de sophistication qui a été fourni en amont et donc, à moyen terme, cela fini par jeter le discrédit sur le produit, sur l'éditeur ou sur la technologie elle même.
Cela a été observé dans de nombreux projets informatiques voulant atteindre la perfection dès la première version. Il s'ensuit alors le sacrifice de la qualité sur l'autel des délais. Souvent, au tout début, lors de la phase de prospection, les utilisateurs n'en demandent pas autant. Ils acceptent, cependant les propositions alléchantes de l'éditeur qui leur propose beaucoup plus que la concurrence pour le même prix sur le principe de la loi de Moore. Il obtiennent un produit qui, finalement, doit souvent évoluer pour être corrigé ou optimisé provoquant retards et déceptions. Les utilisateurs ont alors des doutes sur la réelle valeur ajoutée du produit. Au mieux pour eux, ils factureront les pénalités de retard à l'outsourceur et au pire, ils seront obligés de reconsidérer leur stratégie en retard sur le calendrier. Tout cela est peu productif et rejoint le fameux paradox de Solow.
Un article de The Economist loue le retour au « POGE », le principe du "good enough" que l'on pourrait traduire par le "juste assez". Il s'agit d'un principe pragmatique tenant compte de la complexité des systèmes et de notre incapacité à prévoir tous les états-transitions possibles dans un système connexe. La stratégie consiste à réduire les ambitions fonctionnelles pour gagner en efficacité. L'exemple le plus frappant est le succès des NetBooks, ces ordinateurs portables sous-équipés mais remplissant parfaitement leur rôle: surfer sur Internet. Le succès a été immédiat.
Dans un monde qui se relève d'un cycle d'hyper-activité, il nous revient de discréditer le paradox et de réduire la conjecture.
Louable résolution, sommes nous tentés de dire...jusqu'à ce qu'une annonce d'Intel analysée sur le blog de Gilles Fontaine, nous apprend que le géant des circuits imprimés est en train de préparer une puce capable de doubler la puissance d'un processeur, pour le même coût avec une consommation d'énergie moindre. Ainsi, un datacenter de 200 serveurs, pourra être remplacé d'ici deux ans par un seul serveur.
Finalement, il faut se faire une raison: le moteur de la technologie est...la déraison!

jeudi 12 février 2009

Vous plaisantez monsieur Tanner

J'aime bien comparer un projet informatique à un projet de construction de maison. Juste pour souligner le...décalage.
Imaginez, une fois votre maison construite, que vous ne soyiez pas sûr que les murs puissent tenir debout plus d'un an. Alors, vous prévoyez une aile dédiée aux maçons. Ils habiteront chez vous pour qu'ils puissent colmater tous les jours les imperfections de leur propre travail.
Un exemple: aujourd'hui, le résultat de l'audit compris dans le contrat de TMA, indique que le bidet des toilettes du 1er, risque de s'effondrer dans le séjour au rez de chaussée. C'est très embêtant et ce n'est pas normal mais vous remerciez votre sous-traitant d'avoir été proactif. Car au fond c'est un peu votre faute. Vous auriez du opter pour du béton armé de bonne qualité avec un contrat de support « Platinum », au lieu de vous servir gratuitement dans la carrière désaffectée à ciel ouvert de votre région.
On vous dresse un devis et on vous propose un « backup »: durant les travaux, vous pourrez vous soulager chez les voisins. Le service est dégradée et externalisé mais reste dans la limite de la QoS. Une preuve quand même rassurante de résilience de votre SI.
Un jour vous décidez de construire une cabane dans votre jardin pour y entreposer votre matériel de jardinage. Devis de projet (hors contrat de TMA). Votre fournisseur en profite pour « expérimenter » une nouvelle organisation très à la mode, conseillée par un cabinet de consulting de renom (évidemment vous n'en savez rien). Le prix est cependant très compétitif. La raison: pour rogner sur le coût de la main d'œuvre, la cabane sera construite en Égypte et sera ensuite transportée jusque dans votre jardin. Une fois sur place, les rangements intérieurs ne vous conviennent pas. Ce n'est pas ce qui était prévu au départ, on ne vous avait montré jusque là que l'aspect extérieur. Retour en Égypte. Pour votre sous traitant c'est la banqueroute, les délais s'allongent, vous lui intentez un procès, vous vous séparez à l'amiable grâce à la brochette d'avocats qui vous ont coûté une fortune. Mais il y'a une note positive: vous avez retenu la leçon et capitaliserez pour le futur. Et puis vous êtes déjà heureux de ne pas payer des indemnités de résiliation de contrat. Vous optez pour une autre équipe de maçons. Ils vont construire la cabane directement dans votre jardin...et logeront chez vous entre temps. Pour leur commodité, vous allez aussi investir dans une machine expresso et un bon stock de dosettes, car vous avez d'autres projets en tête!
Là, le drame: vos finances sont en berne, le banquier bloque vos comptes et votre femme, excédée, demande le divorce. Vous quittez la maison sans vos boutons de manchettes après y avoir consacré toute votre énergie. Il ne restait que cette maudite cabane à terminer et vous auriez pu entamer la certification ISO 20000! C'est injuste! Mais vous allez rebondir. Vous actionnez votre réseu et fort de votre expérience, on vous propose un poste...de contermaitre dans une entreprise de maçonnerie. Avec un peu de chance, vous arriverez à séduire une riche bourgeoise qui vous accueillera sous son toit...dont vous aurez supervisé l'isolation.

dimanche 1 février 2009

YAM: Yet Another Middle Tiers Technology

Un article de JavaLoby a attiré mon attention. Encore une tentative d'Antonio Goncalves d'évangéliser les brebis égarées. L'article date déjà d'un an et ressemble à un cri du cœur: Pourquoi JEE 5, spécification de "rupture" n'arrive toujours pas à percer?! Je me suis posé la même question surtout quand je vois que la prochaine version JEE6 est déjà en gestation. Revenons à l'essentiel...
Qu'est ce qui représente la chose la plus précieuse pour une entreprise? Réponse: ses données et ses traitements métier. Il s'agit du bien le plus important que peut posséder une entreprise, son savoir faire. Il y'a souvent une association dans nos esprits entre la notion de bien précieux et la notion de coffre fort. L'entreprise possède son coffre fort pour y entreposer ce qui assure sa survie: ce coffre fort c'est le MainFrame! Même la direction générale sait ce qu'est un IPL. Non pas pour ces caractéristiques techniques mais surtout pour la frayeur tétanisante qu'invoque un arrêt du système informatique central. Il y'a toujours eu le MainFrame et le reste de l'informatique. Cette dichotomie est évidemment particulièrement palpable dans la distribution des budgets informatiques.
Jamais aucun dirigeant n'acceptera de sortir le capital de sa société hors du coffre fort, sauf pour le remettre dans un autre coffre fort au moins aussi sûr que le précédent. La technologie qui se substituera à ce coffre fort sera assurée d'une longévité enviable.
Unix a déjà perdu la bataille de ce créneau. Trop libre, conçu pour des esprits trop intelligents. Il a été transformé par ces pratiquants en technologie chaotique pour gourous rétifs et dispersés. il ne sera qu'une technologie de middle tiers, un système fourre-tout se battant avec d'autres systèmes alternatifs.
JEE est en train d'empreinter le même chemin. Un discours dispersé autour de cette technologie fait naître le doute dans l'esprit des décideurs. Son association avec Java et une politique de versions illisible, conjuguée à une suractivité communautaire et une multiplicité d'implémentations et de compléments sous forme de frameworks et autres APIs, fait penser que jamais la stabilité n'arrivera.
On ne sais plus si dans cinq ans, les choix d'architecture actuels ne seront pas complètement obsolètes voire hors de propos à cause d'une énième "rupture". On peut donc sans prendre de risque, déduire que JEE est condamnée à des projets "miettes" faute d'être suffisamment adulte pour se stabiliser et s'industrialiser.
Une réputation est très difficile à rectifier. Pour qu'une technologie survive, il faut que son discours soit homogène et que sa stratégie soit lisible. Il faut qu'elle se forge une réputation de stabilité, car la production n'admet pas l'incertitude et l'expérimentation. Il faut enfin que sa maîtrise soit assimilée à un savoir faire qui donnera naissance à un véritable corps de métier. Elle sera alors "bancable" et percera le marché vérouillé des coffres forts. Si JEE et Unix n'arrivent pas à redorer leur blason alors ils ne seront que des technologies de middle tiers...parmi d'autres.

samedi 24 janvier 2009

La cathédrale et le bazar

La semaine dernière fut chargée de rencontres. Tout d'abord, celle organisée par le Paris JUG sur le thème « JEE 6 », présentée par Antonio Goncalves, lui même membre de l'Expert Group EJB 3. Ainsi que la présentation de Glassfish Prelude par Alexis Moussine-Pouchkine. Je reviendrai sur cet événement plus en détail. Le lendemain, a eu lieu une rencontre organisée par Sun sur le thème du business model Open Source. Présentée par Simon Phipps, Chief Open Source Officer chez Sun.
Ces deux rencontres ont été l'occasion de revoir quelques personnes que j'avais perdu de vue depuis un moment, de discuter de l' avenir du métier et de certaines technologies et de commenter les derniers événements du vendée globe.
Au delà de la simple rupture d'isolement et de l'intérêt des thèmes, il y'a eu autre chose de plus subtil, un sentiment qui a été, je pense partagé par tout le monde à la sortie de ces rencontres. J'ai cherché un moment et j'ai fini par trouver ce que j'ai synthétisé en un seul mot: « communauté ». Oui, vous avez bien lu! Un mot que l'on cotoie tous les jours en informatique et qui, étrangement, est resté dans les cercles de geeks, de hackers et autres forums, sans franchir le seuil de l'informatique d'entreprise, ou de « production ». Dans ces mondes là, on croit toujours au protectionnisme du sacro sain numéro de support payé à prix « gold » ou « platinum » et renvoyant, au mieux à la doc ou demandant, de façon monotone « d'activer les logs », avant de les transmettre « aux labs », pour conclure qu'il s'agit d'un « problème applicatif ». Eh oui, le modèle conteneur arrange bien les choses!
Lors de la rencontre Open Source, Sun, a présenté et distribué la nouvelle version d'Open Solaris v. 2008.11, son OS desktop, pour commencer à fédérer une communauté. Une démarche loin des campagnes marketing classiques, et qui rejoint les propos de S. Phipps durant la présentation: « dans le business model open source, on tente de transformer les utilisateurs en futurs propects ». Cela me fait penser à l'histoire de Marc Adreessen, fondateur de Netscape en 1994. Il a commencé à distribuer gratuitement son navigateur aux étudiants et universités et à en proposer une licence payante pour les entreprises à partir de 90 jours de test gratuit. Nous en étions aux débuts d'Internet. Cette démarche a permis de stimuler la croissance du réseau. Plus il y'avait d'utilisateurs, plus le contenu s'étoffait et plus cela donnait envie aux gens d'utiliser Internet en passant par un navigateur: Netscape.
Le besoin suscité par une technologie n'est pas toujours artificiel, manipulé ou mimétique. Il nait souvent de l'intérêt que le grand nombre peut trouver dans cette technologie. Le partage de cet intérêt fait croître des communautés qui deviennent les locomotives de cette technologie. Plus besoin d'un big brother pour « décréter » les nouveautés. Elles sont créées, adoptées puis perfectionnées par la communauté si elle présentent un intérêt.
L'avenir d'une technologie ne dépend plus du chiffre d'affaire de son éditeur, mais de la capacité de ce dernier à fédérer une communauté. Nous abordons un nouveau tournant, où des produits échappent aux géants qui en ont été les sponsors. La préoccupation de ces mêmes géants n'est plus le contrôle, mais juste la survie de ces technologies. Cette survie est aujourd'hui soumise au vote de la communauté.
A la verticalité de la cathédrale, je préfère l'horizontalité du bazar...

dimanche 4 janvier 2009

Bonne Année !

« L'imagination est plus importante que la connaissance » A. Einstein.
Nous savions depuis un certain temps que nous abordions ce que l'on pourrait qualifier de tournant dans cette nouvelle étape de l'évolution: le savoir devient une richesse. Avant, il a représenté un symbole de reconnaissance et de prestige. Aujourd'hui il devient directement créateur de richesse.
La puissance d'une nation ne se mesure plus à sa capacité à lever des armées, mais à sa capacité à accumuler le savoir existant et à créer le savoir futur.
Comment absorber et restituer ce savoir? Comment le renouveler et en vivre?
Nous savons comment déplacer des blocs de pierre et des rondins de bois. Comment ramer des jours entiers contre vents et courants pour atteindre une terre ferme. Tous ces efforts restent inefficaces pour manipuler cette nouvelle matière qu'est le savoir. Pour cela il nous faut actionner une autre forme de muscle: notre cerveau!
Nos capacités intellectuelles ne sont que le fruit de ce que l'on a bien voulu en développer. Pour aller plus loin dans cet apprentissage, Tony Buzan, personnage haut en couleurs, sommité mondial des sciences pédagogiques et inventeur des Mind Maps, prône l'entrainnement athlétique pur et simple du cerveau. Les résultats spectaculaires observés sur des milliers d'individus de différents âges et origines attestent de l'efficacité de ses méthodes.
Il n'ya pas que le savoir et son accumulation, il y'a aussi toutes les facultés de synthèse et de création. J'ai été étonné d'apprendre à la lecture de l'excellent ouvrage d'Andy Hunt que jouer d'un instrument de musique pouvait décupler notre capacité à comprendre un problème de physique quantique. J'ai compris alors pourquoi le célèbre pianiste virtuose Maurizio Pollini disait qu'il comptait parmi ces passions...les mathématiques et la physique. La raison de ces convergences cognitives vient du fait que nous disposons de deux cerveaux: droit et gauche. Notre épanouissement intellectuel dépend de notre capacité à faire communiquer les deux hémisphères. Le gauche, séquentiel, centre de la logique et du langage et le droit, holistique, centre des émotions. Dans son best seller, Betty Edwards donne les clés de cet univers étonnant à découvrir, où l'art et le pouvoir d'imagination qu'il éveille en nous, donne un sens à notre savoir.
Bonne année que j'imagine pour vous, pleine de découvertes :-)