« Il y a existe trois sortes d’informaticiens : ceux qui en on juste fait leur métier, les passionnés, et les autres... »

Bonjour, je m'appelle Pierre Dezon , et suis le concepteur de la solution xWidglets, le client java riche RDA et RIA, et de son AGL visuel xWidglets studio.

Depuis plus de 15 ans, j’exerce des activités d’expertise en R&D, de consultant en architecture applicative et technique , et suis actuellement responsable en architectures technique dans le milieu bancaire.

Mes activités de R&D ont toujours été orientées vers des concepts liés aux  IHM et aux  interfaçes graphiques, plus particulièrement,  Internet et les outils de développements ont été pour moi une source constante de recherche et de curiosité.

L'approche sociale du web 2.0  qui prédomine actuellement apportera certainement également son lot de nouveautés et notamment sur la standardisation de la communication au travers d'API ou d'architecture standardisées (SaaS, PaaS.  Néanmoins, je pense que l'on peut toujours proposer de nouvelles techniques, de nouveaux outils et pourquoi pas de nouvelles façons de voir les choses...
En préambule, je souhaites dire que les lignes qui suivent sont moins destinées à décrire mon parcours professionnel que d'expliquer la cohérence de mes activités de R&D en conception et développement de solutions IHM et d’IDE à haute valeur ajoutée. et bien entendu, ce qui a motivé l'ouverture de ce site et ce qu'il contient au plus grand nombre.

Toutefois, pour  avoir une bonne compréhension de ces motivations, je me devais de faire un bref historique des idées, développements et innovations, qui ont parsemées mon parcours d'informaticien. En outre, n'étant pas journaliste ou écrivain professionnel, il se peut que ce document ne soit pas parfait, j'espère quand même que vous le lirez avec plaisir.

Je pense avoir toujours fait de l'informatique, en effet, mes deux parents étant informaticiens à la fin des années soixante, vous savez, l'informatique avec des cartes et des rubans perforés;  J'ai donc commencé à faire mes premier programmes en dessinant sur des listings de 1403 IBM (les spécialistes en archéologie informatiques s'y retrouverons)

Au début

Mon premier ordinateur fut un TI 99 4A de Texas Instrument, puis un Apple 2e, un 2c  et finalement un IBM PC (le meilleur cracker de programmes était alors LockSmith 5.0) et déjà on développait en assembleur pour comprendre comment étaient conçus les jeux (il doit y avoir prescription maintenant ;-).

Au cours de ma carrière d'informaticien,  j'ai réalisé de nombreux programmes dans de nombreux langages  mais j'ai toujours essayé d'innover, créer de nouvelles techniques ou de nouveaux usages spécifiques pour tel ou tel outil.

A ce titre, et aux début des années 90 avec l'aide d'un ami d'origine chinoise, nous avions créé un IDE nommé IDKEDIT et développé en langage C. Ce programme offrait quelques fonctionnalités intéressantes telles que : 

  • un interfaçage graphique avec le compilateur C6, C7 de Microsoft,;
  • un multi-fenêtrage MDI,;
  • un éditeur de texte évolué.
  • ...

C'est entre 1993 et 1996 que nous avons décidé de lancer IDKEDIT après plus de deux années de travail. Il était  fin prêt à être publié, mais... sombra rapidement dans le néant suite à la sortie officielle de Mictrosoft  Visual C 1.0. J'en garde encore aujourd'hui quelques aigreurs d'estomac.

Les  années 90 était l'époque faste pour les interfaces graphique et lu client serveur avec Windows 3.1, 3.11, puis 95 . C'était la grande période ou NSDK  de Nat Système prenait une bonne part du marché des entreprises (certaines d'entre elles utilisent encore actuellement ce produit).  Cela  m'a permis de créer quelques applications client serveur comportant des textes avec des mots clés qui provoquais lors d'un clic de souris l'ouverture d'une fenêtre et déjà je faisais de la vidéo dans ces applications.


C'est également à cette époque  que j'ai pu tester les premières cartes Real Magic qui affichaient de la vidéo au format mpeg1 en plein écran.

Cette possibilité m'a donné par la suite quelques idée sur la façon de créer de nouveaux types d'hyperliens (mais cela est une autre histoire).

Internet, les outils

Je voudrais souligner que Internet, du moins en France,  était encore confidentiel. Celui-ci n'était pas encore ce que nous en connaissons aujourd'hui et c'était la grande époque du minitel et autres BBS accessibles via des modems 2600 bauds et des factures téléphoniques gigantesques.

Toutefois, une rumeur persistante circulait sur les serveurs BBS et dans la presse spécialisée qui indiquait qu'un  nouveau type de communication existait et qu'un programme nommé navigateur permettait de faire bien mieux que France Télécom avec le Minitel  haut débit ;-))

