31 janvier 2009

Bienvenue sur Facebook !

Invité sur Facebook, et pour une fois par quelqu'un que je connais vraiment, je découvre l'application de "social networking" qui fait craquer les moins de 25 ans. Comme j'ai (un peu) passé ce cap, je reste relativement septique sur l'utilité au quotidien de cet outil. Il faut reconnaitre tout de même la grande maîtrise de ses créateurs : IHM simple mais très complète, plein de chtit trucs Ajax pour une bonne ergonomie. De quoi passer quelques heures par jour pour savoir qui acheter comme ami.

"Amis à vendre" est probablement l'appli facebook la plus incroyablement inutile, donc absolument indispensable. Vous pouvez d'ailleurs m'aider à prendre de la valeur et me donner un pseudo correct (l'acheteur ayant le privilège de renommer son "achat") :

Je viens donc d'ajouter un twitter à ma page facebook, service que je n'utilise pas tellement plus, mais qui sait, en ayant un comportement de "jeune" je vais peut-être avoir les cheveux qui repoussent ? - allez pépé, arrête de blogger, c'est l'heure de ta tisanne.

30 janvier 2009

gMail offline


Depuis peu, google propose le très attendu gMail offline.

Il faut passer en version US et utiliser l'onglet "labs" qui permet d'activer des fonctionnalités à l'essai. Il faut bien sur aussi un navigateur intégrant Gears (dans mon cas : Chrome).

Le résultat est super : une appli web qui supporte les pertes de connexion, idéal pour les transports, ce qui était tout de même super limitant pour une utilisation "professionnelle" de gMail.

Faudra que je teste l'API Gears pour le BreizhJug, ça m'évitera une fois sur deux d'avoir des soucis avec l'accès au Net pour faire le tirage au sort !

un iPod pour 2009 !

Non, je n'ai pas craqué pour le joujou de Steeve Jobs. 

Hier soir avait lieu la soirée annuelle de mon agence. Des prix ont été décernés, et j'ai reçu celui de l'innovation (et oui !). En cadeau, en plus de la bise de mon patron, un iPod 8Go

J'ai merdé pendant dix minutes avant que quelqu'un m'explique que le truc rond est tactile et qu'il faut "tourner" pour descendre dans les menus. Si Steeve est le roi de l'ergonomie - et un génie du marketing aussi - je dois avoir pris un train de retard... 

C'est dur de découvrir qu'on est plus dans la tranche d'âge cible de ces joujous :D

20 janvier 2009

GXT ou pas ?

GXT (== ext-gwt) est une adaptation de EXTJs en GWT. Pas juste un wrapper, mais une reécriture. Donc a priori un truc super optimisé et qui s'intègre parfaitement dans la logique GWT.

Soucis, GXT est sous GPL et propose une licence payante pour les développements professionnels. Pour me faire une idée de cette librairie, je fait quelques tests et je tombe vite de haut :
  • la librairie utilise des concepts très riches (data binding) mais la documentation est bien pauvre
  • j'ai des soucis avec le positionnement qui m'obligent à passer des largeurs en dur, et pire que ça, en fonction du navigateur (voir le code source de l'exemple  AdvancedForm : GXT.isIE ? "100%" : "-20";
  • mes CheckBox ne définissent pas le "labelFor" qui permet de cliquer sur le texte pour les sélectionner.
Pour ce dernire problème, je passe par le forum GXT, et je me fait jetter car "c'est une demande d'évolution, passer par le forum payant dédié".

Autrement dit, GXT est opensource mais pas du tout ouvert à sa communauté "libre". Si le code est librement consultable, pour l'utiliser le passage à la caisse est quasi obligatoire.

Par ailleurs, même si les widgets sont très esthétiques, il est délicat de les "plier" pour entrer dans un design visuel prédéfini au détail prêt. Soit ça colle, soit faut tout refaire.

Bref, grosse déception. J'ai peur que GXT, entre le changement de license qui l'a coupé de sa base et cette politique "communauté payante" se coupe des développeurs, malgré des qualités évidentes...

17 janvier 2009

Etes-vous prêt pour Parleys Publisher ?

Le BeJug, à l'origine du site de conférence Parleys.com (si vous ne connaissez pas, c'est le moment d'aller y perdre .. quelques heures) proposera sous peu un espace gratuit pour les Java User Group.
Je suis donc en train d'équiper le BreizhJug de tout le nécessaire pour capturer nos sessions dans les meilleures conditions. Après le caméscope à disque dur (que nous avons depuis le début) qui donne une image correcte - sans plus - du speaker, nous avons désormais un dispositif de capture VGA (vga2usb) qui permet de capturer toutes les démos faites par nos conférenciers et d'un micro semi-pro pour avoir un son irréprochable, ce qui changera du style "caméra cachée" que nous obtenions jusqu'ici avec le micro intégré du caméscope.

Il ne reste plus qu'à apprendre à maîtriser Parleys Publisher, l'environnement d'édition vidéo associé...

Rendez vous en ligne ... sous peu !

08 janvier 2009

blogger pour les développeurs

Blooger n'est pas très adapté pour fournir des fragments de code. La librairie syntaxhighlighter semble fournir une solution fonctionnelle pour contourner ces limitations.

Ceci est un test intégrant du code source Java :
public abstract class ConfigurableBean
{
/** Configurer used to inject dependencies in ConfigurableBean instances */
private static BeanConfigurer configurer;

/**
* Constructeur par d�faut
*/
public ConfigurableBean()
{
if ( configurer != null )
{
configurer.configure( this );
}
}
}

03 janvier 2009

bonne année !



Bonne année à tous !

Tous mes voeux de réussite pour 2009, en ce qui me concerne, un livre sur Maven est en préparation (il reste juste à écrire les 20 chapitres...) et j'espère bien poursuivre mes petits pas dans le microcosme GWT via le plugin maven-gwt et une collaboration entre gwtx  et gwt-beans-binding.

Mes prédictions pour 2009 :
  • Adobe rachètera SpringSource
  • Microsoft rachètera Adobe
  • Google rachètera Microsoft
  • Un téléphone Androïd sera offert à chaque visiteur de Devoxx 2009 
  • La fréquentation moyenne du BreizhJug dépassera les 100 membres
... mais bien sur, les prédictions sont faites pour ne pas toutes être vérifiées ;-)


