Agile on the Beach Coding Retreat 2018 - Bluefruit Software

Your browser is no longer supported. Please upgrade your browser to improve your experience.

For most of us a retreat is a place where you can relax, unwind, find solitude or remain in silence. Not quite what our colleagues had in mind when they signed up for a 2-day coding retreat, hosted by Agile on the Beach and run by gurus Kevlin Henney and Jon Jagger.
On a very snowy Monday, some of our developers attended the very first “Agile On The Beach – Code Retreat” workshop, along with over 40 developers from as far away as London. The workshop was designed to improve agile development techniques away from the normal workplace distractions of the day job. Day one began with TDD (test driven development) for writing good tests; involving pair programming challenges using CyberDojo, in a choice of languages (C#, Javascript, Python). TDD isn’t new to us – we’re die hard TDD fans and it’s the core of what we do here at Bluefruit! If you want to learn more about TDD and the technique behind please have a look to one of our recent posts. After each 30-minute coding session, all solutions were reviewed and discussed anonymously, with the next session repeating the exercise as part of a new pair to try out the “lessons learned” and noticeably improving quality. Day two had more of a focus on development techniques through more challenging development exercises. This included insightful feedback about how to successfully pair program, and the agile process of design, code/test, and refactoring. As with day one, a lot of the learning happens in the review.
These are the main takeaways for our Developers:
Jay Abbott:

The main thing I learned about TDD, which really clicked when I heard it, was that writing unit tests for the code you’re about to write is like writing the specification for the code; it forces you to write the code to that specification and shows anybody else how you expect that code to be used.
The code retreat involved a lot of programming solutions for the same problem multiple times, in pairs or threes. I found the pair programming with lots of people of different backgrounds and skill levels to be very interesting, as we came up with a lot of different approaches to tackling the problems. This idea of being able to tackle one problem with lots of different solutions, with none of them necessarily being better than another, is a key part of the idea behind deliberate practice.

Since being at Bluefruit I have been involved in more pair programming than in any place I’ve worked before. Although the benefits of pair programming were obvious before the coding retreat, it really showed me how much benefit it can bring. I think it’s a really good way to teach and learn, cross-pollinate ideas between teams, and come up with different solutions to problems.

Colin Saunders:

When working on the simple coding challenges at the retreat I was, I’ll admit, surprised at the variety of solutions that were possible. This will encourage me to avoid tunnel vision / be open to alternative approaches to the task in hand.

As an experienced  (old school) developer, I’m fairly new to TDD and I can already see the potential benefits of the approach.
 It was it helpful to see how testing and coding, which can feel like opposing forces, together bring balance to the development process.

And, in relation to the feedback loops that are so important in the agile methodology, a quote given crystalized the
significance of this which could be paraphrased as: You can develop without feedback as much as you like but two things will happen: You won’t get any better and you’ll stop caring!

We hope to see this event happening next year again – but so far: See you at the Agile on the Beach summer event in July!