Ok

En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies. Ces derniers assurent le bon fonctionnement de nos services. En savoir plus.

12/02/2011

Du code jusqu'à la nausée

0.PNGL'informatique est malade de lignes de code. D'où est venue cette nausée? Quelles en sont les raisons et les aboutissements?

Il y a quelques années, je me souviens d'un CEO qui assistait à la présentation des liens qui existaient entre les applications de gestion, faisait la constatation suivante:

- Cela ressemble à du spaghetti.

Des organigrammes expliquaient pourtant de manière claire, les liens et les processus entre les informations à partir des "input", pour arriver aux "output" conformes aux desiderata de lui-même en tant que CEO.

Si j'avais été à sa place, j'aurais dit,

- C'est de la théorie et je suis ici en tant que vendeur et pas créateur. Les spaghettis sont toujours secs. C'est à vous, client, qu'il s'agit d'y ajouter de la sauce tomate pour que cela ait un goût plus savoureux.


Sa logique, à lui, n'était pas passée aussi loin que la difficulté des tâches en présence. Il voulait seulement garder le brin d'humour par sa déclaration d'impuissance.

Il n'avait pas tout à fait tort, pourtant. Tout était, déjà, complexe. Les processus comportaient des décisions, des aiguillages, des enchevêtrements de blocs d'instructions pour répondre à la logique humaine tout aussi complexe. S'il fallait refaire l'exercice, aujourd'hui, pas sûr qu'il y verrait plus de clarté. Il ne s'en rendait pas compte et en plus, s'il avait dû expliquer dans un cahier des charges, ses desiderata peut-être aurait-il été fort dépourvu quand la brise serait venue. Même le "jongleur de chiffres" ne peut expliquer d'où ils viennent. Il ne voit que les résultats. Les sources l'indisposent. 

Cette complexité n'a, malheureusement, fait qu'augmenter à tout niveau. Si les principes de base des applicatifs de gestion sont restés ce qu'ils ont toujours été, des facturations, des comptabilités, les machines ont permis d'aller plus loin, de réactualiser pour exploiter encore mieux, tout azimut et triturer, au mieux, ces données et ces chiffres.

Même si les langages de programmation se sont rapprochés de ceux de l'homme, que l'Assembler n'est qu'un lointain souvenir, les difficultés se sont multipliées d'autant dans de nombreux processus. Les professionnels ont appris à vaincre ce grand écart entre le raisonnement humain et celui de la machine en y accordant beaucoup de temps, souvent beaucoup de sueur et de stress. 

Les temps ont changé. L'informatique s'est tournée vers n'importe qui en passant par n'importe quoi. Tous les utilisateurs se sont vus désignés pour "produire" par eux-mêmes, en y intégrant leur propres compétences dans un "Do it yourself". Cela a commencé par l'introduction des données par les utilisateurs et non plus par des gens dont c'était la profession.

Le langage Basic a apporté, au départ, une "certaine facilité d'utilisation". Le marketing a imposé à l'informatique d'être "convivial", "user friendly", "Plug and Play" comme le disait la publicité, plutôt mensongère, des premiers softwares de Microsoft. L'informatique rendue accessible par tous et pour tous.

La 4ème génération des softwares a apporté plus de souplesse. Cette génération L4G s'est avérée ensuite comme trop libertaire et encline aux excès chez des apprentis sorciers, qui sans guide, se sont mis en tête de remplacer ceux qui étaient étudiés "pour". Il a fallu revenir à l'étape précédente, de la centralisation, celle de plus de rigueur. Revenus dans le giron des professionnels, ces développements parallèles à eux, souvent, il ne s'agissait plus de spaghettis mais de cannellonis qu'il fallait réécrire.

Entre-temps, la facturation n'était plus restée une facturation simple. Elle s'intégrait dans une série d'autres processus périphériques pour lui donner un aspect contextuel, plus intégré et, de fait, plus complet. Validation à l'entrée et à la sortie ne suffisaient plus. Des bases  énormes de données pour le stockage, puisque celui-ci avait baissé considérablement de prix. 1.jpg

A la suite de ce besoin, le nombre de processus est devenu tellement gourmand en fonctionnalités, en lignes de codes  et en complexités que la nausée des codes est en passe d'étouffer ses professionnels. La cote d'alerte, pour écrire ces codes et ensuite pour les maintenir, est atteinte, comme le remarque l'article du Science et Vie de février 2011. Article "L'informatique,  malade des lignes de code".

BUGS LOGICIELS. PC, téléphones, GPS, mais aussi moteurs automobiles et aériens....les programmes informatiques sont partout, et de plus en plus sophistiqués. Problème: en raison de cette inflation galopante des lignes de code, les informaticiens avouent ne plus pouvoir assurer la fiabilité de leurs systèmes.

Les softwares ont considérablement explosé en richesse de fonctions et de fonctionnalités.

Les compilateurs assurent la vérification du vocabulaire, de la syntaxe, mais pas des erreurs de logique. Les interpréteurs de langages, s'ils empêchent le temps de compilation préliminaire, ne sécurisent pas plus. L'hypersensibilité aux erreurs se fait sentir plus tard lors de la confrontation avec le monde du réel. Tester tous les cas est devenu impossible à réaliser dans un temps qui se veut court  et dans la limite du "contrat" avec l'utilisateur impatient.