17 décembre 2008

beans binding dans gwt

La JSR 295 a été crée pour définir un mécanisme de binding en Java. L'idée simple et supportée par de nombreux langages est que deux attributs de deux beans soit "liés", ce qui permet par exemple à un widget graphique de toujours rester synchronisé avec l'objet modèle qu'il affiche, sans devoir écrire du code de mise à jour fastidieux et répétitif.

beansbinding est l'implémentation associée à cette spec et est utilisé dans NetBeans, ce qui prouve une bonne maturité de la techno. Seulement le projet semble "dormant", et la JSR associée n'a pas bougé depuis 2006. Pourtant le mot clé "bind" utilisé par JavaFX montre bien l'importance de ce concept pour les IHM

gwt-beans-binding est un portage de la JSR 295 (ou plutôt de ses concepts puisqu'elle n'est ni aboutie, ni publique) pour GWT. La mise en oeuvre est très simple. Pour lier deux textBox par exemple, il suffit de déclarer :

Binding.createAutoBinding( READ_WRITE,
    textBox, BeanProperty.create( "text" ),
    model, BeanProperty.create( "name" ) );

L'équivalent codé "à la main" nécessite de définit de nombreux PropertyChangeListeners (NB: quand seront-ils supportés en standard par GWT ?).

Pourquoi se focaliser sur ce projet, encore en version 0.2, alors que d'autres options comme Gwittir offrent des solutions comparables ? 
  • D'une part, parce que quelque soit l'évolution de cette JSR, elle sera toujours considérée si un nouveau groupe s'attaque à ce problème de data-binding en Java. 
  • D'autre part, parce qu'elle propose une API simple et focalisée sur cette unique tâche. 
  • Enfin, parceque le développeur de cette petite librairie a l'air très motivé !
Pour voir gwt-beans-binding à l'oeuvre : démo

11 décembre 2008

Devoxx - an 1

Devoxx se termine avec la projection d'un film pour certains, et les derniers "BOFs" pour les autres.

J'espère que vous avez apprécié mon "en direct", si vous trouvez des blogs/docs équivalents sur le net laissez un commentaire, que tout le monde en profite.

Et pour les membres du BreizhJUG, rendez-vous le 5 Janvier pour une session qui sera au couleur de JavaFX.

07 décembre 2008

en direct de Devoxx


space logo

Dans les lignes qui suivent, je vais retranscrire "à chaud" (enfin, avec quelques heures de différé) mes impressions sur Devoxx et les sujets que je suis lors de cette conférence.

Suivez mon périple à Antwerpen par google.Docs  interposé !

05 décembre 2008

GWT dessine le Web de demain


A l'occasion de son passage à Rennes pour donner une formation GWT, Sami Jaber nous fait le plaisir d'accepter l'invitation du BreizhJug. 

"GWT dessine le Web de demain"

Cette conférence, organisé en mode "à l'arrache", aura lieu dans les locaux de la MEITO (au pied de la tour télécom de Rennes Atalante) le 15 décembre aux alentours de 18h.

