AgileOpen – Back from AO Europe 2007

The agendaJust came back from Hilversum, Netherlands, where AgileOpen Europe 2007 took place.

See all the pictures I took on Flickr. Many other photos here.

Continue reading

Posted in agile, conferences, openspace, valtech | 1 Comment

Maven: The plugin ‘standard maven plugin’ does not exist or no valid version could be found

A week ago, Maven started shouting “The plugin ‘org.apache.maven.plugins:maven-war-plugin’ does not exist or no valid version could be found”. What the…?! how can “maven-war-plugin” not exist?? Besides, it is in my repository!

As it turns out, it is a reasonably common issue. I managed to find some help on codehaus’ site, and it did help. But not every time.

Eventually, the best solution seems to simply delete the local repository and let Maven repopulate it.

From what I understand, it sometimes happens that some files (maybe the maven-metadata-central.xml ones?) get corrupted. Good luck when that happens on a enterprise-wide repository…

Posted in java, maven | 5 Comments

Signs for OpenSpace Technology event

Law of 2 FeetCheck out this site. You don’t need professional-looking signs. Hand-made ones will do just fine!

Posted in openspace | Comments Off on Signs for OpenSpace Technology event

AgileOpen Europe

This year, I am going to attend the AgileOpen Europe conference. It is a 2-day event based using OpenSpace Technology, on 11th and 12th of June. It will be the second OpenSpace event I attend that I don’t facilitate myself. Maybe I’ll meet some of you there?

Posted in agile, conferences, openspace | 3 Comments

Annoying default SVN client in Subversive

Subversive is one of the two Subversion plugins for Eclipse (the other is, of course, Subclipse). At each installation of Eclipse, I try to switch from one to the other.

Today, I’ve installed Eclipse 3.3RC1 along with Subversive 1.1.2. When trying to commit, there was an annoying behavior: Subversive would display an error (Malformed network data?!) and imply that the files were not committed (same display as before in the Synchronize view).

Lies! All lies! ;-)

An innocent Synchronize reveals spurious conflicts: the code was checked-in… it’s just that Subversive (or rather the SVN client) did not refresh properly. All you can do then is ask for Override and Update.

Fortunately, it’s not hard to fix. Go the SVN configuration in the Preferences window. In the SVN Client tab, you’ll find a drop-down box. The default selection is JavaSVN “Subversive Default”. Switch to SVN Kit: problem solved.

Posted in eclipse, java, subversion | Comments Off on Annoying default SVN client in Subversive

Oracle Buys Agile

Yep… if you want Agle, you can just go and buy it.

Just kidding of course. As it happens, there actually is a company called Agile Software (imagine the false-positives when doing a Google search for Agile methodologies. I had the worst time when trying to find conferences on Agile methodologies in Paris recently; all I could find was conferences of Agile Software products). They even have the agile.com domain! They also have a logo that has suspicious similarities to the Scrum Alliance logo. However, they are a PLM company and seem to bear no relationship with the Agile & Scrum communities or practices. PLM is a relatively hot domain nowadays, as witnessed last year by the purchase of MatrixOne by Dassault Systèmes, the industry leader, and this year of UGS by Siemens.

As it appears, they (Agile Software) have themselves been acquired recently by Oracle. (All that for a fun headline!)

While I was at it, I checked other Agile-style domains.

Posted in agile | Comments Off on Oracle Buys Agile

XP Day Paris

I attended XP Day Paris earlier this month. A very good conference, sorely needed considering the lack of debate on such topics in France (there has been one XP Day Paris in 2006, but I hadn’t heard about it then). Atmosphere was especially friendly and laid-back, which is not that common in French conferences. However, I feel it could still do better in terms of mixing participants. Groups of people of various companies (especially Valtech, Octo, Hortis) were very visible and tended to stay between themselves (I was guilty of that too). Not sure what could have been done, though.

I was a bit disappointed by a number of presentations. Many of them seemed to be aimed at newbies, even though it was clear that any participants would have at least a passing knowledge of Agile methods.
Interestingly, some presentations did a very good job of selling themselves (well-known speaker, tempting descriptions…) but were not that good.

Some of which I really enjoyed include:

  • “Barriers preventing adoption of Agility” (Les freins à l’adoption d’XP): we did an exercise in small groups, trying to find ways to introduce Agile in our own projects. In my group, my current project was chosen. I’m happy to report that some good solutions were found:
    • draw a parallel between the current practices and the recommended ones (many current practices are in fact quite close to XP, but the project manager does not want to recognize that fact); not too difficult, but will not be enough.
    • slyly introduce XP little by little; I later tried doing that, but it is exhausting being the only person wanting it.
    • get an external consultant to evangelize; that sounds quite easy as I could simply get someone from Valtech. That said, my colleagues at VT feel that it would be a waste.
  • Explaining Agile to CIOs (Convaincre un manager, préserver un changement agile); I didn’t originally plan to attend this one, as it was part of a long series of small sessions. Eventually, I thought I’d try some of them. Many turned out to be rather boring or not Agile at all (someone pretended to be using XP while, in fact, all they were doing was writing unit tests and then expect offshore developers in Moldavia to write the implementation! They even wrote a quick version of the implementation to check their unit tests!!). Anyway, Pierre Pezziardi, the guy talking about Explaining Agile to CIOs had an interesting point of view. He had a simple formalism to describe the software estate in a company, based on circles with varying degrees of color, size and outer ring thickness, depending on the complexity, importance and ‘obsolete-ness’ of them. He also explained that in the 2 software realms in a company, the more Agile world of projects, and the more solid world of applications in production, the first was in fact trying to feed the second. He used the word ‘sedimentation’, which I felt describes this process quite well. Another important thing he mentioned is that we should not try to change minds. Instead, we should concentrate on saving time and money using Agile techniques.

