August 19, 2008

Agile2008 was a huge success. It was a very proud moment for me of course, with it being my first ever presentation at a conference. The talk was well attended with a decent amount of interest for TestRR.

With around 20 sessions running in parallel for each slot during the conference, it was kind of difficult to choose the session to attend. It was interesting that most of the sessions I went to were small ones, attended by only about 10-12 people and therefore quite interactive. Overall, they were also quite technical in their content and therefore captivated my interest. While talking about it within the team after my return, Uros made an insightful comment, “It sounds like you are more interested in the applied engineering aspects of Agile than the tools and practices”. I had never thought of it that way but on retrospect, that sounds about right.

I could provide a listing of all the talks I attended but that sounds like overkill. Instead, I will focus on my top three picks:

TDD in Concurrent Applications by Brett Schuchert & David Nunn

This was definitely one of the highlights of the conference for me. It became apparent within the first 15 minutes of this 3-hour session that none of the attendees was a novice at understanding and writing concurrent applications, so the session moved on to more advanced discussions quite quickly. While most of the concepts were general, most of the code we looked at was in Java. The two most important bits of advice I took from the session that it is important to actually understand (and read) bytecode to truly understand concurrent code and of the existence of a tool called ConTest which can be used to introduce delays between the execution of consecutive bytecode instructions, thereby increasing the probability of highlighting concurrency issues while testing. Both Brett and David were very impressed by our implementation of an optimistic concurrency control system within our code!

Pomodoro Technique by Staffan Noteberg

This was one of the rare slots when I couldn’t find anything obviously appealing, so I thought I would try something different. Turned out that going in with an open mind and no prejudices worked well for me and I was able to buy into the idea enough to warrant a trial of it – hopefully sooner rather than later. Essentially, it is a technique that helps you stay focussed on one task for short periods of time, thus enabling you to achieve measurable amounts of work every day. I could clearly see the transposition of the Agile sprint / story idea into a smaller scale, and definitely seems worth a try.

BDD using JUnit by Dan North & Elizabeth Keogh

This was my very first session of the conference and it left me feeling positive for the rest of the week. I hadn’t realized before the session that Dan was one of the founders of BDD. It was interesting to hear about the origins of BDD and to see a good pairing session which drove home most of their ideas. As an aside, I also found some useful things about JUnit4.4 and the Mockito framework. Enough that I would like to try and incorporate them into some real code soon for some first-hand experience.



  1. Really? Why must you understand and read bytecode to write concurrent code? Seems a step backwards…

  2. The point was that you need to know where you need locks (or other concurrent mechanisms) in your code. For example, there are plenty of people who believe that i++ is an atomic statement and does not need locks. Apparently, i++ translates to 7(!) bytecode instructions – and it is important to understand the different interleavings of bytecode instructions that can occur causing incorrect state in your application if not guarded appropriately.

  3. […] Raghav Ramesh: Agile2008 […]

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: