mardi 6 novembre 2007

outil pour tests fonctionnels

J'utilise depuis des années httpunit pour faire l'automatisation de tests fonctionnels. Cependant ce projet stagne depuis pas mal de temps, pas de nouvelle version depuis 1 an 1/2 (version mineure), et pas mal de bugs et limitations ridicules trainent. De plus les patchs proposés ne sont plus intégrés, bref, le projet est mort...
Un successeur est désormais là (bon depuis quelques années mais j'ai réussi à passer à côté jusque là :-) ), htmlunit (http://htmlunit.sourceforge.net)

C'est extrêmement similaire en terme de fonctionnalité et d'api mais comble pas mal de lacunes:

comparatif httpunit - htmlunit
http://daniel.gredler.net/2007/10/04/htmlunit-vs-httpunit/


Comparaison webtest/selenium (webtest repose sur htmlunit, après avoir longtemps reposé sur httpunit... cet outil est interessant à regarder, il permet à des "non java" d'automatiser des tests...)
http://mguillem.wordpress.com/category/test-automation/

L'article d'infoq duquel je suis parti...
http://www.infoq.com/news/2007/11/canoo-webtest-selenium-testing

Une migration à envisager ?

lundi 24 septembre 2007

Architect...

A good post about the architect role... what should be the architect role is a long time question for me... especially when I try to hire...

http://blogs.tedneward.com/2007/09/20/Hard+Questions+About+Architects.aspx

Pour moi il y a 2 rôles distincts clés dans une équipe : le chef de projet et le ou les architectes (le chef de projet pouvant cumulé le rôle d'architecte...).

On peut faire facilement une analogie à une course à voile en équipe (bien sûr toute analogie à ses limites...)

Le chef de projet c'est le capitaine du navire : il organise les tâches à bord, gère la paperasse, embauche et coordonne les membres de l'équipe. C'est avant tout quelqu'un capable de gérer une équipe, ce qui demande des qualités spécifiques.

L'architecte c'est le tacticien : il éclaire le capitaine sur les choix de course, il analyse et évalue le meilleur parcours, la progression, la voilure à adoptée. Il est l'homme d'expérience technique qui "en a vu d'autres" et sera capable d'adapter la tactique face aux imprévus... Il peut y avoir un spécialiste météo, plusieurs tacticiens qui évalueront ensemble la stratégie.
Le tacticien propose ses choix au capitaine qui reste celui qui au final fixera le cap et en assumera la décision... il vaut mieux qu'il comprenne les propositions et puisse les évaluer et les mettre en oeuvre par rapport au potentiel et à l'organisation de son équipe.

Les développeurs sont les autres membres de l'équipage. En fonction du type de course il faut différents profils, mais avant tout les valeurs à bord sont le dialogue, la coordination, le courage, l'envie de réaliser quelque chose ensemble.
Chacun est vigilant sur les évènements (la mer peut être impitoyable) prêt à aider les autres.

lundi 4 juin 2007

An interesting blog about checked exceptions in Java

I really think checked exceptions is a nice java feature which help code being clearer and an API robust... at least when they are correctly used...

A very good blog about the subject...

http://colmsmyth.blogspot.com/2007/06/evolving-java-increasing-demand-to.html


(source :http://www.application-servers.com)

mercredi 28 mars 2007

Strange point of view in the .net community...

Some people have very strange ideas :

http://blog.i14y.net/ says :

J2EE is dying, competition doesn’t means innovation everytime but, digging its own tomb

March 27th, 2007

Competition means Innovation but Java is dying because of the amount of frameworks that are available. I wonder if someone is smart enough to understand and follow the amount of MVC frameworks, Design patterns or Object Relational Mapping tools that are available?

We can try to calculate the combinations of solutions (I don’t try to be exhaustive):

Web application frameworks: Apache Tapestry, Backbase, Bindows, DOJO, Eclipse RAP, Echo2, GWT, JFaces, Java Server Faces, JaverServer Pages, JavaServer Type Libraries, Struts, WebWork… (13)
Application frameworks: Spring, EJB3, Guice, Pico, Rico… (5)
Data access frameworks: Apache OJB, Cayenne, DBC, iBatis, JDBC, Hibernate, JDO, JPA, Oracle Toplink… (9)

Which means something like 13 * 5 * 9 combinations; I let you to make the calculation!

Dear developers and architects, when will you stop thinking that your framework is better than the others and create your own one ? Could you participate to already existing ones instead?


My answer :

Do you really think that having a lot of (good) choice means that a technology is dying ? That’s a very strange point of view… Do you think there is only one solution to a problem, that every similar problem has the exact same solution ?
I am happy to be in the java world where innovation is going so fast, where frustrations are often solved by new solutions…

jeudi 22 mars 2007

I attended a few sessions at Sun TechDays Paris on last Thursday and Wednesday.
On Thursday, I saw an Ajax presentation where I could see jMaki in action. I really like the idea to be able to use all those powerful ajax library without handling those terrible javascript stuffs. I was impressed by the bus concept : one ajax component that could work together with an other one (the example was with fisheye and yahoo map).

On Wendsday some guys from OSSGTP were presenting their projects(open source, of course).

Stéfane Fermigier
talked about nuxeo (an ECM), and why the moved from python to java. The technology behind is really impressive : seam, ejb3, jboss, Ajax interface, jackrabitt, lucente... while I didn't really understand how I could take avantage of such a nice piece of software at the moment, the light came later...

Vincent Massol talked about xwiki, which was one of my main reason to be there as I wanted to understand if it would be a viable solution for our public web site (www.financeactive.com). (Seems like "yes"!).

The most impressive presentation was surly made by Benjamin Mestrallet , about exo plateform. A lot of Ajax every where and an awesome desktop mode (webOS). Here we are far away from the last time I used a portal (apache JetSpeed). They are also developing an ECM solution.

After the conference, I went to the nuxeo pavilion for a little demo... I was impressed. I immediately saw it can provide me something I was looking for a few months already : a way to manage Specification documentation efficiently. By the way I would put any project documentation as the rights management solve most of my concerns.

I tried it today. Very easy to install, but very little documentation about setup (changing database for example, but as this is jboss, I should easily work this around) or customizing . I met a few bugs, but it seem stable enough for my need.

I found another very similar opensource software very similar : alfresco, but seem more mature. I will try it tomorrow before make up my mind.

mercredi 31 janvier 2007

Today PJBug (Paris JBoss User Group)

I was tonight present at PJBug in order to attend 2 presentations.
First one was about JBoss product roadmap made by Sacha Labourey, Jboss technical director. Nothing really new here, but always interresting to hear people who are inside...
The seconde (short as Sacha like to speak a lot :-) ) was a presentation about the use of JBoss in DHL France. As often came the time I asked : When you say you are using JBoss... what services do you mean ? .... and as often : Only the servlet part, no ejb at all (and probably no much more anyway - problably just jsp --> jdbc database readonly access, arghh..) !
- Why so many people bother installing and learning a full j2ee stack, as JBoss provide, when they just need Tomcat or Jetty ? It always amaze me (ok people doing it with Weblogic or Websphere amaze me 100 times more...).
More over, it really appears there are still very few application using the ejb container part (ok, I don't consider stateful session bean with no transaction beeing an ejb development...).
.
...Maybe I will take time to prepare a presentation about what we do at Finance active one day just to show a real JBOSS J2EE application with full J2EE stack exist and work !

mardi 9 janvier 2007

jira sert à créer des bug !

Nous avons installé aujourd'hui la dernière version de jira (3.7.1), notre outils de gestion d'anomalies/demandes... au redémarrage, grosse surprise, nous ne pouvons plus "créer des demandes", mais "créer des problèmes" !
Bref, les traductions en français sont devenues n'importe quoi. Visiblement ils ont voulu améliorer leurs traductions en passant par une boîte de sous-traitance... et cette dernière s'est contenté d'utiliser google translate :-)

Un résumé du désatre ici : http://jira.atlassian.com/browse/JRA-11873

Les gars d'atlassian ont promis de faire très rapidement un retour arrière salvateur.

Une bonne leçon à retenir si vous avez à gérer un jour ce genre de problématique...