August 20, 2010
[Video] Rock S.O.L.I.D. - S is for Single Responsibility
Book your place on Rock S.O.L.I.D., Bletchley Park, Sept 16th. All proceeds got to charity.
OO Design Principles In Practice
From the Codemanship blog:
I'm running the first of the newly redesigned OO design principles workshops this weekend in London (and a -day version on Sept 16th at Bletchley Park - places still available and all proceeds to charity).
OO design principles run the risk of being a bit too abstract and theoretical, and the major challenge has been to reframe my original training to be as hands-on and practical as possible. Indeed, this may be where so many OO courses and books have faltered.
A particular challenge is to apply the principles on a day-to-day basis. How does S.O.L.I.D. translate into coding habits?
Well, I've had a stab.
Read More...
August 13, 2010
Rock S.O.L.I.D. OO Master Class In Aid Of Bletchley Park
Sept 16th is work4bletchley day, where a whole bunch of us who haven't done at all badly out of the whole computing thing are donating one day's pay to help Bletchley Park.
To raise even more cash, I've decided to make the best use of that day I can. So I'll be running an intensive and very hands-on master class in object oriented design principles for the very reasonable price of 249 GBP (the average one-day OO course costs 500+ GBP). Every penny of the profits will go to Bletchley Park. I'm not even claiming expenses.
So you can do double good on Sept 6th - get to grips with good OO design and help preserve the birthplace of modern computing to inspire future generations of software professionals.
The fun-packed day will include a tour of Bletchley Park.
You can find out more by visiting Codemanship's training page, and book through the Bletchley Park online shop using your credit or debit card.
It's all in two very good causes - clean code and Bletchley Park - so please tell your friend and colleagues.
July 15, 2010
Amazing Value Offer Ends Tomorrow - £2,400-worth of Software Craftsmanship Training For Under £400
Just a quick reminder about the amazing deal I'm offering - never to be repated - which ends this weekend with the final TDD master class of the summer.
Book a place on the TDD and Refactoring master classes, and your place on the OO design workshop on August 21-22 will be absolutely FREE.
Each course normally costs £799, so you'll make a saving of £2000 if you book all on all three before midnight tomorrow.
Not only that, but next weekend's refactoring master class is currently the only publicly scheduled dedicated refactoring training course anywhere in the world.
All the details can be found here: http://www.codemanship.co.uk/training.html
June 30, 2010
Early Bird Offer For TDD Master Class, July 17-18
Just a quick note to mention that the TDD master class on July 17-18 in London is starting to fill up now.
If you confirm your booking before midnight on Friday (July 2nd), you'll receive a free online one-on-one coaching session worth £100.
June 26, 2010
Codemanship's Bonus Code Smell Of The Week - Subtle Message Chains
A variation on the previous code smell example, where the navigation down the message chains happens over multiple lines using local variables instead of one long navigation on a single line.
For training and coaching in refactoring, TDD and OO design, visit http://www.codemanship.com
Codemanship's Code Smell Of The Week - Message Chains
Message chains are bad from a dependencies point of view. Ideally, objects should keep themselves to themselves and only interact with a small number of direct collaborators (a design principle known as the Law of Demeter). Refactoring messsage chains is a bit like making sausages. You squeeze the code along the chain until every object in the chain is only interacting with direct neighbours, applying Extract Method and Move Method (and the occasional Inline Method to replace getters with the objects they get so that Move Method has an obvious target object to move it to). Easy peasy.
For details on training and coaching in refactoring, TDD and OO design, visit http://www.codemanship.com
TDD master Class July 17-18 Early Bird Offer
Just a quick reminder about the early bird special offer on the TDD master class that's happening in London over the weekend of July 17-18.
Book before midnight on Friday (July 2nd) and you'll qualify for a free one-hour onlie coaching session worth £100.
These workshops are proving popular, and demand for places has been very encouraging (hence a second TDD master class).
June 14, 2010
Codemanship Academy Alumni - I Salute You
For the last couple of years, I've been dedicating myself to an experimental coaching and learning process that is peer-led and practice-based called Peer Group Learning & Assessment.
During that time, several groups of developers have been going through PGLA programs in Test-driven Development, and more recently, Refactoring. I've been overseeing their PGLA programs and validating results in my capacity as an all-round brilliant person (and love machine). The results have been encouraging. Teams that did the TDD PGLA program saw real results in their code. Code was simpler and cleaner, and - unsurprisingly - better tested and more reliable. We have hard data to back this up from a dozen or so projects that paint a clear picture of the before and after. We continue to monitor that code to see the effect of scaling the practice up to 3 groups (with a fourth about to start), and tackling refactorings in more detail.
There are enough people engaged in PGLA now to warrant publicly acknowledging their achievements. So I've set up a web page on the Codemanship site where you can find out who's done it.
Some of you are probably thinking "hmmm, this looks suspiciously like certification to me". And, yes, it does a bit. But this is not a list of people who attended a course one weekend. I have spent months (and months and more months) working with these groups and their organisations. I've paired with all of them, and they've spent many hours over those many months pairing with each other and their internal coaches. It's no easy feat. Ask any of them whether PGLA was as easy as, say, getting to be a Certified Scrum Master. Many struggled to make the time. It was a serious commitment that they gave, and they put in some serious time to honouring it.
They also had one final hurdle to jump. And it's quite a high hurdle. To complete their PGLA program, they had to spend a day doing what they'd been practicing to do. And doing it to a standard that most of us would struggle to maintain for even an hour, let alone over the course of a long and gruelling day (the last hour is the worst, trust me!)
If you want to know how tough that might be, try this little exercise. Write down a list of a dozen good habits you believe you should apply when you're doing, say, TDD. It could be things like "write the assertion first and work backwards" or "never refactor if a test is failing" or "always run the test to check it fails in the way you expect it to", and so on.
Now, pick a simple coding exercise. For example, write a program that will generate a sequence of prime numbers of a specified length. Or that will calculate scores for a bowling game. Then try to implement the code needed to solve the problem doing TDD "by the book" (i.e., sticking to all the good habits on your list). Record a video of your desktop while you do it, then watch it back very carefully. Every time you catch yourself failing to apply one of those habits (e.g., you didn't run a test to see it fail), that's one strike. If you can spend an hour practicing TDD and get less than three strikes, and do that three hours in a row, you'll be doing very well. Especially if you can stick with the habits even at the end of a long and tiring day.
I'll bet you a shiny penny that it's harder than you might think it would be. Y'see, most of us know what we should be doing, but few of us actually do those things - not habitually, anyway. PGLA is about building those habits and instincts. It takes a long time and it's no small achievement.
The lovely people listed on the Codemanship Academy page have proved their metal in a way that very few developers have. They've proved that, even when they're tired and stressed and the pubs are open and it's time to go home, they can still do TDD to a standard higher than most of us apply when we're full of vim and vigour and raring to go.
And how many of us can honestly say we do that, too?
June 9, 2010
Budget-friendly Weekend TDD master class, Early Bird Special Offer
If you've been considering coming along to my weekend TDD master class in London on July 3-4, you might be interested to know that I'm offering a free online pairing session worth 100 GBP to everyone who confirms their booking by midnight on Friday June 11th.
Details can be found here.