Plus d'info et inscriptions comme d'habitude sur www.breizhjug.org

26 novembre 2008

gwt-maven and gwt-maven-plugin merge !

Charlie Collins, project lead of gwt-maven, a Maven plugin for GWT, join the Mojo team o merge it's plugin with gwt-maven-plugin

As a side effect of releasing gwt-maven-plugin last week, gwt-maven users did unfortunately use the mojo plugin as org.codehaus.mojo is in the Maven default plugin list.

There will now be only one plugin, with more feature, more users, better features and ... less bugs !

19 novembre 2008

Témoignage Spring

Le journal du net organise un "sondage" intéressant sur l'utilisation de Spring :

Il s'agit de recueillir des témoignages courts sur la mise en oeuvre du framework, ses points forts et ses faiblesses. Si la représentativité de ceux qui témoignent n'est pas forcément significative, il est toujours intéressante de savoir ce que les autres ont retenu du framework, et ce qu'il lui reprochent. 

Voici mon témoignage. Notez l'excellent (si si) jeux de mot.

[VOTE] gwt-maven-plugin


Après plusieurs mois de mise au point et de test sur le terrain, je viens de lancer un vote pour une permière version "officielle" de mon plugin GWT pour maven.

Développé dans le cadre de la communauté "Mojo", autrement dit l'incubateur à plugins du projet Maven, j'espère que ce plugin recevra un bon accueil des utilisateurs de GWT.

En quoi est-il différent du projet concurrent gwt-maven ?

Les deux plugins partagent évidement pas mal de fonctionnalités, avec quelques originialités. Le miens par exemple peut générer les interfaces "Async" pour les services GWT-RPC. Par contre, j'ai préféré au lancement du shell GWT depuis maven la création de "launch configuration" pour Eclipse. En fonction du retour de la communauté, d'autres fonctionnalités pourront être supportées... 

L'idéal serait bien sur que l'équipe GWT supporte elle même un plugin maven !

Si vous trainez sur la liste dev@mojo.codehaus.org, n'hésitez pas à ajouter votre +1 ;-)


15 novembre 2008

un Windows sous license...

Microsoft a récemment proposé aux développeurs de la fondation Apache un abonnement MSDN gratuit. Celui-ci comporte entre autre un accès à la logithèque Microsoft, dont Visual Studio dont il s'agit de faire la promotion, mais aussi Windows, Office & Cie. Apparemment, l'opération a eu un très grand succès auprès des développeurs Apache, bien qu'ils soient nombreux à travailler sur Mac et/ou Linux.

Je vais peut être tester Vistual Studio par acquis de conscience, même s'il risque de ne pas trop faire l'affaire pour mes développements Java / Maven, quelque soient les reproches que l'on puisse faire à Eclipse ;)

A l'heure ou je préparais Mme à passer le PC de la maison sous Ubuntu, après avoir converti tous ceux de l'école dont elle est la directrice, en plus de mon eee-pc et du portable qui me permet d'écrice ce billet, je vais donc peut être ré-installer un Windows XP totalement légal sur notre PC de bureau (bien sur, quand je dis "ré-installer", c'est parce que le système est tout vérollé après des années de mauvais usages, pas pour un quelconque problème de licence).

Tant qu'a mettre un pied dans les deux mondes, j'ai égallement installé Office 2003 ... sur mon Ubuntu (merci PlayOnLinux) - et oui, ça marche.

Update :
J'ai peut être trouvé la solution : je viens d'installer XP dans une VirtualBox sur mon Ubuntu. A quoi ça sert ... euh ... à voir si ça marche ? ;)

13 novembre 2008

m2eclipse & checkstyle


Mon extension pour m2eclipse commence à fonctionner. Elle permet de lire la configuration Checkstyle à partir du plugin maven et de l'appliquer au plugin eclipse.

Si vous voulez "béta-tester", téléchargez le plugin ici et placer le sous eclipse/dropin - pas d'update site pour le moment, désolé ;)

N'hésitez pas à me faire part des problèmes et autres défauts de jeunesse de ce plugin encore très basique.