Au niveau de base, la gestion globale du l'"Operating System", de l'OS demande déjà de plus en plus de maintenance, de mise à jour, une fois lancé dans la nature de la production. En 1993, Windows NT 3.1 comptait 3 millions de lignes de code. En 2003, Windows server en demandait 50 millions. La version Seven ne doit plus être "avare". 

Nous sommes, de moins en moins, à l'époque de la création "pur jus", "from scratch" comme on le disait. La réécriture d'un logiciel ne se conçoit plus souvent. Les packages ont remplacé le "clé sur porte". Pour la maintenance, on y joue, désormais, avec des bouclettes, des interfaces entre un ensemble d'objets, autour du cœur du système que l'on espère garder en vie.

La version Windows Seven de Microsoft, ce sont les utilisateurs, eux-mêmes, qui ont apporté leur concours par des tests et l'apport d'idées d'amélioration, avec des versions "beta". Une fois, distribué, l'utilisateur continuera à participer aux frais des corrections par sa propre expérience. Seule la diffusion mondiale permet d'affiner tout logiciel.

Le software est plus sensible aux erreurs que le hardware. Moins rigide, adaptable aux besoins par la "customisation", le logiciel souffre, ainsi, d'un potentiel de "bugs" grandissant. Statistiquement, en bureautique, il est raisonnable de penser qu'au moins, un bug se cache derrière chaque  millier de lignes de code.  Face aux millions de lignes, il est un peu normal que les informaticiens déclarent forfait et ne peuvent plus assurer leur production sans risques. 

Les informations, elles, sont devenues tentaculaires, parfois, d'origines non certifiées, ce qui rend les erreurs exponentielles, sans même avoir commencé le traitement. Les modules de processing sont écrits par des équipes différentes, ce qui ajoute à la difficulté. Les fonctionnalités s'empilent, couche après couche, comme des poupées russes avec l'aide d'interfaces et de paramétrages à tous les étages. Ce processus de mise en boîte est là, en principe, pour faciliter la tâche de l'informaticien. Le problème, c'est que ces boîtes deviennent mouvantes, que les cœurs des systèmes ne sont plus rigides, mais dépendants du hardware en évolution rapide. Car la puissance du matériel augmente les potentiels à une vitesse stratosphérique. Potentiels qu'il faut utiliser au plus vite pour gagner une guerre contre la concurrence. 

La documentation, quand elle existe, prend un temps important, en parallèle et à toutes les étapes: analyses, implications environnementales, conceptions, réalisations et plus tard, pour les mettre mises à jour. Si l'on suit la procédure Oracle (AIM), pour le design, il y a pas moins de 12 types différents à compléter. 

2.jpg Ambitions et fiabilités ne font pas bon ménage.

La crise du logiciel guette, comme le constate Kévin Sullivan du Software Engineering Institute de Carnegie Mellon. La gestion comporte un ensemble de logiciels dont les versions doivent rester compatibles entre elles. Chaque logiciel devrait rester, en principe, compatible avec lui-même, dans une version antérieure (en down grade). Cette idée permet d'espérer postposer l'implémentation de la dernière version. C'est vrai, pendant très peu de temps,  en définitive. Le risque de ne plus pouvoir se connecter avec tous les logiciels satellites est important. Dès qu'un autre partenaire sort des sentiers battus, pour n'importe quelle raison, les autres devront se mettre à niveau pour continuer à garder les "lunettes" à la bonne focale. De moins en moins de consolidations pour s'en assurer. Plus le temps, tout simplement. Le nouveau software est là et il faut s'y greffer et le flou s'installe. Les artefacts se bousculent.

Quand on se rappelle que l'informatique s'impose, partout, dans tous les secteurs de l'entreprise, ainsi que chez les particuliers, ce n'est pas là pour rassurer.  Les millions de lignes se voient complétés de patches, de corrections de milliers de lignes en un patchwork que personne ne peut plus s'assurer de l'efficacité ou de l'utilité. On s'inquiète de leurs dernières utilisations par un inventaire. Mais, on implémente, en aveugle, "parce qu'on ne sait jamais", en creusant de plus en plus le fossé entre l'usage, l'obsolescence, la création et la maintenance. Les risques ne font pas plus de vagues dans l'esprit des décideurs qui en ont pris l'habitude.

Pour assurer l'ensemble, les tests se déroulent sur des machines  différentes de la "création" du programme, jusqu'à la production, en passant par tous les intermédiaires en testeurs fonctionnels. Relais qui passe par un souci de compréhension. Les backups n'existent plus dans les ressources humaines encore disponibles.  1.jpg

Face à cette situation, les programmeurs semblent de plus en plus débordés en partageant leur temps entre analyses, maintenances et meetings pour rester informés de la stratégie, qu'il faudra ensuite "mettre en musique" avec les projets dont on attend les résultats avec toujours plus d'impatience.

Les utilisateurs finaux, eux, n'ont de cesse de râler sur les programmes et l'informatique en général. Toujours en manque de l'information indispensable et qui n'a pas été prévue par les logiciels.

La plainte est toujours la même: 

