Continuous Delivery in London – recent events and new Meetup group

The last few months in London have seen a surge in interest in Continuous Delivery by companies wanting to speed up delivery of their web-based software systems. See below for a summary of the events I have been fortunate to be involved with (I know there are many more); if you’re interested in Continuous Delivery and you’re in or close to London, then join the London Continuous Delivery meetup group (#londoncd) and let’s share our experience.

London Continuous Delivery logo - @DaveNolan (logo by @DaveNolan!)

James Betteley: Continuous Delivery using Maven

James Betteley gave a useful talk at BCS on how he used Maven in a Continuous Delivery context alongside Artifactory, Nexus and Sonar. James blogged about using Maven for Continuous Delivery back in February 2012: well worth a read, even if you’re not using the Java+Maven stack.

AKQA

In July, Christopher Marsh of AKQA talked about his company’s success with Continuous Delivery on a London-based project for a large client organisation. They used GO from ThoughtWorks Studios for implementing the deployment pipeline.

7digital

I went to the London offices 7digital for a Devs In The ‘Ditch session last week, where Chris O’Dell explained how they have moved from painful, irregular releases with tightly-coupled code to frequent small releases and a service-oriented approach. The transformation took two years, and they now restrict deployable units to about a day’s worth of work to make deployment easier. GOOS co-author Steve Freeman also gave a useful talk on full-system testing, which is crucial to get right in a Continuous Delivery context.

ThoughtWorks Studios GO 12.3

The ThoughtWorks Studios product team have changed the pricing model with the 12.3 version of their agile release management tool GO: the free Community edition how has feature parity with the pay-for editions, including previously enterprise-y only features such as LDAP and Environments. This means that small teams can make full use of the excellent deployment pipeline features of GO without the price tag. I was always a bit reluctant to recommend using GO before now because the free version was feature-limited, but with all features now available in all editions, I have to say that for modelling and implementing deployment pipelines, there is other no tool which comes close to GO.

WebPerfDays EU 2012

I was fortunate to be able to present at WebPerfDays EU 2012 on how build and deployment shapes software architecture at thetrainline.com [slides] along with Andie and Oddur from CCPGames. Three of the many really excellent discussions that came up were:

  1. Why you should design your pipelines up front [more on this from me soon…]
  2. How to get real ownership of software (e.g. service/product teams, devs on call, etc.)
  3. Jenkins vs TravisCI vs TW GO for deployment pipeline automation

Slides: How build and deployment shapes software architecture at thetrainline.com

In the end, we had to be ‘evicted’ from the room; we could have gone on discussing for another hour! Apparently, one major UK publisher had nearly 10 staff in the session, and rated it the best session in WebPerfDays. It was so great to be among such brilliant minds and conversions, which led me to…

A London Continuous Delivery meetup group

Based on conversations and discussions at At WebPerfDays it was clear that a London-based meetup group centered on Continuous Delivery would be interesting for quite a few people and organisations.

A few of us agreed to get things off the ground, and we’re now on Meetup.com at London Continuous Delivery (http://www.meetup.com/London-Continuous-Delivery/) and on Twitter with #londoncd. Any help, donations, perks, etc. are very welcome.

Breaking the Monolith by Stefan Tilkov at QConLondon 2012

Stefan Tilkov (@stilkov) from innoQ gave an excellent talk on the importance of a “system-of-systems approach” to software architecture (Breaking the Monolith, slides [PDF, 1MB]). [Update: the video is now online here: http://www.infoq.com/presentations/Breaking-the-Monolith]

In essence, he argued for a distinction between micro-architecture (the design of the individual [sub]system) and macro architecture (the design of interacting systems).

QConLondon 2012 blog posts
See all QConLondon 2012 blog posts…

Continue reading Breaking the Monolith by Stefan Tilkov at QConLondon 2012

Five Interview Questions for Hiring DevOps Staff

Over the past seven or eight years I have developed a list of five key interview questions for recruiting staff to software development teams. These five questions have come to stand out as being highly indicative of the candidate’s aptitude for approaching software in [what is now called] a “DevOps” manner, namely, seeing software as the running, evolving system in the Production environment.

Continue reading Five Interview Questions for Hiring DevOps Staff

Tips for Delivering Software Training

I have recently been delivering training for content authors at a large local authority in the North of England (a new Content Management System is being rolled out), and I thought I would jot down my notes on what trainers should bear in mind when delivering software training:

Continue reading Tips for Delivering Software Training

UPGRADE: MCAD Skills to MCPD Web Developer by Using the Microsoft® .NET Framework

I passed my 70-551 upgrade exam a couple of days ago, giving me MCPD Web Developer certification.

Having developed web-based applications in C#/.Net 2.0 for the past few years, this was relatively straightforward. There are some tricky questions on things like:

  • serialization
  • ACLs and code access security
  • encryption

However, I found the SQL Server 2000 developer exam (70-229) to be more taxing, as well as potentially more useful for building enterprise software, so I am surprised that the new MCPD (Enterprise Applications Developer) certification does not have any detailed database knowledge requirements.

Anyhow, a very handy guide to studing for and passing the 70-551 exam is here: http://www.alexthissen.nl/blogs/main/archive/2006/12/31/prepping-for-exam-70-551.aspx