En principe, le plugin devrait (après redémarrage d'Eclipse) réagir lors de l'import d'un projet maven par m2eclipse et configurer comme il se doit le plugin eclipse-cs -- je ne l'ai pas précisé, mais ce plugin doit bien sur être installé !

NB : il existe un autre plugin checkstyle pour eclipse, http://checklipse.sourceforge.net/ . Aucune idée de qui est mieux que l'autre...

11 novembre 2008

Maven passe à Nantes


Le NantesJug organise une soirée Maven, animée par Arnaud Héritier, membre du "Project Development Commity" Maven. Pour ceux qui connaissent mal les raffinements de la fondation Apache, cela signifie qu'Arnaud a gravi tous les échelons de la méritocratie sur le projet Maven et que son vote pèse dans chaque décision majeure.

Je vais profiter de l'occasion pour faire une petite visite inter-Jug à Nantes. Si vous êtes dans le coin le 13 novembre, n'hésitez pas à vous joindre à nous.

un pas de plus pour Groovy

SpringSource vient de s'offrir G2One, la société fondée pour soutenir le développement de Groovy et Grails.

Ce rapprochement se fait assez naturellement, Grails étant fortement basé sur Spring et Spring réservant une place de choix à Groovy via son namespace "lang".

Qu'est-ce que ça va changer ?

En dehors des aspects produit, support, formation, etc, cela offre à Groovy une reconnaissance qu'il n'avait pas totalement réussi à gagner par ses propres moyen en dehors d'un public "geek" -comprenez auprès de nos décideurs.

Si je propose de coder une application stratégique en Groovy, même pour X bonnes raisons, je prend le risque de passer pour un doux-dingue technophile.

Si j'ajoute .. "qui s'intègre totalement avec Spring, qui est d'ailleurs le premier contributeur de son développement et de son support", ça fait tout de suite un argument plus concret. Délicat de tenir le même discours pour Jython ou BeanShell, quelques soient les points forts de ces langages.

J'espère que Spring 3 nous promet de belles surprises sur ce sujet ;)

08 novembre 2008

ça bouge autour de m2eclipse

L'intégration de maven sous Eclipse est un sujet qui a pris .. un certain retard si on compare à NetBeans ou Idea. La faute (sans doute) à la gueguerre entre Sonatype et Exists, les deux sociétés qui emploient des core-développeurs de maven, et qui supportent chacune un projet concurrent (m2eclipse vs q4e).

Dans le monde opensource on a coutume de dire que la concurrence est bénéfique. Seulement dans ce cas, chacun développe grosso-modo les mêmes fonctionnalités, et sur la base de la même plateforme à quelques détails techniques près.

m2eclipse remporte pour ma part un court avantage (mais ce n'est qu'un avis parmi tant d'autres) : les échanges que j'ai pu avoir avec les développeurs montrent une grande réactivité et une réelle volonté d'ouverture.

Dans mon cas, j'ai voulu ajouter le support de CheckStyle à m2eclipse; autrement dit, une extension m2eclipse qui va lire la conf de maven-checkstyle-plugin et la "traduire" pour configurer eclipse-cs, le plugin Checkstyle pour Eclipse.

Le bon point de départ, c'est que la plateforme Eclipse est conçue pour ce type de greffe de fonctionnalités (les fameux plugins) et m2eclipse ne déroge pas à la règle. Il y a donc une API très simple pour venir participer à la phase de configuration d'un projet Maven sous Eclipse.

La mauvaise surprise, c'est que cete API est un peu trop simple même dès qu'on a besoin de manipuler des concepts maven (classpath, résolution de dependances, ...). Comme il faut en plus découvrir comment se programme le plugin eclipse qu'on désire supporter, ça fait beaucoup de choses. A moins d'être un pro d'Eclipse + un guru de Maven, on en bave !

De rapides échanges avec Eugene Kuleshov m'ont convaincu que :
  1. je ne suis pas tout seul dans cette galère, et toute l'équipe de dev de maven est prête à apporter aide et conseils
  2. le seul moyen d'améliorer les choses est de "communiquer" pour que chacun apporte sa petite pierre à l'édifice.
Voici donc ma petite pierre :
  • une page du Wiki qui décrit le principe et les pratiques à connaître.
  • un ticket Jira pour permettre à chaque contributeur qui est contraint de réinventer l'eau chaude de "mutualiser" ses efforts.

02 novembre 2008

un processeur Quinte-core



Après le dual-core, puis le quad-core, voici une nouvelle génération de processeur qui va venir motoriser nos PCs de demain : le quintuple coeur.

Issu d'une colle-laboration active entre IBM et Intel, celui-ci utilise des coeurs extrèmement simplistes par rapport aux Pentiums IV. Cette (relative) simplicité permet de réduire la complexité du processeur et au final de bien mieux l'exploiter. L'ensemble permet de répartir la charge entre les 5 coeurs de manière optimale via un algorithme de à-la-rache-cétait-moi-le-premier.

Les résultats parlent d'eux même :

Seul bémol, ce nouveau processeur nécessite une carte mère spécifique équipée d'un slot 3D, donc réservé dans un premier temps aux machines haut de gamme.

La bête en images :