dBase, le come back
Etrange " startup " que celle de François Ghoche. Moins de quatre mois d'existence, un logiciel à peine sorti des compilateurs, et pourtant une maturité dinosaurienne, antédiluvienne. dBase France est la résurgence d'un gestionnaire de base de données et d'un langage de programmation que l'on croyait mort et enterré depuis la disparition d'Ashton Tate.
dBase est, indiscutablement, le plus vieil outil de manipulation de données sur micro. Son géniteur, Wayne Ratliff, l'avait initialement " inventé " sur les machines du JPL (Jet Propultion Laboratory) et porté sur le premier micro de l'époque, l'Altair. Peu de temps plus tard, Jeb Long transposait le code en C et ce qui était, à l'origine, un logiciel de gestion des résultats du " Superbowl " devenait une base de donnée pour machine Osborne : La " bidouille " baptisée Vulcan prenait alors le nom de dBase II.
De ce noyau devait naître la société Ashton Tate ainsi qu'une multitude de francs-tireurs portant le nom de Foxbase/Foxpro, Clipper de Nantucket, db2C, db3C, Quicksilver, Arago, WinJTbase, et s'illustrer des génies du langage tels Tom Rettig ou Michael Gardner. Combattons au passage 2 mythes qui ont la vie dure : Il n'y a jamais eu de dBase I, pas plus que de " monsieur Ashton ". Tate, lui, était bel et bien réel, tout comme le marché des bases de données d'entreprise estimé, il y a encore 6 ans, aux environs des 400 millions de dollars.
Après un dépôt de bilan, une reprise par Borland, un lent pourrissement du marché laminé par les SGBD client/serveur du calibre d'Oracle et de SQL Server, plus rien ne semblait pouvoir faire revivre ce qui avait été non seulement un outil de gestion d'informations, mais également un langage de programmation aussi utilisé à l'époque que Visual Basic de nos jours.
Et pourtant, avec la mode Internet, l'explosion des petits sites marchands, la demande croissante d'outils de gestion " en ligne ", il restait une place pour le langage Xbase. Après un sérieux toilettage, le dBase Windows (l'ancien Cayenne de Borland) est relancé sous l'appellation dBase 5.7, une version " débuguée " du très passable dBase V. Mais le véritable successeur, le repreneur du flambeau JPLDis, c'est dB2K, la boîte à outil, compilateur et générateur de formes et d'états repris par l'équipe de Katz.
Open fichier, Set index On
Ce qu'est dB2K ? Le même vieux langage. Certes, les fonctions actuellement offertes sont considérablement plus puissantes qu'à l'époque, plus adaptées à l'environnement Windows et HTML. Mais les nostalgiques du code et les Paganini du " set relation to " peuvent encore plonger dans le source, affiché en temps réel dès que l'on appelle un objet ou que l'on crée une interface. DB2K offre toujours une approche linéaire du code et n'exige pas, à l'instar des plateformes modernes, l'ouverture d'une multitude de fenêtres pour accéder aux différentes procédures. A cette apparente simplicité, il faut ajouter une certaine universalité des styles et des genres. Rien n'interdit en effet de lancer une requête SQL ou XML depuis le programme rédigé, ou d'ouvrir les fichiers de produits concurrents pour y créer des relations : d'Oracle à Foxpro, en passant par Access, Excel, Informix, SQL Server...Bon, d'accord, les " perfs " ne sont pas franchement les mêmes qu'avec les DBF d'origine, mais l'utilisation d'un " moteur de jointure " évite bien souvent la multiplication de couches " middleware ", autrement plus longues et parfois plus difficiles à mettre en application. Enfin, ce qui ne gâche rien, le logiciel est vendu sous forme d'abonnement annuel -année durant laquelle les mises à jours sont systématiquement expédiées à l'usager- et la génération d'exécutables indépendants n'est soumise au payement d'aucune licence. En outre, les " visual tools " accompagnant le compilateur sont diffusés selon le mode Open Source
Pour qui sonne dBase ?
Reste à savoir à qui s'adresse cet ancêtre de la programmation, et à quoi il peut bien servir. Indiscutablement, à tous les utilisateurs de dBase IV qui n'ont pas souhaité migrer... ou du moins ceux qui subsistent et n'ont pas subi les foudres du " bug de 2001 ". Aux usagers de Clipper également, qui persistent très souvent à utiliser des programmes " mode caractère " pour la simple et unique raison qu'ils fonctionnent... argument stupide aux yeux des vendeurs de programmes, mais préoccupation certaine pour certains diffuseurs de systèmes. Les irréductibles du " code clipper " en mode caractère sont des centaines à tenter de conserver par tous les moyens leurs applications " maison ".Il suffit, pour s'en convaincre, de se plonger dans les " best practices " et autres trucs et astuces de Microsoft -chapitre Terminal Server - et de Citrix -paramétrage de Metaframe- pour s'apercevoir que certains paramètres sont exclusivement destinés à ce genre d'aficionados.
A cette " vieille garde " du langage Xbase, devrait s'ajouter la relève des petits Webmestres ne souhaitant pas mettre les doigts dans l'engrenage d'un MySQL ou d'un SQL Server, ou refusant la complexité verbeuse d'un Access et de ses extensions VBA. Tout comme sous Foxpro, dB2K conserve la fenêtre en " mode commande " affichant le source généré par les générateurs de forme ou de rapport. Le source demeure linéaire, simple, compréhensible d'un seul coup d'oeil, souple comme tout langage à objet. Parfait ? Certainement pas. Il manque encore pas mal de " petits trucs " simplifiant l'usage de l'espace de travail. Un dictionnaire des objets directement et automatiquement accessible depuis l'éditeur -une religion que Microsoft pratique depuis bien des années-, une prise en compte des requêtes et transactions Ldap -la moindre des choses à l'heure des annuaires universels-, et des écrans HTML ou " normaux " un peu plus sexy que ceux fournis par l'actuelle version dans le cadre des " one clic operations ".