Some sessions that showed me new things

  • Pair Programming (Un clavier pour deux) by Jacques Couvreur and Nicolas Charpentier: nothing really new, but the argument was convincing. The map of the war room was especially striking. Too bad I cannot find it anymore.
  • Refactoring (Refactoring: la voie vers l’abstraction): I did not know the presenter, Regis Medina, before, but he appeared terribly friendly and competent. He explained that refactoring to be considered in a wider picture. Using Refactoring, he has been able to keep enhancing a small code into a whole suite of applications. He nicely made his case by demonstration the creation of a small framework from basic code.
  • “Tell me Mr Client” (“Dites-moi, Mr le Client”) by François Beauregard; too bad it last for 1 hour and a half, that was a bit too long. But it did contain a few very concrete tricks on conducting client meetings

Oh, and I should mention that I won a book! There were about 20 to be won, and about 100 of us attending, so I had a good chance ;-)
The book is on Ruby. Maybe that’s the sign I was waiting for before really learning it? Well, anyway, that will have to wait for a few months until I get a grip on my everyday work, if at all possible.

Update (20/06/2007): some presentations are now available online. Added links in the comments above.

Posted in agile, conferences, valtech | 2 Comments

How to run XFire 1.x with Spring 2.x and Maven 2.x

In version 1.2.5 of XFire, a module called xfire-spring is necessary to run it together with , well, Spring. The issue is that the POM file for it is designed to run with Spring 1.2.x.

Continue reading

Posted in java, maven, spring, webservices, xfire | 6 Comments

Google Spreadsheets Just Added Charts!

I just tried: it works reasonably well, though a bit slow (as one could expect).

More here.

Posted in misc | Comments Off on Google Spreadsheets Just Added Charts!

My small contribution to propagating Agile (and how it did not go so well)

Some time ago, I was involved (along with much more respected people) in a thread on the XP mailing list where an editor for CIO.com asked about communication tools in the context of an Agile project. I thought my answer was quite balanced, arguing that it was not as good as face-to-face conversation, but still could be useful.

Continue reading

Posted in agile, offshore | 1 Comment

Agile seminar with Valtech on April, 26th

My employer is hosting a half-day seminar on Agile methodologies. Speakers include David Gageot and Greg Hutchings, so it’s bound to be an interesting morning. We will also hear people from Odyssey, reporting on their experience with an offshore environment.

Participation is free; register here.

Posted in agile, conferences, valtech | Comments Off on Agile seminar with Valtech on April, 26th

Limitations when using DbUnit in multi-schema environment

DbUnit has a useful feature when using multiple schemas. After setting a property called http://www.dbunit.org/features/qualifiedTableNames, DbUnit will always refer to a fully qualified table name, using the schema in prefix, as expected.

However, it has the side-effect that the schema is then expected to be stored in the data sets. For example, if using Excel files, you’ll need to rename each sheet. Which is feasible, I guess.

The problem comes when you have multiple developers. You usually do not want them to share a database instance, as running the unit test will frequently reset the data. How do you work around that one?

Another thing is that writing the name of a schema is often overkill, even for test. What I’d really want is default to the user name, as SQL clients often do. Why cannot DbUnit do that?

Update (23/03): DbUnit is supposed to take the default schema name from the JDBC connection. However, that apparently does not work when the schema name is specified in the Hibernate configuration. Since I want to obtain the JDBC connection from the Hibernate connection, I am kind of stuck.

Posted in java, test | 1 Comment

Change signature of interface methods in implementations

Every once in a while, I learn a new fact that reminds me to stay humble with my knowledge of Java.
Continue reading

Posted in java | 3 Comments

Sadek is at QCon

My colleague Sadek Drobi is currently attending the QCon conference in London. Check out his blog, starting from March 14th.

Posted in agile, conferences, valtech | Comments Off on Sadek is at QCon

Maven Surefire 2.3 released with support for JUnit 4

Surefire 2.3 for Maven has been released March 1st.
No big announcements, just a post on the maven mailing list. Still, it is a big deal for me, as I can at last run my JUnit 4 tests with Maven.
Continue reading

Posted in java, maven, test | 3 Comments