Does Agile work for you?

Posted by Conrad Benham on May 14, 2008

Thank you to all who came along to the presentation held this evening entitled “Will Agile work for you?”. While the question was never directly answered I hope I was able to provide some insight into what an Agile environment should be like.

I covered a number of aspects on Agile environments including, Team Composition, Team Empowerment, Technical Passion vs Domain Experts, Continuous Improvement, Agile Leadership, Bonuses and Management. Some very interesting questions were raised during and after the presentation. One of the questions was about introducing fresh graduates into an Agile environment. A challenging question was raised around the approach to introducing Agile into an environment that does not readily accept new approaches. This led into a vibrant and interesting group discussion on the topic that explored some fascinating areas. All in all it was an energetic and enjoyable evening.

Our next presentation evening, which needs confirmation, will be announced soon. You can expect the next meeting to be in late June. The next Code Jam is on Monday the 19th of May.

Will Agile work for you? 1

Posted by Conrad Benham on April 27, 2008

When people are told about Agile they often walk away saying “That sounds good in theory but couldn’t possibly work in the wild”. In out next event we will explore what it takes to be Agile. I’ll identify projects for which Agile is suited and those where it will be more challenging to implement. I’ll also look at the types of people and teams it takes to make Agile work. If time permits we’ll look at the parts of Agile that can be done without management endorsement.

Update: this topic is suitable for all people. There will be information relevant to developers, project managers and managers. Even if you aren’t likely to create an Agile team soon you will still benefit from understanding the dynamics of an Agile team regardless of your current role.

Thank you to the Fringe Club for allowing us to use their space for this event.

When: 7pm, Tuesday 13th of May 2008
Where: Fringe Gallery, Fringe Club, 2 Lower Albert Road, Central, Hong Kong
Google Map: http://tinyurl.com/4tdpw9

Code Jam – Anagrams Code Kata 2

Posted by Conrad Benham on April 07, 2008

Recently we called a Code Jam in which the aim was to give people the opportunity to practice Pair Programming and Test Driven Development. The event also gave people the opportunity to share ideas about how to solve the problem. Most people solved the problem in Java or .NET though one pair solved it using Lua.

Code Jam Photo

We chose Prag Daves Anagram Code Kata as the problem to solve. This code kata which involves identifying anagrams in a given list of words is simple enough to solve in a short period of time while offering some interesting challenges from an algorithm point of view.

I have uploaded a solution to the problem in Java. The solution I came up with was entirely Test Driven except for the Main class. I chose to go for an Object Oriented approach as opposed to a small, potentially terse, solution. If you inspect the code you will see it is quite easy to perform arbitrary queries on the anagrams (via the Anagrams.operate method). It should be a simple exercise to create a class that will find the largest set of anagrams or find any other piece of interesting information.

In attempting this problem, the solution I arrived at found 2531 anagrams – Dave Thomas claims there are only 2530. I’m sure there is a further check I could add but I just can’t see what it is at this point. If I ever stumble on it I’ll be sure to make an update to the code and upload it here.

My solution can be found here.

The solution contains the bare minimum, I have not included a build script, nor have I included any binaries. I decided not to include project files either as people were using different IDE’s for their development.

On an unrelated side note, we will call another meeting just as soon as we’ve found a new venue. The venue we were using for our meetings has unfortunately closed. If you know of somewhere near Central that would be suitable please let me know.

Agile 101 Summary

Posted by Conrad Benham on March 18, 2008

On Wednesday we held our second meeting. There was a lot of energy, it was great to see so many people getting involved!

Tom and I pair presented a high level overview of Agile and Extreme Programming. We talked about the history of Agile, The Manifesto and even compared or contrasted Agile to Waterfall. Many interesting questions came out of the various topics covered. It will not come as much of a surprise that Pair Programming sparked some questions. Questions were also raised around how a team delivers business value when a technology stack must be implemented before development can be started. The concept of spiking also provoked some discussion around what one does during a spike and whether they should be retained or not (Toni’s thoughts here).

Other topics covered were: Agile Planning, Coding, Designing and Testing.

Tom and I would like to thank all that came along for making it a very enjoyable evening and for contributing with questions and comments during the session. These questions and comments make for a varied and interesting meeting.

Remember: if you have any topics you’d like covered or have experience in a particular facet of Agile and would like to share that experience then please get in touch (Contact).

Our first meeting… 2

Posted by Conrad Benham on February 11, 2008

Martin and MarcOur kick off meeting was held on Tuesday. I’d like to thank all for coming along and making this an informative and enjoyable evening. If you didn’t make it this time, then please come along to our next meeting (to be announced). There was a good crowd of people, with different levels of agile software development experience. Drinks were sponsored by ThoughtWorks.

Martin Fowler was on board and live for a questions and answers session. Martin answered questions raised mainly around agile software development though he started off with a brief introduction to agile software development. He was also challenged on contentious and discussion provoking topics such as documentation and adoption of agile in legacy code.

While this was the first, meetings will be held on a monthly basis and be announced in advance on this blog and also on Facebook. At this stage there is no fixed agenda to the meetings though it is expected that each meeting will focus on agile/XP. If you have any topics that you’re keen to discuss or are willing to present then please let me know (). All suggestions welcome!