Continuous Delivery, some quick wins to get you started.
Illustration by Kevin Nichols (@BeardedArtistKN) - https://twitter.com/BeardedArtistKN

Continuous Delivery, some quick wins to get you started.

Implementing Continuous Delivery in your organisation can be challenging if your development process needs to be streamlined. As I see it, Continuous Delivery is a stacked series of relatively quick wins (depending on the buy-in of those that manage and work in the development process in your organisation). Here are a few to get you started.

One quick win is to pair up developers and insist on daily commits. I know what you're thinking - why waste time with two developers when one can do the job? Well, pair programming has improved code quality, reduced errors, and led to faster problem-solving. Daily commits also help catch issues early and keep progress moving forward.

Write all production programs with two people sitting at one machine. -- Kent Beck

Pairing up doesn't have to be permanent and can be done on a rotating basis to keep things fresh. Plus, pairing can identify areas where team members may need additional training or support, leading to better skills and overall performance.

Here's some findings on Pair Programming from Google's annual "State of DevOps" (DORA) report,

  • Organisations that practice pair programming have higher deployment frequencies and lower change failure rates. Pair programming was also found to improve team collaboration and knowledge sharing and reduce knowledge silos within teams.
  • Furthermore, the report also highlights that pairing is most effective when used strategically, such as pairing experienced and less-experienced developers or pairing developers with different skill sets or backgrounds. This approach can lead to faster knowledge transfer and upskilling of team members, leading to better overall team performance.

Regular commits are also essential for implementing Continuous Delivery successfully. By committing changes frequently, developers can ensure that code is integrated and tested regularly, reducing the likelihood of conflicts and bugs. It also provides a clear picture of progress, enabling team members to identify potential bottlenecks early.

Regular commits encourage developers to break down larger tasks into smaller pieces, making progress steady and efficient. It also helps catch mistakes early, reducing the time spent on bug-fixing later. And it builds trust among team members, promoting accountability and responsibility.

Here's some data on regular commits found in the annual "State of DevOps" (DORA) report,

  • High-performing organisations have a higher frequency of code commits. These organisations deploy changes more frequently and have lower change failure rates.
  • Regular commits can improve team collaboration and communication, as developers must work together to integrate their changes. It also helps to reduce the "hero culture" that can emerge in some organisations, where individual developers are seen as the only ones who can solve complex problems.

Continuous Delivery can be overwhelming, but taking small steps and stacking the benefits is the key to success. Trunk-based development is another win worth exploring!

Here's a link to the latest State of DevOps. It's well worth a read and may even spark a passion project for you to implement all the suggestions as it has done for me,

Here's a fantastic deep dive by Birgitta Boeckeler and Nina Siessegger , hosted on Martin Fowler's blog; it goes into some specific strategies to get pair-programming front and centre in your organisation,

At Haefele Software, we are using these techniques right now, and we've seen the benefits. I'd love to share what we've learned in more detail. If you need a hand or some advice to level up your Continuous Delivery game, get in touch with me.?

要查看或添加评论,请登录

Guy Coleman的更多文章

社区洞察

其他会员也浏览了