- Je donne tout ce que je peux à cette bécane et j'en reçois très peu en échange.  

Ne vous inquiétez pas, chers utilisateurs, les professionnels râlent autant, face à une situation qui se détériore et dont ils ne sont plus totalement responsables.  Ils sont maintenus à distance de la production, cantonnés sur des systèmes de test qui n'ont pas les mêmes objectifs.

0.jpgL'époque du  développement "clé sur porte", du "sur mesure" est presque obsolète. Différents fournisseurs apportent des solutions intégrées au prix d'une inflation d'instructions inutiles. Qui peut le plus, peut le moins, c'est évident, mais ce n'est pas gratuit.

Sécuriser, assurer l'intégrité des données et les résultats s'est imposé au travers d'une hiérarchie d'utilisateurs dans un jeu de rôles sous la surveillance de workflows rigides.

L'internet des objets est le dernier gadget à disposition de l'informaticien. Véritable saucissonnage des instructions, qui ne permet plus la vue d'ensemble d'un projet pour le professionnel. Celui-ci doit faire une confiance aveugle aux premières tranches du saucisson, en n'oubliant pas que la première tranche peut très bien influencer la dernière.

Mais tous ces softwares sont vendus avec une notice d'acceptation contractuelle qui impose à l'utilisateur de prendre toutes les protections nécessaires pour sécuriser son exploitation. Les véritables erreurs seront corrigées dans une version ultérieure. Tout est donc réglé. Au suivant...

Les risques sont évidemment dépendants du secteur d'activités. La gestion automatisée du transport aérien ne travaille pas dans le même niveau de sécurité que de l'exploitation d'une entreprise commerciale. La sophistication de la sécurité est encore plus importante. Son implication augmente en fonction de la modernité et du type d'appareil. La commande de vol de l'Airbus A380 est dix fois plus lourde que sur l'A320 pour seulement donner de meilleures qualités de vol. La sécurité, la qualité du software n'a pas de prix, la quantité d'instructions sous-jacent, bien. Les automatismes s'intéressent à la sécurité et au confort des passagers. Plus un seul avion moderne qui ne soit pas piloté par une armada d'équipements électroniques et d'ordinateurs. On ajoute de la sécurité par la redondance du matériel. Malgré les négations des concepteurs des avions, les bugs existent à bord de leurs beaux engins volants. Sujets embarrassants pour les constructeurs qui prennent le maximum de rigueur dans le codage de leurs programmes, mais nous ne sommes  toujours pas à l'ère de se demander s'il y a un pilote dans l'avion. Le top 10 des bugs de programmations est éloquent.

Les machines deviennent de plus en plus précises et rapides pour traiter les données, toujours plus nombreuses, mais les connaissances ne suivent pas le rythme et se perdent dans des "overheads" qui ne révèlent pas leur ampleur au départ. 

Pour remédier aux "bottle necks" du code, il faut paramétrer pour décupler les forces, concaténer et rendre polymorphes les bouts de codes. On ne cherche même plus, pas de temps, les sources d'un problème. On le corrige, c'est tout. S'il se représente, on repassera pour la même occasion. Les boîtes noires n'existent et n'ont d'importance que dans le domaine de l'aviation, parce que les dédommagements sont plus importants.

1.jpgRendre les langages plus simples, plus compréhensibles ne laisse entrevoir le sommet de l'iceberg. Pour suivre l'évolution effrénée des usages spécifiques, 7000 langages de programmation auraient été créés.  Le langage C est actuellement celui qui est le plus  utilisé. Pas plus simple pour autant et cela ne l'empêche pas d'avoir des codes erronés.

L'innovation produit un effet de couloir d'attente du type "first in, first out". A côté, des 32% des projets réussis et qui tiennent la route, 44% sont en difficulté, pour des causes diverses suite à une analyse pas assez prévisionnelle et 24% sont abandonnés avant d'arriver à la production et à maturité. Même réussi, un projet le restera-il très longtemps?

On pourrait croire qu'augmenter les effectifs humains allait régler le déficit. Pénurie d'informaticiens? Pas vraiment. Les bataillons d'informaticiens existent. Ils sortent des écoles, américaines, européennes, indiennes ou d'ailleurs, mais cela ne change pourtant pas la donne. Il reste des goulots d'étranglement qui empêchent de démultiplier à l'infini le nombre des forces de développement sans perte d'efficacité et sans progrès notables. Le manager des projets est souvent en proie à la crise de nerf, perdu dans le contrôle de l'ensemble, tout en s'efforçant, lui-même, de ne pas trop s'impliquer dans le codage. Cela, c'est en espérant que le cahier des charges est suffisamment précis et ne nécessite aucune révision ou réajustement en cours d'élaboration. Les différences de cultures apportent le dernier obstacle dans le cas d'équipes dispersées dans le monde.

