How ChatOps drives innovation, transparency & collaboration in enterprise DevOps

ecs-admin 26th January 2016

Since the dawn of the digital age, and even long before that, our culture has been fascinated by the prospect of being able to talk to computers. There’s no better evidence of this than in film and literature – indeed, just about every sci-fi universe is bound to feature at least one form of artificial intelligence (AI) as a central role: without KITT, Knight Rider would have just been a guy with a fancy car. Without HAL 9000, the crew of the Discovery One in 2001: A Space Odyssey might have fared dramatically better. And without R2D2’s help, the Jedi prophecy would never have been kick-started and Luke Skywalker might have lived out his days as a simple farmer on Tatooine. In any event, a development that has been taking the DevOps world by storm in recent months is ChatOps – the practice of integrating ChatBots into a DevOps workflow. While it may still be a couple of years before it becomes sentient, there’s a lot to be said for implementing ChatOps in your delivery pipelines. In this blog, we’ll look at how ChatOps drives innovation, collaboration and transparency in enterprise, and how this facilitates good DevOps practice.

ChatOps puts a human face to automation.

ChatOps centres around conversation-driven automation. What this boils down to is that any command can be handled via an English-language ‘conversation’ with a ChatBot of your choice: from monitoring, to provisioning, to deploying code, to responding to security alerts and even making you coffee! And, while there are several freely available ChatBot scripts – the most popular being Hubot (Javascript), Lita (Ruby), and Err (Python), all of which are open source – it’s easy to customise them to work with specific plug-ins and scripts. This makes it easy to customise your ChatBot to suit the purposes of your organisation, or even a particular project. Ultimately, ChatOps abstracts the complexity of the process and allows complex automation tasks to be carried out with a simple, easily typed command. The upshot of this is that a single message sent to your ChatBot can accomplish what might take a significant amount of time – and, consequently, money – to carry out normally. This is also a bonus for non-technical teams by providing them with the ability to execute complex processes that previously they might not have had the technical skills to achieve.

ChatOps brings everyone’s work to one central location.

With ChatOps, wasting time trying to figure out which of your co-workers ran a particular command or whether the command was even run is a thing of the past – by using a chat client everyone’s work exists in one central place that is visible and accessible to everyone. This encourages collaboration among your team members and the inherent transparency ensures that everyone is working towards the same goals. The benefits to the overall quality of work and working environment are huge here – by bringing your entire team’s work together, there are almost limitless opportunities for cross-pollination of ideas across departments that might not happen if they worked in isolation. ChatBots also facilitate innovation in their own right – firstly, by freeing up time for your team to spend on developing new and innovative projects, and secondly, by providing a framework for innovation by creating plug-ins for the ChatBot itself. The only limit to how innovative you can be is in how far you’re willing to go in customising your ChatBot to suit your needs.

Don’t stagnate by taking ChatOps for granted.

It’s (hopefully) pretty clear from this article that ChatOps provides great opportunities for collaboration, innovation and transparency, but taking your ChatBot for granted could have the opposite effect. Remember that behind the ChatBot are complex processes that have been automated. Encouraging all members of your team to maintain the code and scripts that are in place as well develop enhancements to enable new processes to be accessible from the chat client will go a long way towards staving off complacency. Without this you would create a new sub team within your teams of people that can only execute ChatOps commands and not create or maintain them.

At the same time, new starters in your organisation will benefit from first understanding how the nuts and bolts of your processes work before moving on to using a ChatBot to execute those processes. Once again, this comes down in large part to the culture in your workplace, but bear in mind that using ChatOps should encourage the transparency and collaboration that are key elements of a DevOps culture, which ultimately helps to deliver better software faster.

ECS Digital is a DevOps consultancy with 12 years’ experience implementing DevOps solutions for companies all around the world. If you’re interested in finding out more about our approach and the unique insights we can offer into how to transform your business with DevOps, contact us to request a free DevOps Maturity Assessment.

Image Credit :www.phoenix.k12.or.us

Found this interesting? Why not share it: