Wednesday, November 3, 2010

IAD 2010 sold out

I hope you registered as soon as you could, because for the umpteenth year (and running) the Italian Agile Day is sold out. Hope to see you there!

Tuesday, November 2, 2010

The power of e-mails

Have you ever noticed how your phone calls that normally fall in the virtual recycle bin are immediately answered when sent in an e-mail of which your bosses receive a courtesy copy?

In a slightly more edulcorate version you could limit the cc to your own boss only, but if she doesn't take the appropriate actions this seems to fail as well. On the contrary, it looks like people don't like their bosses to think they're not doing a good job, thus spreading the impression that their whole department is not doing a good job, leading to the need for them to take action (should a good boss be a good "politician" as well? that's the argument for another post).

I personally don't like this kind of stuff, because I think one should not work just to keep the fan far away from the soup (to be polite) but to create value, both for himself and for the company he's working for.

Sad but true, when you're back to reality and all else fails...

Wednesday, October 27, 2010

InfoQ: Sharpening the Tools

This is a very nice presentation very well led by Dan North. It offers several insights and hints, but I'd like to quote a couple of things.

At a certain point Dan says he doesn't like learning lunches too much, as the fact that you don't commit completely to learning but do it while you're eating somehow implies that education is not important, while it should be part of the job you're (hopefully) being paid for. It is sadly true, yet we have to work with what we've got: it will come as no surprise that I attend all these presentations in my lunchtime, but I found that given the circumstances it's much more effective than trying to reserve a full hour during the rest of the day.

The most important advices are found in the conclusive slide:
  • always assume you're out of date
  • you owe it to yourself to keep current
So... how much do you know what you don't know?

Thursday, October 21, 2010

Registrations are open!

It is now possibile to register for the 7th Italian Agile day which will be held in Genova on November 19. Hurry up!

The proposed program is very interesting as usual, and as usual I'd like to follow many talks at the same time... I wonder what I would do if I weren't ubiquitous...

Wednesday, October 20, 2010

InfoQ: Danger! Software Craftsmen at Work

I never liked presentations in which the presenter reads too much, or at least gives that impression; this is one of the reasons for which I found this presentation on InfoQ way too long. Furthermore, I think David Harvey takes things to the limit a little bit.

Yet, there is a sentence that I'd like to quote:

The customer is always right, but sometimes they need a little help... and we need to learn about the customer's world.


So there is a real danger here, and it lies within us. Mark the second part of the sentence, because that's the real important one: customers pay us because we provide value for their business, not because we write beautiful code. Customers don't care at all about the quality of our work as far as their business is concerned. To businessmen only business is important, not code.

A word of caution: that doesn't means that we have to be sloppy, for at least a couple of reasons:
  • our personal pride on what we do (after all, we claim to be craftsmans, don't we?)
    • I know someone will not care about this point. I do.
  • customers will sooner or later notice that each and every simple functionality they ask for costs more and more as time passes and functionalities are added, thus throwing us out of their business.
    • This would probably be no good, because we would end up showing boards...

Sunday, October 17, 2010

Varargs for creating lists

I confess I am not so used to varargs yet, but sometimes they can be very useful, e.g. when you want to create a list and punch in some objects in one shot:
List<String> stooges = Arrays.asList("Larry", "Moe", "Curly");
Without the Arrays class you should use the old boring construct:
List<String> stooges = new ArrayList<String>
stooges.add("Larry");
stooges.add("Moe")
stooges.add("Curly");
The former is much better!

Waiting for JMock 2.6.0

JMock is a library that supports TDD of Java code with mock objects. To mock an object the actual syntax (version 2.5.1) is the following one:
final MyObject myObject = context.mock(MyObject.class)
This is plain vanilla code, but things are getting even better in 2.6.0 thanks to the @Mock annotation:
@Mock MyClass myClass
I think it will be difficult to shrink it more than this... looking forward to the release!