Pour éviter ces genres de bévue, certaines entreprises, poussées vers la facilité, sont parties dans les délocalisations de leur exploitation dans des pays qui n'ont pas le même environnement ou, plus loin encore, se retrouvent dans les "nuages", dans le "cloud computing". Se déchargeant des risques de leur gestion interne sur d'autres. Miroir aux alouettes, que de pouvoir accéder de manière évolutive à de nombreux services en ligne sans avoir à gérer l'infrastructure. Le service bureau d'antan revient, alors, en background. Le principe pourrait, comme le dit  Richard Stalleman, se mettre à la merci d'une nébuleuse avec les risques de perte de know how et de l'option d'espionnage toujours possible. Piège possible, prévenait Stalleman en protégeant sa vision du libre. Même Apple ne jouerait pas franc jeu en tuant Internet dans l’œuf et en enfermant ses utilisateurs dans une prison dorée.

"Tim Berners-Lee, l’un des inventeurs du Web,  affirmait en novembre: «(Avec iTunes), vous n’êtes plus sur le Web. Ce monde est centralisé et entouré de barrières. Vous êtes emprisonné dans un magasin unique, plutôt que d’être sur un marché ouvert. Ce magasin a beau avoir des fonctionnalités merveilleuses, son évolution est limitée au bon vouloir d’une seule société». Mi-janvier, Jimmy Wales, fondateur de Wikipédia, renchérit, à propos du magasin d’applications d’Apple: «Quand vous possédez un appareil et que vous voulez acheter un logiciel, vous ne devriez pas devoir obtenir la permission de quelqu’un d’autre. Je pense que c’est très important. Les applications sont une menace à l’ouverture du système», affirmait-il.

Si l'informatique était un métier en soi, il est devenu plus un outil qu'une niche à part entière. Les objectifs demandés sont devenus plus spécifiques et pointus que ne pourraient jamais offrir ni les nuages ni les programmes vendus dans le commerce. Rester standard est un vœu pieu. Elle nécessite des compétences d'adaptation pour corriger les "usines à gaz".

Alors, le plus souvent, on "bogue", à tous niveau. Avant, pendant et après le projet, toujours à la recherche du produit miracle qui se mettrait en parallèle avec les fonctions, qui s'auto-construirait dans le respect de standards, qui s'auto-testerait avec efficacité avec un pont qui irait alternativement entre aller et retour vers chacune des phases.

Sans fantasmes, l'enfer de la vérification se cherche toujours, avec un salut dans la redondance.

Dès 1930, Alan Turing et Kurt Gödel avaient bien établi qu'aucune machine ne pouvait déterminer si sa compagne qui duplique la tâche, faisait des erreurs ou si c'était elle-même qui était en défaut. Une machine peut simplement dire qu'elle arrive à un résultat différent que son équivalente en laissant la bride sur coup à l'humain de choisir la meilleure version la plus adéquate. Certains pionniers, comme Patrick Cousot, ont fait un pas de recul dans l'abstraction pour englober les valeurs possibles en les modélisant théoriquement avec des outils de conception ou de simulation. Cette approche reste imparfaite  et non exhaustive.

Les failles de sécurité que laisse passer l'Explorer d'Internet, sont aussi une cause d'instabilité. Ces failles sont vite découvertes par les pirates modernes. Ceux-ci deviennent  des testeurs de l'impossible tout en étant des chevaux de Troie de la Toile entière. Il y a aussi les pirates qui s'ignorent. Quelque 25% des entreprises sont également considérées comme pirates en laissant leurs logiciels, sans licences officielles, s'introduire dans leur parc de programmes informatiques. Sans garantie d'utilisation, ces logiciels peuvent véroler la totalité du réseau. Parfois en connaissance de cause mais, aussi, par la seule ignorance lors d'un rachat ou d'une fusion d'entreprises. L'inventaire de ce parc est loin d'être une sinécure. 

En gros, le numérique fait bien partie des sciences exactes. L'analogique, des sciences humaines. "Le fossé se creuse entre le potentiel offert par le matériel informatique et notre maîtrise intellectuelle", dit Joseph Sifakis du CNRS.

La jointure entre les deux n'a pas compté sur les différences d'estimations et de subtilités qui existent entre un 0 et un 1, entre une porte ouverte ou fermée. L'analogique sait que celle-ci, peut être, s'entrouve dans son langage à lui. 

Le pourcentage d'erreurs entre analogique et numérique va trouver en chemin dépendra de la longueur de temps pour passer de l'un à l'autre.1.jpg

L’informatique, au départ, travaillait à la source, au cœur des systèmes. Des "boîtes" ont remplacé les codes conçus ensemble. Boîtes qu’il ne fallait plus ouvrir mais seulement paramétrer avant d'utiliser. Le métier s'est transformé d'autant et ressemble par sa philosophie et en oubliant le positionnement des codes, à un langage de paramétrage comme l'était le RPG (Report Program Generator) et qui existe encore en une version IV, totalement réactualisée.
Patcher, ajouter des corrections et cacher le sein des seins que l’on ne veut plus voir. Pour les erreurs d'intégrité des données, des programmes de "coups de seringues" ont été développés. Coups de seringues qui ne se préoccupaient plus des raisons et de la source des "bugs". Des antibiotiques de plus en plus lourds et qui ne répondaient plus qu'en partie aux problèmes structurels.

Les anciens informaticiens à la base des vieux « machins » ne sont plus là. Des spécialistes, des experts, ont été créés pour tel ou tel morceau du « gâteau » sans plus de vue généraliste sur l'ensemble.  Ces nouveaux sont prêts pour l’étape suivante, pour la relève, mais ne connaissent plus rien de la précédente.

