A couple of thought provokers for the aspiring great manager:
Speaking of upcoming conferences this Fall, I just remembered Google's conference on testing in London, September 7-8th. It sounds like a mighty interesting conference for professional test engineers.
It seems that not that many developers migrating to JUnit 4 are aware of the replacement for the old way of building suites--using the static suite() method and the junit.framework.TestSuite class--I decided to blog a simple example for Google's indexing hamsters to grab hold of.
Here we go:
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@RunWith(Suite.class)
@Suite.SuiteClasses({
TestCalculatorAddition.class,
TestCalculatorSubtraction.class,
TestCalculatorMultiplication.class,
TestCalculatorDivision.class
})
public class CalculatorSuite {
// the class remains completely empty,
// being used only as a holder for the above annotations
}
The above class is a simple placeholder for the suite annotations, not containing any other functionality as such. The key is in the @RunWith annotation, which tells the JUnit 4 test runner to use the org.junit.runners.Suite class for running this particular class. The @Suite annotation, on the other hand, tells the Suite runner which test classes to include in this suite and in which order.
I hope this helps folks out there since it doesn't seem to be documented too well in junit.org.
update: there's an upcoming book - a 2nd edition of JUnit in Action that's going to cover JUnit 4. Its release is scheduled for June 2009 so there's still some time before the apparent documentation gap should be gone. Having said that, the book is on Manning's early access program (MEAP) so we should start seeing more and more chapters as we near the release date.
As the XP Day 2006 Germany blog is saying (hilarious English translation over here), you can now register for the conference.
There's going to be both a German and an English-speaking track, not to mention all the smart people, so you might want to ask the boss/wife for a ticket to Hamburg in November!
Skip Angel says we should abolish overtime!
I don't know if other Gmail users had anything similar but a couple of days ago I wasn't able to mark messages as spam in Gmail for almost 24 hours. I could happily switch between viewing the Inbox, labels, and I could delete messages. But I couldn't report them as spam. All I saw was this error:
Fast forward to today. I was just unable to log in to Gmail for several hours. Which happened to be a good thing for my productivity, I guess, but nevertheless quite a bit of downtime from one of the world's major email service providers.
I'm not mad at Google or anything. I'm thankful for Google for providing free webmail accounts with a smooth user experience. I'm just wondering what's happening behind the scenes because it seems that these glitches have become more common lately.
I guess this is just a reminder that Gmail is still officially in beta--with god knows how many users worldwide.
I just bumped into a very nice, short article titled Leadership vs. Management. It explores the differences between management and leadership--something which we had quite a lively discussion about in an open space session over at XP2006.
It's photo time! I just remembered that I've still got some photos I hadn't uploaded from the camera to the computer and, while doing just that, I thought I'd share some of the photography extraordinaire with you.
First, a little something that got me smiling big time when I saw it and understood that it wasn't a joke... The grim talking stick for Scrum meetings.
The rest of the photos I wanted to share are from a two-day TDD class I ran recently together with Bas. Appropriate for a test-driven development training, the whole thing took place in a high voltage test area.
The TDD class in question consisted of a little talking and a lot of exercise. A specific thing we tried and found working quite well was what I hereby dub group pair exercises. What it means is that we split the group (7 people) into two groups, carried two projectors into the classroom, and had the groups go at the exercises two at a time on the two projectors beaming at opposite walls of the room.
The original idea was to have the whole class split to two groups and each group into two or more pairs, and then have only one pair from each group do a specific exercise on the projector while the others are observing. The idea was to facilitate opportunities for the participants to make use of both in-situ learning as well as the wider perspective of being able to follow someone else solve a problem and learn to test-drive.
Overall, we were very happy with how this approach worked with that particular group. Although the idea of having just one pair eventually faded away as people just couldn't sit back and just observe... I guess we managed to put together interesting enough problems for the exercises.
Speaking of exercises, probably the most interesting one from my and Bas' perspective was a legacy code exercise which involved extending Cobertura's instrumentation module.
At a mere $249.99 a litre (plus shipping), it's a steal! Get yours now. Available only while supplies last.
What a better way to spice up a meeting than to have it outside :)
PS. A whiteboard would be a much better option than the flip-chart we had. You can't see it from the picture above but we had some trouble with pages turning on their own...







