I wanna hold your ha-a-a-a-a-a-and

Do you remember that catchy Beatles song?

Oh yeah, I´ll tell you something
I think you'll understand
When I say that something
I wanna hold your hand
I wanna hold your hand
I wanna hold your hand

So what made me think about this?  That frustrating construction of the new M5/N1 interchange in Cape Town!!  When you’re sitting in traffic, you can’t do anything but look and think.  And I’ve seen this scaffolding get taller and taller and wider and wider and longer and longer and more and more people appear on it each day.

I know that one day, they will remove the scaffolding and the concrete will just hang there in mid air on those massive pillars and walls that they’re busy building, and I won’t be sitting in traffic any longer, and it will all just work.

What a shame that software is not like that !!  So many people get turned on by scaffolding.  And The Beatles sang on …

And when I touch you i feel happy, inside
It's such a feeling
That my love
I can't hide
I can't hide
I can't hide

And just like the M5 construction, so much scaffolding gets built, and so many people climb on.  But then, they don’t climb down.  And they don’t tear down the scaffolding.  And it just stays there mashed in with the concrete bits.  And then they ask people to use it.  And it takes strain and then it’s a performance problem, or a load problem, or it just crashes down.

I do use scaffolding, but most of the time it’s in a spike and more often it’s in a test, just to get me over my point of fear.  Deploying software with scaffolding is just dangerous and negligent.  I really don’t want to drive my car over the M5 interchange while those thin steel pipes are holding up the concrete slabs.

But above all of that, the most important scaffolding is social scaffolding.  It’s better to provide human scaffolding to support each other on a team that is focused on delivering quality software.  It’s worse to plug in weak struts in the code base that will just collapse when the next developer builds on top of it.  Very un-ubuntu!

So, the Beatles song still holds true, but only for social scaffolding.

Yeah you, got that something
I think you'll understand
When I say that something
I wanna hold your hand
I wanna hold your hand
I wanna hold your hand
I wanna hold your ha-a-a-a-a-a-and

Test First TDD

I think that TDD is getting bastardized.  If you happen to use a Unit testing framework, it does not mean that you are test driven at all.  TDD is about test first to drive the rest – design, clean code, feedback, quality, and lot more.  Using a testing framework is easy.  Being test first driven is really difficult.  You may start off with the mechanics and focus on the cadence, but you only feel the value a lot later – when you have woven it as an attitude into your fabric of thinking.
That’s why I’m giving the TEST FIRST TDD course next week.  If you want to go beyond just learning about an xUnit API and step on the path of a personal journey to changing the way you create software, then come along.  I don’t have miracles but I can do better than just shining a light.  I will step into the darkness with you and help you move towards the light.

Øredev Presentations

My presentations from Oredev are finally available.  After working through almost all the export options on Keynote, I have settled on QuickTime as the distro format.  The “flying code” in the aspects presentation worked out best with QuickTime.  Note that it’s not a continuous playback and you have to click-through each frame.

New Adventures

I have not written anything for about 2 months now and, for once, I really have a legitimate reason 🙂
September was spent winding down at PBT Group.  I was at PBT Group since 2005 and enjoyed most of my time there.  Starting an application development competency at a business intelligence company is not that trivial.  The mindset and thinking in the two camps are quite divergent, yet in the last few months, I got the impression that BI could do with some application development attitudes such as agility, TDD, etc.  It most probably is true in the opposite direction (e.g. application developers could do more with data quality).  But, I am being totally biased 😉

October has wizzed past with me starting at factor10.  So, I now head up the newly launched South African branch of factor10.  It’s been quite a ride since October 1st, but it has been most enjoyable.  It’s refreshing to work with like minded individuals, who think agile and work agile, in getting things done.

Actually, I am quite humbled to be working some amazing people like Jimmy Nilsson, Niclas Nilsson, Andreas Brink, Anders Janmyr and others.

Same life, new relationships, new adventures!

Software Architecture Workshop 2008

The next software architecture workshop (SAW) originally convened by Jimmy Nilsson is being hosted in South Africa this year between 21 January and 24 January 2008.  This is my second SAW and if it is anything like the one last year, then it is going to be a heady mixture of geek-speak, constructive debate and fun.From a PBT Group perspective, we are taking advantage of having a few of the leading software architects in the South Africa.  In conjunction with the Johanessburg Centre for Software Engineering, we will be hosting a JRuby Master Class in Johannesburg (16 January 2008) and Cape Town (29 January 2008).  Andrea Provaglio will be giving up his time for the JRuby events.  You still have time to register for the Cape Town JRuby Master Class.The second event is Aiming for a factor10 being hosted by PBT in Cape Town on 30 January 2008.  Jimmy Nilsson will be talking about Domain Driven Design and Niclas Nilsson will be talking on dynamic languages.  Registration is on the PBT website and is still open.

Aiming for a factor10

As part of PBT Group, we are hosting a morning with Jimmy Nilsson and Niclas Nilsson, both of factor10, working out of Sweden.  Jimmy is one of the leading thinkers in the field of Domain Driven Design and his topic is Is Domain Driven Design more than just Entities?.  Niclas is a highly respected architect and his topic is Dynamic Languages for Statically Typed Minds.This event is a freebie and is scheduled for 30 January 2008 at our PBT Group offices in Cape Town.  Registration for the event is on the PBT Group website.See you there!

Congratulations to Factor10!

Jimmy Nilsson’s latest endeavour, Factor10, has stepped out of stealth mode.  It’s a really interesting concept, and one that a friend of mine and I have toyed with for years, but never really had the guts to do it.  The idea is to work with people that are significantly better than you in the niche area of your business.So, to Jimmy, Niclas Nilsson and all at Factor10, congratulations and all of the best for the future.  I have to say that these are, IMHO, some of the greatest bunch of software practitioners that I have ever had the chance of meeting.  Also, they’re just all round nice guys 😉