Dans la semaine, le journal de France2 parlait des "techno-bambins". Les tablettes numériques, les smartphones attirent les plus jeunes vers les technologies. Une nouvelle génération d'intéressés arrive-t-elle? Ces "bambins" y ont trouvé le plaisir, les facilités à peindre l'écran avec les doigts qu'avec des crayons de couleurs sur du papier. L'informatique, ce n'est pas uniquement des couleurs. Rien ne sert de dessiner avec des doigts, il faudra toujours garder, quelque part, la logique de la machine et oublier celle de l'humain.

La révolution de l'informatique, il faut l'avouer, est encore en pleine jeunesse. Elle s'est installée dans le grand public en moins de 30 ans, même si des précurseurs existaient déjà dans les années 70. L'informatique cherche son chemin au travers de "bugs", de surprises dans une spirale infernale, peut-être, logique, mais qui, pour son grand malheur, n'a pas le temps d'assurer ses arrières.

L'histoire de l'informatique a été jalonnée de tellement de concurrences, de pragmatismes au point que l'informatique a été la "mal aimée". L'alerte lancée par le "Science et Vie" mériterait une attention particulière pour rationaliser les processus et ainsi réduire la fracture numérique de manière plus solidaire entre utilisateurs et fournisseurs.    

Putains de bugs...de logiciels... de temps... de logique!!!

Marie Paule Belle avait une chanson "Si la photo est bonne" qui m'a donné l'idée d'un pastiche plus spécifique à notre sujet:

Si la logique est bonne,
Plus d'instructions en colonnes,
Y a le programmeur du jour,
Qui a une petite fougue en retour,
Dans la rubrique "services",
C'est pas l'assassin de service,
Avec son code pas l'air méchant,
Qui a plutôt l'air intéressant,
Coupable ou non coupable,
S'il doit le mettre sur table,
Que j'aimerais qu'il ne tienne,
Un raisonnement de sa chienne,

Si la logique est bonne,
Elle est bien sûr pas conne,
N'a pas plus l'air de spaghettis,
Qu'avec des fils de bigoudis,
Ce coding de potence,
Pas sorti de l'enfance,
Va faire sa dernière chimère,
Pour n'avoir pas trouvé la paire,
Bref, des instructions malheureuses,
Qui faisaient des boucles trop généreuses,

Moi qui suis un ancien un peu chiant,
Avec une expérience d'autant,
De voir tomber des têtes,
A la fin, ça m'embête,
Et mon chef, le Président,
Qui m'aimait bien, qui surveillait tant,
Quand j'ai des idées qui puaient le rance,
Je ne tripotais pas avec la chance,

Si la logique est bonne,
Qu'on m'amène ce jeune homme,
Ce programmeur, qui sait tout dire,
Ce rêveur au doux sourire,
Ce grand gars aux codes tendres,
Qu'on n'a pas pu reprendre,
Je sens que je vais le séduire,
Sur un chemin pour réfléchir,
Pour l'avenir de la danse,
Contre ses folles espérances,
Que la théorie fasse le premier geste,
Que la raison fasse le reste,
Surtout qu'il soit solidaire,
Et pas tout à fait primaire,
A l'image de son charisme,
Qu'il rassemble les schismes,
Avec ses belles prétentions,
Pour lui accorder mon pardon,

Qu'on m'amène ce jeune homme,
Si la logique est bonne,

Si la logique est bonne,
Si sa logique est bonne...


 

L'enfoiré,

 

Citations:

  • "Le principe de l'évolution  est beaucoup plus rapide en informatique  que chez le bipède.", Jean Dion
  • "Informatique  : Alliance d'une science inexacte et d'une activité humaine faillible.", Luc Fayard
  • "L'informatique n'est qu'un outil, comme un pinceau ou un crayon.", Griffo
  • "Entre le bit, unité de mesure informatique, et les queues de sondage, le circuit imprimé est un peu sexiste.", Anonyme
 
0.jpgMise à jour 22 août 2013: Le NASDAQ a pété les plombs.
En cause, une pièce, le SIP (Security Information Processor) qui a lâché. Il gérait les transactions d'achats et de ventes pour consolider les cours.
La complexité et la connectique en cause.
50% de trading en semi-automatique.
Trop poussé sur l'accélérateur et l'online explose.
Précédent le 6 mai 2010, le crash éclair. 
 

Commentaires

Bravo Guy

Bel article

Écrit par : Victor | 13/02/2011

Bonjour Vic,
Sujet qui m'a passionné pendant près de 40 ans. Je me devais de le bichonner. ;-)

Écrit par : L'enfoiré | 13/02/2011

Les anciens informaticiens à la base des vieux « machins » ne sont plus là.

Mon cher Guy

Un beau et un mauvais souvenir. En 1999, j'ai eu la responsabilité au sein du gouvernement de veiller à promouvoir les correctifs sur le fameux Bug de l'An 2000. Vous souvenez-vous de cette hantise des vieux codes qui feraient sombrer la planète dans un chaos informatique infernal? Y2K Bug... Et pour se rappeler davantage cette époque très lointaine :

http://groups.google.com/group/net.bugs/browse_thread/thread/64696a1b035aab72

