Inflection Point

We all say that software design is all about trade-offs but how do we actually reason about it? How do we decide how much code we are going to write for a given task? Is the easiest thing that could possibly work the right approach?...


Big Data Skills Spectrum

Big Data has been a hype for many years. I’ve seen a few “Big Data” projects start in the past with a lot of fanfare and promise.The promise has always been that “we will start getting a holistic picture of our departmental silos and gain...


A really good way to make your learning more effective

Last weekend I was lucky enough to attend Socrates UK 2015, an annual international software craftsmanship gathering set in the scenic surroundings of Farnham, Oxfordshire. If you have not done so, I definitely recommend checkout out this conference, either in England or the other Socrates...


Conversations About Conversations at SoCraTes UK 2015

OK, brain dump time. Using the Right Language What do we prioritise? What do we sacrifice? Every single product ever released has had trade-offs baked in, from the set of features to the implementation of the networking code. There were many independent discussions on and...


Crank Up The Volume And Forget Your Pomodoros

Together, Steve Lydford and I came up with a way to work that we don't think has been put to paper before. The Pomodoro technique is a great way to keep you focused, alone, in a pair, in a mob or in a meeting room....


Working with SLAs

If you spend any time designing applications which use third-party platforms and services, you will have spent time considering Service Level Agreements (SLAs). The tl;dr part of any SLA, the bit the everyone is actually interested in, is the uptime guarantee. However, this seemingly simple...


Applying Transformation Priority Premise to Roman Numerals Kata

"As tests get more specific code gets more generic." - Uncle Bob TDD Often one of the doubts we have when developing software driven by tests is how to evolve code in small and steady paces guided by tests (baby steps). TDD looks deceptively easy...


Does TDD really lead to good design?

Recently I tweeted that TDD can’t lead to a good design if we don’t know what good design looks like. I was also saying that we probably should teach design before TDD (or at least, at the same time). This tweet led to a discussions...


Outside-In TDD part 3

Oustide-In TDD (part III) Different from the previous screencasts, this one is not meant for TDD beginners. Inspired by recent discussions on Twitter and a public discussion about TDD and Software Design (see video below), Sandro Mancuso decided to record a video showing how he...


Outside-In TDD part 2

Oustide-In TDD (part II) Different from the previous screencasts, this one is not meant for TDD beginners. Inspired by recent discussions on Twitter and a public discussion about TDD and Software Design (see video below), Sandro Mancuso decided to record a video showing how he...


Latest Tweets