Continuous Delivery eBook from Zend – views from 29 authors

I was recently asked to contribute to an eBook from Zend about moving to Continuous Delivery (CD). The 29 authors in the book share a wide range of experience with CD, and there is plenty of useful advice;  the contributions from Mathias Meyer (@roidrage), Kate Matsudaira (@katemats), and Jamie Ingilby (@jamiei) are particularly worth reading, I think.

In my section of the book I explain how using ThoughtWorks GO to model the testing and release steps (effectively part of the value stream) we won trust from several different people and teams during a move to CD. Using a prototype also helped us to validate the activities undertaken:

We tried to empathize with their situation and, using role-based security in the deployment pipeline, uncovered enough information to give them a sense of visibility and control.

Without being able to visualise and communicate easily the activities we were automating, progress would have been slow or even blocked.

Get a free copy of the eBook here:

Zend eBook CD

Using Chef for infrastructure automation – reading list

I have recently read (and re-read) several books on Chef in order that I can recommend books to clients who are starting with infrastructure automation (and to remind myself of the more obscure uses of knife, encrypted databags, and so on). In this post I comment on these books:

  • Chef Infrastructure Automation Cookbook by Matthias Marschall
  • Managing Windows Servers with Chef by John Ewart
  • Test-Driven Infrastructure with Chef (2nd Edition) by Stephen Nelson-Smith
  • Automation Through Chef Opscode by Navin Sabharwal and Manak Wadhwa

Summary: read Chef Infrastructure Automation Cookbook for a good introduction to Chef on both Linux and Windows; read Managing Windows Servers with Chef if you manage many Windows machines; but most of all read Test-Driven Infrastructure with Chef because without a test-driven approach your infrastructure code will rapidly become tangled, unsupported, and obsolete.

Continue reading

Deployability for databases for Continuous Delivery – article on Simple Talk

I wrote an article recently for the Simple Talk website called Common database deployment blockers and Continuous Delivery headaches, where I outline some of the common problems preventing databases from being deployable – a major blocker to Continuous Delivery.

Deployability is now a first-class concern for databases, and there are several technical choices (conscious and accidental) which band together to block the deployability of databases. Can we improve database deployability and enable true Continuous Delivery for our software systems? Of course we can, but first we have to see the problems.

The recommendations include:

  1. Minimize changes in Production
  2. Reduce accidental complexity
  3. Archive, distinguish, and split data
  4. Name things transparently
  5. Source Business Intelligence from a data warehouse
  6. Value more highly the need for change
  7. Avoid Production-only tooling and config where possible [I mention this in my talk How to choose tools for DevOps and Continuous Delivery]

To address [these things] individually perhaps doesn’t seem too challenging, but to tackle deployability requires close, effective collaboration between developers, DBAs, and operations teams to achieve the right balance between rapid deployment and access to data.

Deployability for Databases

Read the full article here

The most common DevOps adoption mistake, and other answers – interview for DevOpsFriday5

I was interviewed recently by the folks at Ranger4 for their #DevOpsFriday5 question series. Since  June 2014 (when I was interviewed) I have published a couple of things which expand on the original answers, so I have outlined these here.  The questions were:

  1. What’s your preferred definition of DevOps?
  2. When people ‘do’ DevOps, what’s the most common mistake you see them make?
  3. How do you recommend an organisation new to DevOps start?
  4. What’s your prediction for what DevOps will look like in 2020?
  5. Where do you like to go to get a DevOps hit?

Continue reading

Early version of our book ‘Build Quality In’ now available to buy

I am very pleased that the first version of the Build Quality In book has been published on LeanPub, with contributions from Chris O’Dell and Dave Farley (co-author of the book Continuous Delivery). The book is edited by me and Steve Smith.

In the spirit of  ‘lean’, we’re publishing a new version of the book whenever one or two additional contributions are ready; you can see the expected publication schedule on the LeanPub page. Buyers of the book receive free updates for life, so buy your copy now at the early bird price!

Build Quality In - book cover

A useful working definition of DevOps

Matthew Skelton (@matthewpskelton):

My definition of DevOps, based on work with 30+ organisations

Originally posted on Skelton Thatcher - Blog:

There has been a spate of articles published recently – triggered by discussions at the ‘2nd DevOps State of the Union’ event – that have identified an apparent need to agree on a definition of DevOps. The folks at ScriptRock wrote a typically excellent piece on The Problem with Defining DevOps which is worth reading (including comments), and Steve Thair of the DevOpsGuys followed up with a very useful post about the need to adopt a different cognitive frame when thinking about DevOps.

Since 2012 I have helped people from perhaps 30 different organisations in Europe, India, and the UK to adopt, improve, understand, and/or experience DevOps (via client engagements and the Experience DevOps workshop, which I co-facilitate). Reflecting on the conversations I have had with people about their challenges and successes, I have come up with a useful working definition of DevOps that holds for all these organisations, without resorting…

View original 615 more words

Highlights of OpenStack London 2014 – ‘Biodiversity’ and Resilience

Matthew Skelton (@matthewpskelton):

From my colleague, Rob Thatcher.

Originally posted on Skelton Thatcher - Blog:

We attended the OpenStack London event on 4th June; the day was insightful, and highlighted perspectives from many different participants in the OpenStack community. There were several interesting talks and demonstrations of both OpenStack components (Cinder, Swift, etc.) and of some new features and products being built around OpenStack by Ubuntu (JuJu, Cloud-init), Marantis, Inktank (Ceph) and others.

A consistent theme that emerged from the talks was that distributed, ‘cloud’-based systems need a new approach from IT teams: “iteration  is the only effective way to understand the right architecture”; “really understand the skills budget you need before you move to cloud”; the challenges [and opportunities] brought by DevOps; the need for a focus on operability.

View original 1,083 more words