Ce fut un beau et un mauvais souvenir. J'ai parcouru le Québec dans le cadre d'une grande tournée d'information. Un beau souvenir. Je rencontrais le scepticisme et l'ironie des informaticiens vieille école. Un cauchemar.

Amicalement

Pierre R. Chantelois

Écrit par : Pierre R. Chantelois | 14/02/2011

Mon cher Pierre,

Voilà, un excellent commentaire et une expérience du même tonneau.
Cet épisode-là, je l'ai vécu de l'intérieur. Si vous avez pu vous payer un petit voyage au frais de la Princesse, de l'autre côté de la frontière client-fournisseur, je suis sûr que cela n'a pas été triste pour tout le monde, non plus.
J'ai assisté à des cessions, des tours de tables, des meetings sur le sujet, car il fallait inventorier tous l'équipement, leurs donner des "styles", les suspecter en fonction d'autres listes très mal torchées, parfois même pas triées car si l'équipement était inventorié sous ce vocable, 'style', la standardisation n'y était pas vraiment. Mais, je n'ai pas été impliqué dans autre chose que de regarder les programmes existants, en interne, en scrutateur averti pour y découvrir ce qui pouvait être susceptible d'être embarrassant pour la suite de leur fonction et de leur vie dans la sphère ou la bulle.
Car je rappelle, cela n'a pas évité la bulle de l'an 2000.
Mais, pour l'heure, le but essentiel de la manœuvre, il fallait surtout diffuser le message. Faire un peu peur à celui qui restait sceptique. Les affaires sont les affaires. Faut pas oublier cela quand on ne marche pas sur l'eau et qu'on ne multiplie pas les pain.
Oui, il y a eu du matériel qui devaient avoir une correction. Des programmes qui avaient un lien avec l'homme et sa durée de vie.
Il ne fallait pas que le petit pensionné revienne avec un biberon en bouche sans sa pension.
Mais alors, quel débauche de recherche, pour remarquer que l'ascenseur risquait de rater sa programmation, au 42ème étage, le jour du 1er janvier 2000.
Le cauchemar, dont vous parlez, aurait bien pu venir de là, du stress, bien avant la date fatidique.
Comme j'en ai parlé en détail dans mon histoire de l'informatique
http://vanrinsj.hautetfort.com/archive/2008/10/24/la-grand-gaufre-05.html
Amicalement

Écrit par : L'enfoiré | 14/02/2011

Paul Jorion donne une idée sur la question que Bert Lance soutenait: "If it ain't broke, don't fix it."
http://en.wikipedia.org/wiki/If_it_ain%27t_broke,_don%27t_fix_it#.22If_it_ain.27t_broke.2C_don.27t_fix_it..22
C'est exact, pendant un certain temps, pour les utilisateurs de bas niveau.
Pas pour les entreprises internationales qui se doivent d'être à la Une, être accessible par tous les points de la Terre et accéder à ces mêmes points.
Le principe de "Qui peut le plus, peut le moins" est toujours une vérité.

Écrit par : L'enfoiré | 15/02/2011

Très bon article sur « le code », il y en a beaucoup à dire sur le sujet.
Au niveau de la sécurité informatique nous ne faisons que nous en éloigner chaque jour un peu plus.
Le permis PC c’est pas pour demain pourtant c’est un « repenti » qui voudrai le rendre obligatoire.
La multiplication des gadgets communicants nous enfonce un peu plus dans la politique de l’autruche « business must go on ».
Le cloud computing est la violation de la vie privée complémentaire aux réseaux sociaux, bientôt le meilleur du pire est en vue, l’irresponsabilité et l’inconscience sont décidément voués à grandir encore.
Les besoins en bande passante vont grandissant alors que nous n’avons pas encore trouvé de solution valable, l’IP V6 dépassé avant d’être né.
Solution les opérateurs de téléphonie mobile 3G et compagnie ont décidé de faire payer la note à leurs utilisateurs, ho la jolie prise d’otage…
600€ le Blackberry il faut le rappeler ….
Ceci-dit je ne vais pas m’en plaindre, tous ces trucs me permettent de mettre du beurre dans mes épinards de façon exponentielle .
Alors vivent tous ces gadgets pour lesquels mieux ne vaut pas être manchot pour qu’ils soient « plug and play ».
C’est pas demain matin que mon téléphone arrêtera de sonner pour des dépannages « de toute urgence » dans lesquels on a l’impression de sauver des vies .
Heureusement que je ne suis pas croyant (à part en moi-même) sinon je me prendrai pour le messie...

Écrit par : Sun Tzu | 16/02/2011

Le cloud computing est la Chimène de Microsoft aux dernières nouvelles.
http://www.microsoft.com/france/virtualisation/cloud-computing/default.mspx
Microsoft voudrait rattraper le retard sur Google.
La société avait déjà eu un retard dans la compréhension de l'intérêt d'Internet.
A cette époque, c'était Bill Gates qui l'avait mal apprécié. Il l'a reconnu.
Avec Steve Balmer, c'est la Fuite en Egypte. On s'y accroche à tout, pour remonter des pentes.
http://geeko.lesoir.be/2011/02/11/nokia-signe-un-partenariat-avec-microsoft-pour-remonter-la-pente/
Il faudrait que Noël Godin pense repasser un jour avec ses tartes....
En attendant, comme tu dis, quand on fait partie du "commerce", cela donne des clients.

