{"id":12020,"date":"2013-09-23T18:00:19","date_gmt":"2013-09-23T15:00:19","guid":{"rendered":"https:\/\/mozaicworks.com\/?p=5635"},"modified":"2023-09-15T15:10:24","modified_gmt":"2023-09-15T12:10:24","slug":"raising-the-bar-at-socrates-uk","status":"publish","type":"post","link":"https:\/\/mozaicworks.com\/blog\/raising-the-bar-at-socrates-uk","title":{"rendered":"Raising the Bar At SoCraTes UK"},"content":{"rendered":"
“As aspiring Software Crafters we are raising the bar of professional software development by practicing it and helping others learn the craft.”
\n<\/em><\/div>\n
The Manifesto for Software Craft<\/em><\/div>\n

I am very glad to be one of the 70 developers and testers who attended the SoCraTes UK unconference<\/a>. We were all hoping to work together towards the goal stated in the Software Craft Manifesto<\/a>. The event was a success from this point of view; I think everyone learned more ways of developing software, from architecture, design, avoiding specific problems to functional programming, frameworks or programming languages.<\/p>\n

The unconference started at 6pm on Thursday with a fishbowl discussion about the values of software craft. Sandro Mancuso<\/a> and Samir Talwar<\/a>, two of the\u00a0organizers of SoCraTes\u00a0 and of the London Craft community<\/a>, kindly asked me to be part of the first panel of speakers. We discussed many things, and each participant left with his or her own conclusions. From my part, I wanted to stress that we still don’t know what practices work to create good software consistently. Therefore, we should explore more practices and understand when our current practices don’t work. In order to do that, we need to master the practices that are the norm: automated testing, good design, architecture, pair programming, TDD\/BDD as design and communication tools, clean code and probably others. That is only the beginning; a crafter has to mindfully consider each context and pick the practices that make sense in that context.<\/p>\n

\"Architecture<\/a>
Architectural Kata At SoCraTes UK<\/figcaption><\/figure>\n

The second day of the conference started with Rachel Davies<\/a> introducing the open space. The marketplace filled nicely with about twenty session, many of them running in parallel. I proposed two sessions that proved to be very popular: the Architecture Kata<\/a>, attended by half the conference, and the Incremental Design session<\/a>, an introduction to the concept much like my talk at ALE 2013<\/a>. We had lots of interesting conversations about architecture and design; it turns out most developers don’t know the steps and thinking involved in doing architecture work, so I decided to do a follow-up session the next day. The day ended with a long evening of pair programming in the bar.<\/p>\n

The third day of the conference featured again about twenty proposed sessions. I proposed once again two: “Architecture Step By Step”, for people who want to get an idea of how to do architecture, and “Design Process”, a conversation about how we do design. I had two key take always from these sessions. First, architecture can be taught and it’s very useful to developers, especially those working in a large application with multiple teams involved. Second, we need to develop new ways to build our “design sense”, much like you need to taste more wines to build your taste in wine. @sleepyfox<\/a> proposed this metaphor, and I think it captures perfectly one of the issues I see when discussing design with programmers.<\/p>\n

Since I tried to pair with people at conferences before SoCraTes and it didn’t work so well, I decided to throw in a little incentive: anyone who pairs with me will get a teddy bear. Ten people asked me for sessions but I only managed to pair with five of them. They have now a guaranteed pairing partner, someone who will be there when advice is required. We believe in Mozaic Works that teddy bear pair programming<\/a> is nice and helpful, so we are glad to spread it to the world. And if the teddy bear can’t help you, we would be glad to do it.<\/p>\n

I couldn’t attend sessions since I was busy facilitating my sessions, talking to people and pairing. I did get a glimpse of a few interesting statements that I want to explore:<\/p>\n