AlcionTech

Aller au contenu | Aller au menu | Aller à la recherche

vendredi 19 mars 2010

Openbar Alciontech sur la "Java Software Factory" le jeudi 25 mars 2010

Lors de cet conférence technique sera présentée la plateforme de développement Java utilisée en interne sur les projets au forfait.

Cette plate-forme est composée d'un ensemble cohérent d'outils Open Source, fonctionnant ensemble pour couvrir l'ensemble des besoins du cycle de vie d'un projet :

  • SVN (gestion de configuration)
  • Eclipse (environnement de développement)
  • Maven2 (gestionnaire de build)
  • Nexus (repository Maven)
  • Hudson (serveur d'intégration continue)
  • Sonar (serveur de reporting sur la qualité des développements)
  • Mantis (traçabilité du suivi des anomalies et des demandes d'évolution)


Très tôt préoccupés de la qualité des applications orientées objet, les experts d’Alcion Group ont mis en œuvre dès 1998 la toute nouvelle modélisation UML ainsi que les Patterns d'analyse et de conception. Ils sont aujourd'hui persuadés de l'intérêt de fusionner les Méthodes Agiles et la modélisation avancée. Impliqués dans les problématiques de productivité des développements, ils se font les promoteurs de techniques avancées de génie logiciel, génération de code, automatisation de la persistance. Passionnés de technologies, convaincus qu'un processus de développement logiciel moderne est nécessairement outillé, les consultants d’Alcion Group conseillent et assistent leurs clients dans la mise en œuvre de leur "Usine Logicielle Agile".

lundi 30 mars 2009

Alcion Group développe des composants pour Talend Open Studio

Il y a maintenant un peu plus de trois mois, des ingénieurs d'Alcion Group ont suivi une formation "Talend Foundation" sur l'ETL Open Source Talend Open Studio. Ils proposeront bientôt dans le cadre d'un Alcion Bar une conférence interne pour présenter ce produit intéressant.

Mais en attendant cette soirée, ils ont mis cette formation à profit en développant de nouveaux composants pour cet ETL, afin de mieux gérer les bases de données Informix (qui sont utilisées sur un des projets au forfait actuellement développés).

Alcion Group ayant décidé de jouer le jeu de l'Open Source, ces composants ont été cédés à la communauté :

  • tInformixConnection, permettant d'initialiser une connexion à une base de données Informix ;
  • tInformixCommit, permettant de faire un "commit" des opérations effectuées sur une connexion ;
  • tInformixRollback, permettant de faire un "rollback" des opérations effectuées sur une connexion ;
  • tInformixInput, évolution du composant original permettant de récupérer des données à partir d'une connexion existante ;
  • tInformixOutput, évolution du composant original permettant d'insérer des données dans une table en utilisant une connexion existante ;
  • tInformixRow, évolution du composant original permettant d'exécuter une requête SQL quelconque en utilisant une connexion existante ;
  • tInformixSP, qui permet d'exécuter des procédures stockées et fonctions d'une base de données Informix ;

lundi 9 mars 2009

Acualité : Google Apps - Quotero

Je reprends ici deux billets d'actualité publiés sur mon blog personnel :

  • le premier, qui a fait suite à l'indisponibilité des mails Google de ce 24 février. Ce billet fait suite à celui posté ici même, qui ventait les mérites des "Google Apps" : malgré la récente indisponibilité des mails et la "mini-crise virtuelle" qui a suivi, je persiste à croire que Google offre des solutions tout à fait viables pour les PME (mails, calendriers, etc.), avec de nouvelles fonctionnalités qui vont dans ce sens (Google pour mobiles, consultation et rédaction de mails hors-ligne, etc.).
  • le deuxième est un résumé de la conférence de lancement de Quotero 1.0 (à laquelle j'ai assisté), une GED Open Source.

mardi 3 février 2009

La plate-forme décisionnelle open Source "Spago BI" passe en version 2.0

A l'occasion de la sortie de Spago BI 2.0 (une solution de Business Intelligence open Source), une conférence a eu lieu dans les locaux de la Cantine.

J'ai assisté à cette conférence, et en voici un petit compte-rendu :

Lire la suite...

mercredi 16 juillet 2008

Revue de presse estivale du monde java

En juin et en juillet, de nombreux projets liés à java ont bien évolué. Voilà un petit résumé de ces évolutions (outre la sortie de la nouvelle version d'Eclipse Ganymède à laquelle un billet complet a été dédié):

Par ailleurs, Sun a publié un compte-rendu des différentes présentations techniques qui y ont été faites lors de JavaOne session 2008.

jeudi 26 juin 2008

Sortie de Eclipse Ganymede

Il y a un mois, nous avions annoncé la sortie de la première release candidate de la nouvelle version d'Eclipse, et les nouveautés qu'elle apportait.

Hier, c'est la version finale de cette nouvelle version (Eclipse 3.4 "Ganymede") qui est parue. Et avec elle, un certain nombre de fonctionnalités supplémentaires par rapport à la release candidate et à la version précédente.

Lire la suite...

lundi 23 juin 2008

Vérifier automatiquement la qualité d'un code java

Il existe de nombreuses règles de "bonnes pratiques" en programmation objet, dont certaines sont spécifiques au langage java. Il existe des formations et des ouvrages entiers consacrés à ce sujet: je n'ai donc absolument pas la prétention d'en faire la liste ici. En revanche, j'aimerais attirer l'attention sur le fait qu'il existe maintenant des outils faciles à mettre en oeuvre, et permettant de vérifier automatiquement un certain nombre de ces règles de "bonnes pratiques". Ils permettent d'améliorer significativement la qualité du code, pour un faible coup (à condition qu'ils soient déployés le plus tôt possible dans le processus de développement).

Lire la suite...

mercredi 28 mai 2008

Eclipse Ganymede est passé en RC1

La nouvelle version de Eclipse (Ganymede) vient de passer la cap de la "Release Candidate". Il est encore un peu tôt pour l'utiliser en environnement professionnel, mais cette version se montre déjà prometteuse.

Du point de vue de l'interface, il y aura moins d'évolution majeures que n'en a connu la version "Europa" actuelle, mais on peut tout de même relever quelques points que les développeurs apprécieront:

  • le "quickfix" proposant de corriger automatiquement les erreurs de code apparaît maintenant au survol des erreurs: il n'est plus nécessaire d'aller jusque dans la barre latérale de l'éditeur
  • une navigation en "fil d'Ariane" permet de revenir bien plus facilement à la classe sur laquelle on travaillait lorsqu'on se déplace en suivant des objets ou des méthodes
  • la gestion des plugins installés et disponibles, qui a été complètement revue et qui est maintenant beaucoup plus intuitive
  • le temps de chargement de l'espace de travail, qui a été nettement réduit (divisé par 2 à 3)

Mais la grosse nouveauté de cette version réside à mon avis dans les deux nouvelles distributions disponibles, qui vont certainement être très prisées:

  • une distribution "Java J2EE" spécialisée dans les applications de reporting, incluant des outils de développement pour BIRT
  • une distribution "Architectes", incluant des outils de modélisation (UML, etc.)

Enfin, j'ai pu remarquer que la vitesse de compilation des gros projets a été augmentée par une meilleure gestion des processeurs à plusieurs cœurs.

Pour télécharger une de ces distributions de Ganymede, c'est par ici: http://www.eclipse.org/downloads/packages/

mercredi 5 décembre 2007

Slides de l'open bar GWT (Google Web Toolkit)

Disponibles au téléchargement ci-dessous (lien "une annexe").
dilbertFlashJS.gif

lundi 19 novembre 2007

OpenBar Alciontech le 29 novembre : le client riche en Java, c'est facile avec GWT et JavaFX

ajax.jpgCe mois-ci, une conférence pleine de bonnes nouvelles : on peut développer des écrans portables et sexy en Java, sans avoir besoin de connaître Javascript !

En introduction, un coup de projecteur sur JavaFX, sur le thème de "comment faire du flash, en java".

En plat principal, GWT, un framework qui a le potentiel de changer la donne. Il permet de réaliser des applications Ajax portables, en Java. Ses caractéristiques principales sont :

  • il est open-source ;
  • il n'impose pas d'apprendre javascript pour faire de l'ajax,
  • il absorbe les nuances de navigateurs,
  • il gère automatiquement des concepts de haut niveau comme la sérialisation, les appels RPC, et la traduction de code java->javascript pour exécution des traitements locaux au navigateur, ce qui est une petite prouesse.

Après 6 mois sur le terrain, il commence à être adopté par certains de nos clients.

Thierry a travaillé quelques semaines sur GWT. Il vous en expliquera les concepts, les principes de développement et vous fera une démo couvrant le design d'écrans, le remoting et l'exécution de code au sein du navigateur.


Que vient faire ici ce barbu frisé ? C'est Ajax le Grand, héros de la guerre de Troie... ;-)

lundi 12 novembre 2007

Brèves développement Java/J2EE

i-can-lift-40-pounds.jpgAujourd'hui je peux :

jeudi 4 octobre 2007

Java : outils

Ce matin, Florent m'a confié trois secrets d'un air de conspirateur :

  • Non, OSCache (d'Open Symphony) n'est pas un cache transactionnel distribué ; par contre, TerraCotta est extraordinairement prometteur ;
  • JXInsight est l'outil d'analyse de code java en fonctionnement (threads, mémoire, temps d'exécution) qui surpasse tous les autres en ce qu'il permet de débusquer rapidement les anomalies de fonctionnement ;
  • SonarJ,, outil de rétro-ingénierie du code et de l'architecture d'une application, par exemple dans un contexte d'audit.

Merci Florent !

lundi 27 août 2007

Le Project Object Model de Maven en pratique

logo_built_by_maven.png Le POM est au coeur de la statégie de build proposée par Apache Maven. Il permet de gérer simplement à partir d'un fichier XML une grande partie de la problématique de récupération des sources, de la gestion des dépendances, de la compilation, du déploiement et de la génération de rapports (comme ici et ici sur le projet NAG).

Ce billet n'a pas vocation a expliquer le POM, puisque de très bons articles techniques le font déja ici et ici.Par ailleurs une étude directe du schéma n'est pas dénuée d'intérêt non plus.

Ce qui peut paraitre manquant c'est un document opérationnel synthétisant toutes ses connaissances dispersées. c'est à ce titre que la DT vous propose en annexe un template de POM qui vous facilitera la mise en application de Maven sur vos projets Java.

PS: Maven fait partie de la PFIC Java/J2EE d'AlcionGroup.
PS2: Apache Continuum exploite les infos contenues dans le POM pour intégrer en continu.

vendredi 17 août 2007

Une plate-forme d'intégration continue J2EE sous Win32

Pour célébrer la rentrée et vous aidez à mettre en pratique les bons principes du génie logiciel, la DT met à votre disposition une Plate-Forme d'Intégration Continue pour J2EE sous Windows. Elle est immédiatement opérationnelle, et de plus, portable, dans le sens où elle peut être mise sur une clef USB. PFIC.png Cette PFIC est exclusivement construite par l'intégration d'outils opensource: Eclipse pour l'IDE, Subversion pour le SCM, Maven pour le BUILD, Continuum comme CIM et Tomcat comme Serveur Web. De plus Une distribution Xampp (Apache-PHP-MySQL) est également fournie.
Toutes les infos sont disponibles dans le doc ci-joint.
Le Package est disponible sur le serveur de domaine (Telechargement/Serveur/PFIC).
Eh oui on est comme ça à la DT d'Alcion: généreux avec vous ;)

PS: prévoir au minimum 500Mo d'espace disque.

lundi 6 août 2007

Intégrer en continu...

UPDATE: Précisons que l'intégration continue peut très bien se coupler à n'importe quelle méthodologie de développement logiciel: cycle en V, Unified process, Scrum, Extreme Programming, ....


Un sujet actuel: l'intégration continue (continuous integration) est une stratégie de génie logiciel visant à répérer le plus rapidement possible les éventuelles régressions d'une application par passage de jeux de tests dès la mise en version du code.
On trouve une très bonne introduction sur le site de Martin Fowler, père du terme.
Alcion Group possède une plate-forme d'intégration continue pour .NET autour de Nant et CruiseControl dans le cadre du projet MGV et des études sont faites pour un avoir une pour J2EE (Maven, Continuum, ...).

Si vous même avait une expérience du sujet, n'hésitez pas à en faire part dans les commentaires.

lundi 16 juillet 2007

De l'importance de Spring

Les idées derrière Spring (tissage et découplage) pourraient bien être ce qui est arrivé de plus important à J2EE ces 5 dernières années, et servir de boussole pour la suite.
Qu'en pensez-vous ?

jeudi 12 juillet 2007

Sortie d'Eclipse 3 "Europa", nouveaux plug-ins

http://www.eclipse.org/europa/ Quoi de neuf dans l'IDE utilisé par 60% des développeurs ?

  • Meilleur support pour C/C++ et pour les langages dynamiques (Ruby, Python) ;
  • Ouverture à des fonctionnalités colaboratives multimedia (intégration voix, chat...)
  • Fonctionne sous Vista.

Mais surtout, une mise à jour massive de 21 plug-ins pour toujours plus de productivité, en CSS, en JSF par exemple, sortis ensemble, packagés, testés, validés compatibles ! Ci dessous la liste de ces plug-ins par Benoit Courtine.

Lire la suite...

mardi 27 mars 2007

OpenBar AlcionTech : meta-frameworks, Jaxio, le 26 avril

>> Jeudi 26 avril 2007 à 18h30 au siège

Qu'est-ce qu'un méta-framework ?

Les frameworks sont à présent un état de fait ; plus un projet ne démarre sans l'adoption de briques techniques telles que Struts, Spring, Log4J, Hibernate..., qui enrichissent, chacune dans sa spécialité, le paradigme J2EE. keel.gif Un méta-framework est une "suite" de frameworks techniques assemblés afin de couvrir l'ensemble des besoins de réalisation d'une application. Par exemple, certains réfléchissent, au sein d'AlcionGroup, à la possibilité de pré-assembler un socle applicatif basé sur Spring et Hibernate, prêt à partir sur nos projets. Différentes initiatives vont dans le même sens (JAD, Keel, Roma, Jaxio, MD4J, Seam, RIFE, AppFuse, Tapestry...) dans le double objectif d'améliorer la productivité du développement, et de réduire les dépendances entre composants afin de faciliter l'évolution du logiciel produit (rester agile !). Il y aura, à moyen terme, une norme defacto, sorte de "pile standard", incluant - ou non - les outils de développement rapide que l'intégration verticale suggère.

Quelques ressources : http://www.theserverside.com/tt/articles/article.tss?l=Keel http://romaframework.xwiki.com/xwiki/bin/view/Main/

La présentation du soir : Développement rapide d'applications J2EE avec Spring, Hibernate, et Jaxio

Jaxio est un outil de génération rapide d'applications J2EE à partir d'un modèle métier, développé par une jeune société française. Sur le constat d'une lassitude du développeur à réaliser certaines tâches répétitives liées aux patterns mis en oeuvre, Jaxio a automatisé la production de code pour les parties persistance, métier, et présentation, dans un cadre technologique tout à fait au niveau de l'état de l'art, et de plus totalement personnalisable. Les applications sont nombreuses : maquettage, RAD, développement itératif... Cette présentation sera assurée par Florent Ramière et Nicolas Romanetti, fondateurs de Jaxio. Et, pour tout vous dire... le retour des Alcionniens les intéresse.

mercredi 7 mars 2007

Oracle libère TopLink!

Oracle a annoncé hier lors de la conférence EclipseCon que Toplink sera cédé à l’Open Source sous l’égide du Projet Eclipse.
Tout sauf des spécificités liées à Oracle AS est concerné (même les fonctionnalités encore en cours de developpement)

Lire la suite...

mardi 16 janvier 2007

Les labs à suivre

fiole Une petite compilation des labs à suivre lors d'une veille technologique. N'hésitez pas à compléter la liste :)

Usenet ou le retour de l'ancêtre

UsenetUsenet, c'est l'ancêtre des forums web et c'est pas inutile de connaitre parce que cela regorge de groupes (et de fils de discussion) susceptibles d'intéresser les ingénieurs informaticiens que nous sommes. Avant c'était un peu technique pour entrer dans l'arène mais grâce à google (et oui encore lui!), plus d'excuse: tout se fait via le navigateur. Toute petite sélection de groupes à noter:


Pour info, Usenet est souvent la matière première des chercheurs en social cyberspaces (voir le projet Microsoft).

mercredi 10 janvier 2007

Et vous, quel IDE Java utilisez-vous?

java logoUn fil du forum de developpez.com à suivre (et pourquoi pas enrichir?) pour les javaphiles. Sans trop de surprise, Eclipse écrase nettement la concurrence (61%)suivi par NetBeans (24%). Les autres IDE n'ont plus que des miettes.

Sur un autre fil du même forum, un sondage sur les serveurs d'application. Là JBoss mène la course (36%) mais la concurrence est rude derrière. Attention, le sondage date de février 06 et dans l'écosystème java tout va vite.

vendredi 22 décembre 2006

Dans le radar : la réponse de Java à RubyOnRails ?

RomaFramework est une initiative à évaluer. Qui a des retours ?
http://www.romaframework.org/

Roma Meta Framework is a Open Source initiative to make Java application development easy. The approach is totally DDD, let's think to the domain of your application and Roma will makes the rest: persistence (database), presentation (HTML + Ajax), logging, user management, sessions, etc.

The Roma project is composed of two parts:

* Wizards to generate code automatically * Runtime libraries that works as a glue code to integrate you application with the best Java technologies and products (Spring, JDO 2.0, Echo2, Log4J, etc.)

StrutsTestCase

Louis Lefevre a rédigé pour nous un petit how-to pour vous permettre de connecter JUnit et Struts, sur le thème : "Comment tester votre application Struts sans passer des journées à répéter les mêmes clics dans vos pages web ?".

Expliquons-nous :

  • L'utilisation de framework de tests unitaires est essentielle à la constitution d'un code robuste. Il aide, d'une part à placer votre code en situation difficile, d'autre part, il en améliore la lisibilité ! Et surtout il fait gagner du temps.
  • Concernant une application basée sur une I.H.M (une application Web par exemple), les tests fonctionnels impliquent de se mettre à la place de l’utilisateur et de cliquer, de saisir des données dans un formulaire, puis de re-cliquer,… pour tester une fonctionnalité, pour une séquence de choix, dans un contexte, et … pour une version du code !!! Autant dire que le respect rigoureux de la phase de tests pourrait faire exploser les plannings les plus laxistes !

La note se télécharge ci-dessous sur le lien "une annexe".

mercredi 6 décembre 2006

A la recherche du portail ultime

expeditor.jpgLe portail ultime ? Capable de fournir à chaque employé les applications dont il a besoin, sur son bureau. En prenant en compte la gestion des droits, et un déploiement totalement managé, particulièrement adapté aux grandes flottes.

C'est en tout cas l'a vision d'IBM qui vient de lancer, via sa filiale Lotus, le framework "Expeditor" pour assembler tout type d'IHM, a priori dans un contexte Windows, et reposant sur Eclipse et Websphere.

La concurrence ? Est clairement visé Microsoft, dont la nouvelle technologie Avalon/XAML, devenant dans l'ère Vista la couche de présentation de .NET, pourrait prétendre à l'ubiquité, sinon à l'universalité.

Une fonction originale de ce remplaçant de Websphere Everyplace : la capacité d'assembler des portlets (JSR169) qui tournent directement sur le poste client et fonctionnent donc en déconnecté... à condition de disposer de 512Mo de RAM. Et bien sûr, ça tourne également sur Linux.

mardi 5 décembre 2006

Nouvelle solution de clustering Java en Open Source

Terracotta vient de mettre en Open-Source sa solution DSO (distributed shared objects)

Lire la suite...

Slides de la présentation Spring MVC du 28 Nov 2006

Bonjour, Pour ceux qui n'ont pas pu assister à la présentation Spring/MVC vous pouvez acceder au slides en suivant le lien ci-dessous

Slides Présentation Spring MVC

Bonne lecture Mahfoud

lundi 4 décembre 2006

Concevoir des services Web facilement en Java : XFire, la solution ?

Les services Web sont utilisés depuis plusieurs années, mais ils présentent toujours des inconvénients majeurs. Il ne sera pas question ici de limitation d’ordre fonctionnel, mais plutôt de difficultés de mise en œuvre. Tout d’abord, dans le monde Java, sont proposés de nombreux – et même de trop nombreux – environnements d’exécution pour services Web, ce qui ne facilite pas toujours le choix de l’architecte logiciel. Citons, parmi les plus connus, Axis du projet Apache, JWSDP de Sun, WebLogic de BEA, WebSphere d’IBM, etc. XFire est un projet Open ayant pour objectif d'offrir une implémentation SOAP en Java aussi performante que simple d’utilisation. Le framework XFire est disponible à l’adresse http://xfire.codehaus.org.

jeudi 30 novembre 2006

Comment codez-vous vos IHM ?

wysiwyg.jpg_180_254_80.jpgVu sur slashdot :

There is a good debate about GUI generation tools for Java going on at theserverside.com: 'Almost every platform has a visual designer that serializes the GUI to resources (some XML, some proprietary binaries) and then attaches it to the controller at runtime. Apple has had this for years with Interface Builder, Vista has a similar philosophy now as well. Java developers though are left with either hand coding of GUIs or potentially messy and brittle code generators. Neither of which promote good MVC separation. In fact they tend to encourage violations unless you are a very disciplined coder.' Personally, I am partial to BuoyBuilder as a great solution to this issue.

Et vous, comment codez-vous vos IHM ?
La discussion continue ci-dessous ("commentaires").

jeudi 23 novembre 2006

Java et le temps réel

Java est enfin devenu compatible avec les applications temps réel. Le principe du garbage collector empêchait en effet une exécution prédictible, capable de garantir des temps de réponse sous un délai imparti. Aujourd'hui, l'implémentation de référence permet de gérer des lantences quantifiées de l'ordre de 20 microsecondes.
http://java.sun.com/javase/technologies/realtime.jsp

Première étape : la concrétisation de la JSR001, the "Real Time Specification for Java", qui définit des modifications profondes : une API et des ajouts à la JVM. En résumé :

  • Deux nouveaux types de threads, dont un ne pouvant pas être interrompu par le garbage collector, et assurant un respect absolu des priorités (ce que l'implémentation standard ne garantissait pas) sur 28 niveaux
  • Deux nouveaux espaces mémoire, ne faisant pas l'objet de garbage collection : l"immortal memory", jamais désallouée (prudence !), et la scoped memory (détruite à la sortie du scope). Des fonctions de l'API permettent l'allocation dans ces espaces.
  • Deux mécanismes spécifiques aux applications temps réel : la prise en compte d'événements asynchrones ("happenings") et d'un chronométrage à la nanoseconde,
  • L'accès direct à la mémoire physique permettant de coder des drivers en java plutôt qu'en C/C++ appelé par JNI. Ici aussi, prudence !


Deuxième étape : la disponibilité de machines virtuelles implémentant cette nouvelle norme. C'est chose faite, nous en avons au moins deux :

  • L'implémentation Sun (Java Real Time System ou JavaRTS), sous forme d'add-on au JDK 1.4.1, fonctionnant uniquement sur Solaris/Sparc pour l'instant (la promesse d'autres plates-formes a été faite, avec la limitation que JavaRTS repose entièrement sur les qualités temps-réel de l'OS sous-jacent, Solaris en l'occurrence)
  • L'implémentation de TimeSys, qui est lead sur la maintenance de la spécification et auteur de l'implémentation de référence : http://www.timesys.com/java/


Le modèle retenu permet de créer des systèmes complexes nécessitant de la logique temps-réel (réponse en temps imparti) combinée avec de larges portions de code n'ayant pas les mêmes exigences, codées en java "standard". A noter également des implémentations de corba tirant parti de ces nouvelles propriétés.

Telechargement : Mastering Enterprise JavaBeans 3.0

Le livre n'est malheureusement pas imprimable car son auteur l'a protégé. Cliquer ci-dessous sur "une annexe"

mardi 21 novembre 2006

Gestion de la memoire en Java avec NetBeans 5.x

l'article est accessible sur l'URL http://schmitt.developpez.com/tutoriel/java/memoire/

lundi 13 novembre 2006

Java disponible sous licence open-source : les détails

R La rumeur qui courait depuis plusieurs semaines a été confirmée aujourd'hui par une annonce de Sun.
Il faut se rappeler que Java-en-tant-que-standard a connu un début d'existence difficile : la tentative de prise de contrôle de Java par Microsoft - qui livrait avec Windows une variante propriétaire jusqu'à ce qu'un tribunal l'en empêche à la fin des années 90 - a pu être repoussée grâce à la propriété de Sun sur Java.
Depuis plusieurs années, la communauté open-source demandait que Java devienne libre notamment afin de pouvoir l'inclure plus facilement dans les distributions Linux. L'opportunité était là : le standard semblait solidement établi et, plus rare, Sun avait choisi dès le départ un modèle gratuit.

C'est aujourd'hui chose faite : Sun met à diposition ses propres implémentations du langage, sous licence GPL.

En quoi consiste exactement cette ouverture ? Quelques réponses :

  • l'annonce concerne les plates-formes J2ME, J2SE, et J2EE (qui était déjà sous licence open-source, mais plus restrictive) ;
  • le code de javac (le compilateur) et de java (la machine virtuelle de runtime) deviennent ouverts ;
  • la spécification de l'API ne devient pas libre : elle reste soumise au JCP (java community process), ce qui est probablement la meilleure assurance contre la dispersion ;
  • le statut du code source de l'API n'est pas cité explicitement ; puisqu'il a toujours été téléchargeable, on peut supposer qu'il va être libéré ; cependant Sun prévoit un gros travail de toilettage afin de vérifier que ce code ne contient rien qui soit la propriété d'un tiers et ne prévoit de stabiliser la version libre qu'à la fin du premier semestre 2007.
  • les premières version open-sourcées seront les builds précoces de la version 7, puis ensuite viendra la version 6 stable.


Concrètement quels sont les changements pour nous, développeurs ?

  • En première analyse : aucun ; rien de fondamental ne va changer. Ni les fonctions du langage, ni son attractivité.
  • Le suivi de l'écosystème deviendra plus complexe, et il faudra plus que jamais se méfier des extensions propriétaires.
  • L'auto-formation et la correction de certains défauts seront facilités par la transparence des couches basses.
  • Et surtout : la possibilité de contribuer au progrès de l'un des langages les plus populaires de l'histoire !

Enfin, que nous réserve l'avenir ?

  • La possibilité d'un renforcement de Java comme plate-forme standard, face à .NET qui restera probablement propriétaire en dépit des efforts de Mono ;
  • Les clients qui le souhaitent peuvent continuer à faire l'acquisition de la version payante de java, qui fournit certaines garanties, ainsi que du support.
  • Une confirmation du positionnement atypique de Sun, qui devient le plus gros contributeur privé de l'open-source (après avoir dejà fourni open office et open solaris).

vendredi 10 novembre 2006

Rencontre avec Logiconsult

Logiconsult est une petite société de conseil spécialisée dans le décisionnel depuis 1989.
Datawarehouse.gifLe décisionnel, qu'est-ce exactement ? C'est l'art d'agréger les données du ou des systèmes d'information de l'entreprise, afin de fournir des outils de pilotage (pouvoir corréler par exemple les ventes dans une région avec les délais de fabrication dans telle usine et élaborer un plan d'action correctif). Les mots clés sont : datawarehouse (centralisation et historisation des données des différents SI), analyse muti-dimensionnelle (axes et indicateurs), et l'ordre SQL "group by"...
Alciongroup dispose de compétences dans ce domaine, qui concerne des projets assez différents des projets de développement et d'intégration. Aujourd'hui, nous voulons développer cet axe afin de compléter notre offre. Logiconsult nous a présenté deux axes de développement :

  • un logiciel d'aide à la conception de système décisionnel, permettant de tracer les champs tout au long du parcours des données et leur transformation ; réalisé en technologies Ajax, il est modifiable pour s'adapterà la logique du projet si nécessaire et sert, si on le souhaite, de base pour générer des schémas ou des scripts.
  • des briques logicielles Java/Ajax pour l'implémentation de tableaux de bord ; en particulier une interessante fonction de tableau croisé dynamique réalise tous les calculs sur le poste client, au cours de la navigation de l'utilisateur dans les données, après une unique requête sur la base de données qui se voit considérablement déchargée.

L'élaboration du partenariat est en cours.

A rapprocher d'un fil de discussion sur la possible relocalisation des données (et donc des traitements) dans les systèmes distribués à la faveur des évolutions des prix du stockage et de la bande passante sur une longue période, à partir de l'exemple du nouveau datacenter de Google à Portland, Oregon :

When we look at our current situation, we see that we have data 'here' and data 'there'. When we want to have more data, we need to go 'there' to bring the data 'here' for viewing. In the most extreme (and common) case, the data is only temporarily copied from 'there' to 'here' and once we are done with the data it is deleted from 'here'.

jeudi 12 octobre 2006

Slides des présentations à l'open bar : Spring et Scrum

Scrum par Stéphane Boisson

Spring par Thierry Roussel

vendredi 30 juin 2006

La Française des Jeux accélère son e-business avec Alcion

fdjeux.pngDepuis le 5 juin, on peut enfin jouer aux 17 jeux de tirage, de grattage et de pronostics de la Française des Jeux sur le web (www.fdjeux.com), grâce à la mise en production d'une version totalement nouvelle du site de jeu, en remplacement d'une architecture basée sur un client applet java et un serveur C/C++. Ce sont désormais près d'un million de comptes joueurs qui sont ouverts 24h/24 sur une plate-forme à laquelle AlcionGroup a collaboré de près, tant sur le plan de l'architecture, que de la gestion de projet et de l'industrialisation.

  • Site JSP + jeux Flash/XML/webservices
  • Back-end java, framework propriétaire, Tomcat, Oracle
  • Plate-forme transactionnelle sécurisée full-https
  • Performances : 5000 sessions simultanées, temps de réponse moyen < 0.3s, sur 24 processeurs AIX
  • Système de porte-monnaie permettant le micro-paiement
  • équipe de 10 développeurs + 10 testeurs, sur 10 mois.

Aujourd'hui, la Française des jeux peut espérer convertir une part significative des 8 milliards d'euros de CA vers le online et ainsi jouer dans la cours des grands de l'e-business français, derrière voyages-sncf.com mais dans le peloton de tête des ténors de la VPC (notamment fnac.com). Avec un avantage majeur pour le online : la possibilité de limiter les mises des joueurs, qui sont parfaitement identifiés, dans le cadre de la politique de "jeu responsable". Limitation impossible dans le réseau des points de vente traditionnels. Enfin, deux scoops :

  • en 2007, on pourra également jouer depuis son mobile ; il s'agit d'une tendance lourde, comme on le voit par exemple au Japon ;
  • les systèmes hautement sécurisés rendent honnête. Inutile donc de me demander si j'ai un truc, une martingale ou une backdoor !

mercredi 21 juin 2006

Développer en AJAX avec Google

AJAX (Asynchronous javascript and XML) désigne un ensemble de technologies permettant la réalisation d'interfaces utilisateurs utilisables dans un simple navigateur, mais au rendu bien plus dynamique que le HTML. De plus en plus utilisé sur le web grand public (maps.google.com...), AJAX s'étend aujourd'hui aux applications intra/extranet, en mal d'ergonomie. Dès 2002/2003, Alcion a mené un grand forfait pour la réalisation d'une plate-forme de téléconférence couplée téléphone/web, qui reposait sur les principes AJAX.
desktopclone.jpg Depuis quelques semaines, le développement AJAX est entré dans l'age adulte grâce à la décision de Google de distribuer gratuitement le framework utilisé en interne le Google Web Toolkit (GWT). Une des qualités majeures de cette solution est qu'elle est J2EE et épargne l'essentiel du développement HTML/Javascript au réalisateur de l'application. Cela tombe bien, c'était le plus délicat et sujet aux bugs et aux incompatibilités entre navigateurs.
L'assemblage des widgets graphiques est déclaratif et n'est pas sans rappeler Swing, jusqu'aux mécanismes de listeners pour la gestion événementielle :

public class Hello implements EntryPoint {
  public void onModuleLoad() {
    Button b = new Button("Click me", new ClickListener() {
      public void onClick(Widget sender) {
        Window.alert("Hello, AJAX");
      }
    });
    RootPanel.get().add(b);
  }
}


http://code.google.com/webtoolkit/