Écrit par : L'enfoiré | 16/02/2011

Tu écrit: "Cette génération L4G s'est avérée ensuite comme trop libertaire et encline qux excès chez des apprentis sorciers sans guide." et en plus tu dit qu'il y a trop de lignes de code.
Je dois dire qu'avec LINC un bon 4GL .... le nombre de lignes de code qui doit être maintenu par le programmeur est "nettement" plus petit. Par contre, le nombre de lignes de code généré est plus important ... Mais on conçoit difficilement qu'un être humain normal soit capable de maintenir et modifier ce nombre important de lignes de code généré.
En parlant des apprentis sorciers ... c'est un fait, le L4G fait croire au programmeur que c'est facile - bien au contraire, il faut bien maîtriser les code L4G sous peine de faire n'importe quoi. Par contre pour la cohérence d'une application la rapidité et l'aisance de modifications le L4G est incontournable, car la phase de génération s'occupe absolument de tout.

Écrit par : Raymond SCHMIT | 26/02/2011

Salut Raymond,
Content de te lire.
Si tu veux savoir qui était l'auteur de "c'est du spaghetti", tu sais où me trouver. :-)
Tu sais que j'ai été un fan de Mapper que je connaissais très bien. Version de l'époque, bien entendu.
Linc, je n'ai pas accroché avec autant de fougue. Mais, bon, tu sais d'où je venais et ceci explique peut-être cela.
Mais j'avais un staff de fans de Linc, donc pas de problème pour assumer.
Mapper comme tu le sais, au niveau interne, a été complètement effacé de la circulation pour passer à Oracle Financial.
Mapper a été mis dans quelques mains qui voyaient un avantage, mais qui n'y voyaient que la facilité sans les risques.
Des miss à jour intempestives de data bases, j'ai connu. Retreive and Co.
Avant la conversion vers Oracle, il a fallu comprendre ce que certains avaient "essayer" de programmer.
Et cela n'est JAMAIS facile.
La cohérence d'une application tient a beaucoup de choses: l'expérience et la logique.
La logique, je l'utilise encore maintenant dans la relation avec des personnes, dont ma moitié.
De là, vient parfois des conflits notoires. La logique informatique et l'humaine ne cohabitent pas facilement.
Si tu vas lire ma Grande Gaufre, tu auras un peu plus d'histoire sur le sujet.

Écrit par : L'enfoiré | 26/02/2011

Le film "Source code"
http://www.dailymotion.com/video/xfpdcz_bande-annonce-source-code-duncan-jones_shortfilms
entre bien dans l'esprit

Écrit par : L'enfoiré | 22/04/2011

Le NASDAQ a pété les plombs.
En cause, une pièce, le SIP (Security Information Processor) qui a lâché. Il gérait les transactions d'achats et de ventes pour consolider les cours.
La complexité et la connectique en cause.
50% de trading en semi-automatique.
Trop poussé sur l'accélérateur et l'online explose.
Précédent le 6 mai 2010, le crash éclair.

Écrit par : L'enfoiré | 26/08/2013

La loi de Moore arrive à son terme: comment va évoluer l'informatique désormais?

On compte près de 1,4 milliards de smartphones sur la planète, et les puces qu’ils intègrent sont conçues par la société ARM, en Angleterre, à Cambridge. Les puces ARM, une création de Stephen Furber, un professeur de calcul informatique de l’Université de Manchester en 1980, sont issues d’une approche simplifiée du calcul informatique.
Mais la puce ARM, comme toutes les autres puces informatiques, est condamnée en raison de l'épuisement de la plus célèbre des lois de l’informatique : la fameuse loi de Moore. En 1965, Gordon Moore, le fondateur d'Intel, avait écrit que le nombre de transistors sur une puce d'ordinateur doublerait tous les 18 mois (ce qui a été plus tard corrigé pour être porté à 2 ans), ce qui signifie que la puissance des ordinateurs doublerait en conséquence, et que leur coût s’effondrerait aussi rapidement.
Cette loi s’est vérifiée et elle décrit parfaitement l'incroyable évolution à laquelle nous avons assisté avec les ordinateurs sur les 50 dernières années, mais selon The Connectivist, les lois de la physique font que ce progrès n’est pas éternel. En effet, les transistors sont faits d’atomes. Pour pouvoir mettre des transistors supplémentaires sur une puce d'ordinateur, il faut créer un espace supplémentaire. Or, plus l’on réduit la taille des atomes pour pouvoir en mettre davantage sur une puce, plus l’on converge vers le point où l’on ne peut plus en ajouter davantage. Et même avant l’arrivée à ce point, l’efficacité des transistors les plus minuscules n’est plus aussi grande, et cette réduction de plus en plus difficile à obtenir devient de plus en plus coûteuse. Les innovations telles que les transistors 3D, qui ont permis de gagner en densité, et donc d’ajouter plus de transistors sur une puce, ne changent rien à ce fait.

