Ecoinstallation : Rester pragmatique

S'il est une chose que l'on apprend vite en créant une entreprise quelle que soit sa taille, c'est le pragmatisme.

Non peu fier de pouvoir proposer une plateforme complète développées à l'aide des toutes dernières technologies web basées sur Java (Jboss SEAM, Hibernate Search et quelques tests d'intégration de Adobe Flex). Nous nous sommes rendus compte qu'une telle machinerie aurait requis un investissement trop important en termes de fiabilisation et de maintenance. Investissement que nous avons décidé de reporter sur les pôles commerciaux et marketing, plus stratégiques à l'heure actuelle.

Nous avons donc décidé de changer la technologie support d'Ecoinstallation.com vers php, nous offrant ainsi une plus grande flexibilité et des charges de fiabilisation et de maintenance beaucoup moins importantes.

Cependant, les développements java effectués jusqu'ici nous ont permis de monter un "laboratoire grandeur nature" des nouvelles technologies. Cet investissement de 9 mois de travail nous a donné une expérience significative dans la mise en place de concepts innovants ainsi que dans l'approfondissement de nos méthodes de développement et de collaboration.

Nous n'attendons plus que 2 choses :

  • Que Ecoinstallation.com soit en ligne dans sa version finale (prévue pour Janvier 2009)
  • De pouvoir faire profiter nos clients de cette expérience acquise dans des outils à fort potentiel et qui, n'ayons pas peur des mots, ne sont encore maîtrisés que par peu de personnes.

Ecoinstallation : nouveau desing, nouvelles fonctions

Après avoir travaillé pendant 9 mois sur ce moteur de recherche, nous en sommes au fignolage et notamment au desing. La charte est signée G-Nova.

Comme quoi, il n'y a pas que flash qui peut faire du beau. Dans le monde des applications web JEE, les templates Facelet sont très puissants et simples à utiliser.

Je n'y ai trouvé qu'un petit bémol : les chemins relatifs prennent comme dossier de départ, le dossier de la page, ce qui oblige à les passer en absolu pour n'utiliser qu'un fichier CSS par exemple. Jusque là pas de problème, juste un .properties à implémenter. Mais ça se complique quand SSL s'en mèle...

 

 

Hibernate Search : Un moteur de recherche orienté objet.

Comment effectuer simplement et rapidement des recherches naturelles dans une base de données ?

Nous avons généralement une vision assez restrictive des moteurs de recherche. "Ca sert à trouver des documents ou des pages web". Cependant, l'augmentation du volume de données n'est pas que dans les fichiers et sur le web, les bases de données aussi sont soumises à ce phénomène. "En pleine expansion, le volume de données numériques pourrait atteindre 988 exaoctets en 2010" (VNUnet.fr).

Qu'en est-il de la recherche naturelle (à la mode Google) à l'intérieur de ces données ? Hier la meilleure ( = compromis entresimplicité et efficacité) solution restait Apache Lucene pour les fichiers et SQL pour les bases de données. Aujourd'hui, nous avons le droit à la fusion des deux : Hibernate Search.

Hibernate Apache Lucene

 

Pour faire simple : Hibernate Search va vous permettre d'indexer les données de votre base.

  • Ce sont les Objets qui sont indexés, autrement dit : les groupes de données qui représentent quelque chose de concrêt dans votre métier.
  • Il est possible de choisir les champs d'indexation
  • Si vous connaissez Hibernate, vous savez qu'il est possible de récupérer un objet persistant à l'intérieur d'un autre en une seule requête (plus de détails ici). Hibernate search vous permet de retrouver un objet A à l'aide des données d'un objet B quand B est mappé par une association dans A.
  • L'indexation est automatique : vous enregistrez un objet, l'index est mis à jour, même chose pour les updates et les suppressions.

Nous avons mis en place cette technologie sur Ecoinstallation.com. Les gains en performances et en simplicité du code on étés immédiats. Nous vous parlerons plus tard de l'intégration d'Hibernate Search avec Jboss SEAM au travers d'un tutoriel.