Ce fut pour moi la découverte de Mosaic, plus tard de NetScape, des réseaux IP et du village global. Avec cette découverte, la première idée qui me vint à l'esprit, fut d'adapter pour le web ce que j'avais déjà réalisé en client serveur. 

En outre,une constatation s'imposait,  Il n'existait pas d'éditeur Web graphique de développement des applications web comme cela existait depuis longtemps avec les IDE client serveur. 

L'idée  qui s'imposa à moi fut donc de récupérer le développement de IDKEDIT et d'en faire un éditeur HTML nommé IDKWEB. Ce qui fut fait  dans les années 1995,1996. Malheureusement, d'autres que moi avaient eu cette idée et rapidement l'ère des éditeurs web graphiques fit également tomber ce produit dans l'oubli. 

Néanmoins, pour les passionnés du langage C, cet IDE est toujours utilisable  et vous pouvez télécharger les fichiers sources et  binaires de ce programme à cet endroit 


Une petite image du produit

Malgré ces épisodes malheureux de créateurs de logiciels ma curiosité ne semblait pas satisfaite et je cherchais désespérément savoir comment était développé un navigateur web (allez savoir si une version graphique de IDKWEB ne pouvais pas être réalisée ;-).

Je me suis donc décidé à créer un navigateur développé en C. Ce logiciel était basé sur les travaux de l'Academic Computing Services de l'Université du Kansas et a été développé à l'origine par Lou Montulli, Michael Grobe et Charles Rezac. Par la suite, Garret Blythe a créé DosLynk avant de travailler lui aussi sur Lynx. Un exemple graphique fourni par une boite américaine dont j'ai aujourd'hui oublié le nom m'a également permis de comprendre les arcannes des navigateurs web. Ce navigateur nommé Internet BlackBird (j'ai encore les sources à disposition qui tournent encore sur XP ;-)) intégrait une nouvelle particularité qui était l'intégration de DLL graphique dans les pages HTML de l'époque (bon sang de bois pourquoi n'ai je pas déposé le brevet à l'époque...). 

Logo Internet BlackBird
logo internet Blackbird


La sortie de Netscape fut également  terrifiante pour ce produit mort né qui me permit néanmoins de comprendre les internes d'un navigateur web et les "joies" du parsing HTML mal formé.

Je dois dire que suite à ces différents échecs (mais est-ce vraiment des échecs), une pause dans ma créativité s'est imposée. Néanmoins, une question s'imposait d'elle même : que faire de nouveau sans être rattrapé par le marketing et la force de frappe des sociétés anglo saxonne ?

Après quelque temps de réflexion, d'intenses cogitations et l'arrivée de java 1.0 je décidais d'accompagner les développements des grands éditeurs et de combler les manques de leurs produits.

Vint alors pour moi la création d'un petit outil de création dynamique de pages HTML, né du besoin des sociétés issues de la bulle internet et des first tuesday de l'époque.

Le CMS (Contents Management System)  était de mise et la bulle internet battait son plein.  En m'appuyant sur mes différentes expériences précédentes, je me mis en tête de créer un petit traitement de texte en java  1.0. 

Répondant au doux nom de NETWORD, Cet outil (en fait un applet dont la taille était approximativement  de 90 ko) permettait la création de portions de pages HTML en WYSIWYG.  En outre, l'utilisateur pouvait insérer de nouvelles balises spécifiques, ce qui permettait à un programme de remplacer ces balises par des données en provenance d'une base de données (une fusion documentaire en quelque sorte) .  Le flux généré en sortie par cet outil pouvait être, au choix,  du HTML ou du XHTML ce qui était pour l'époque bien perçu. 

Enfin et pour une fois, j'avais réussi à le vendre dans une dizaine de pays dont une boite de la silicon vallée  (quel bonheur pour un "frenchies" tout seul dans sa cuisine de recevoir un chèque de la bank of california ;-))

Ce produit en avance sur son époque (writely n'existera que bien plus tard non ? ;-) comportait quelques manques notamment concernant la gestion des formulaires. En effet,  le langage HTML ne pouvait contenir qu'un seul formulaire par page et  pas de possibilité de croisement  des données dans une page (xForms était bien loin à l'époque),...

La possibilité de faire évoluer le langage HTML ne pouvant être envisagée, et une seule conclusion s'imposait : il fallait inventer un nouveau type de navigateur

Le client riche XML

Nous sommes en 1999 et c'est la genèse du concept xWidglets.  A cette époque je faisais vivre ma famille avec les études d'impacts de l'an 2000 pour les grandes banques françaises qui frémissaient à l'idée du grand bug fatal. 

Après avoir compulsé des tonnes de documentations et navigué des nuits sur internet, je suis tombé sur un document confidentiel daté de 1997 qui indiquait qu'une société californienne nommé Harmonia  envisageait la conception une solution à base de XML  pour créer des applications. 

Cette vision et mon besoin en terme de formulaire ont finies par me faire prendre conscience qu'il fallait proposer une nouvelle solution de navigateur internet à base de XML.

L'idée de base était de fabriquer un navigateur mais également l'outil de création des pages XML. Naturellement,
Pour le navigateur j'avais déjà acquis de l'expérience et pour la partie IDE j'avais réalisé NETWORD. Il me manquait cependant quelques informations notamment dans la manipulation des objets de type contrôles graphiques. C'est à cet instant que en discutant avec un collègue (grand merci à  Marc D qui se reconnaitra surement), Marc développa une classe java permettant la manipulation de rectangles (box) avec une gestion de "handles" avec la souris. C'est cette classe qui me permit le développement de l'IDE Secretgate devenu xWidglets aujourd'hui.

Fort de cette connaissance, je me mis à l'ouvrage afin de créer un interpréteur de XML (je savais déjà comment réaliser un parser et le DOCUMENT CENTRIC ne me semblais pas complètement satisfaisant pour afficher sur un bureau une fenêtre de type classique (WINDOW, DIALOG BOXet MDI WINDOW).

Naturellement, le tout devait fonctionner comme un navigateur mais avec des pages XML et un langage de  type Javascript (au début tout du moins). La conception de la solution me prit plusieurs mois puis je lançais le développement.

La première version de xWidglets n'était pas fameuse et ne portait pas encore le nom de xwidglets mais de secretgate en voici un screenshot :

secretagte screenshot

 Cette première version qui, bien que me semblant imparfaite, permettait de faire un certain nombre d'opération c'est à dire afficher une fenêtre XML avec des contrôles entryfields, boutons,...

J'avais réalisé ce qu'avait envisagé Harmonia et j'avais amélioré le processus par l'accessibilité du fichier XML de base situé sur un site web comme une ressource de type image.

Depuis ce jour et jusqu'à aujourd'hui, je n'ai cessé de travailler sur la conception et la mise au point de ce produit ce qui à nécessité plusieurs années de travail. 

Je ferais certainement (quand j'en aurais le temps ;-) un descriptif des différentes étapes qui ont motivées certaines directions prises dans la conception ou le développement de cet outil. Néanmoins au vu de ce que proposent aujourd'hui les grands éditeurs je crois aujourd'hui que lors de l'idée de départ je n'étais pas en reste sur les idées ou l'innovation.

Aujourd'hui, Le produit est stable et Il est temps de mettre à disposition auprès de la communauté open source la totalité des sources et des binaires de ce que j'ai créé pendant de nombreuses années. 

J'espère de tout coeur que cela permettra une adoption de celui-ci aussi bien par des contributeurs que par des développeurs.  Dans tous les cas, cela permettra à ce logiciel de continuer d'évoluer de progresser et ainsi de proposer une nouvelle façon de réaliser des applications pour le net.

Si vous êtes intéressé par cette aventure, téléchargez  xWidglets 1.9 et  inscrivez vous comme contributeur, nous en avons grandement besoin.