Les scientifiques s’intéressent donc à des stratégies alternatives pour pouvoir développer l’intelligence des puces, et contrer la fin de la loi de Moore:
✔ L’une de ces stratégies est appelée «parallélisation»: elle consiste en une duplication d'une particularité du cerveau humain qui lui permet d’être multitâche, c'est-à-dire de plusieurs résoudre plusieurs problèmes simultanément en faisant intervenir plusieurs de ses parties.
Le professeur Furber travaille ainsi sur le projet SpiNNaker, une expérience en parallélisation informatique qui utilise un million de processeurs ARM pour recréer le fonctionnement neuronal. «Les progrès en architecture informatique ont été limités, dans une certaine mesure, parce que la loi de Moor s'appliquait toujours, et que l’on en tirait des progrès. Maintenant qu’elle commence à s’épuiser, il est temps pour les architectes informatiques et les ingénieurs logiciels de faire plus d’efforts », commente Furber.
✔ D'autres alternatives s’intéressent aux composants, et notamment au remplacement du silicium par des nanotubes de carbone, qui sont plus efficaces sur le plan énergétique.
✔ Un troisième champ d’étude concerne l'informatique quantique, qui offrirait une alternative au paradigme binaire de l’informatique. Actuellement, un bit ne peut prendre que la valeur 1 ou 0. Avec l’informatique quantique, chaque bit pourrait prendre un nombre potentiellement infini de valeurs, ce qui pourrait ouvrir la possibilité de réaliser plusieurs calculs simultanément.

Source: http://www.express.be/business/?action=view&cat=technology&item=la-loi-de-moore-arrive-a-son-terme-comment-va-evoluer-linformatique-desormais&language=fr&utm_source=newsletter&utm_medium=email&utm_campaign=

Écrit par : L'enfoiré | 01/11/2013

La drôle de guerre d'Alan Turing

http://www.rtbf.be/video/detail_la-drole-de-guerre-d-alan-turing?id=1930878

Écrit par : L'enfoiré | 31/05/2014

Un bug informatique pourrait rendre le Boeing 787 incontrôlable en vol

Recommandation d'effectuer "une maintenance renouvelée" des générateurs d’électricité, et de les désactiver régulièrement.
Sur le "Modèle 787" de Boeing, un risque de coupure générale d’électricité après maintien sous tension du système de générateur durant 248 jours. Le souci vient des unités de contrôle de générateur (GCU), qui se mettraient en panne simultanément.
Un avion très électrique
Pas drôle parce qu’en cas de panne électrique générale, plus rien ne fonctionne dans un aéronef, ni les moteurs, ni les commandes de vol, ni le conditionnement d’air, ni la pressurisation, rien. Et encore moins dans un B787, l’avion le plus "électrifié". D’où le risque - minime, mais quand même - que l’avion devienne incontrôlable en vol.
Sur un avion bimoteur comme le 787, il y a six générateurs d’électricité principaux, quatre recevant la puissance des réacteurs, deux autres faisant partie du groupe auxiliaire de puissance (Auxiliary Power Unit, APU), alimentés par une turbine à gaz se trouvant à l’arrière de l’avion, dans le cône de queue. L’APU fournit l’électricité nécessaire lorsque l’avion est au sol, et peut être utilisé en complément durant le vol.
Le travail de ces générateurs doit être contrôlé, notamment en terme de tension et de phasage, et coordonné. C’est le fait des unités de contrôle de générateur (Generator Control Unit, GCU), boîtiers numériques qui, d’une certaine manière, discutent entre eux pour adapter la production d’électricité à la demande.
Un besoin qui, sur le Dreamliner, est nettement plus important que sur les autres aéronefs en exploitation actuellement. A cause de sa grande consommation d’électricité, le B787 est équipé de batteries tellement puissantes qu’en janvier 2013, elles ont connu des départs de feu qui ont immobilisé l’avion au sol pendant trois mois.
Ce qu’anticipe ici la FAA est moins grave : au bout de 248 jours de fonctionnement sans interruption, un compteur interne fait basculer les générateurs dans un mode de fonctionnement altéré qui peut mener à la panne générale. Huit mois sans interrompre le fonctionnement des unités de contrôle de génératrice, donc huit mois sans couper le courant d’un avion, c’est énorme, mais pas tout à fait impensable, dans le cas d’appareils utilisés à un rythme de rotations infernal. D’autant que, paraît-il, après un arrêt total d’alimentation électrique, le 787 n’est pas facile à redémarrer…

Nouveau logiciel
On arguera qu’en cas de panne générale, il reste l’éolienne de secours qui se déploie pour suppléer aux besoins de pression hydraulique et d’électricité, les batteries embarquées assurant la transition. Mais tout de même, mieux vaut ne pas en arriver là. Boeing a annoncé un nouveau logiciel pour les unités de contrôle de générateur d’ici la fin de l’année et, entre-temps, les compagnies aériennes suivent les instructions du régulateur américain de l’aéronautique. Mais c’est un nouveau petit souci dont le beau Dreamliner se serait bien passé.

http://www.lalibre.be/economie/actualite/un-bug-informatique-pourrait-rendre-le-boeing-787-incontrolable-en-vol-554911603570fde9b3150fb9

Écrit par : L'enfoiré | 06/05/2015

Les commentaires sont fermés.