It’s safe to say, not everyone likes a command-line interface (CLI). Undoubtedly, developers and system administrators love the CLI, but no system targeted at the general population can be exclusively found in a terminal. How is this relevant to developer operations (DevOps)? After all, isn’t it developers and system administrators who are working in DevOps and therefore, they’re perfectly content to work in a CLI?
Often, the answer is yes, but there are many more things to consider. If the entire workflow automation system for your company exists solely in the terminal, you’re going to face some challenges that will grow over time and eventually lead to some serious inefficiencies in your organization. Our message is that you don’t need to settle for one way of doing things. You can develop your systems without compromises so that they scale with you and become a competitive advantage.
For example, an exclusive CLI experience can be a black box—possibly only visible to the one user running the commands. As your development team grows, this lack of transparency can lead to all sorts of inconsistent practices and human error.
A Slack DevOps Solution
There is a way to break out of the command-line and make DevOps an open and consistent experience for the entire organization. Slack now has over 12,000,000 daily active users and over 105,000 subscribed organizations. Anyone using Slack as their messaging and collaboration system can easily take DevOps to where the people are instead of asking those people to come to the command-line.
Slack has already taken steps to help organizations move more of their automation into ChatOps. For example, the Slack Workflows web-based experience, which provides a straightforward means of automating tasks such as collecting data from team members. Popular examples of these workflows include internal surveys, and chat-based standups—which often replace in-person stand-ups altogether.
Slack has also invested heavily in the Slack App Directory which provides their customers with over 1500 third-party apps which cover a wide range of use cases. These apps integrate a vast array of software into the Slack interface and, if desired, can even eliminate the need to use the native UI for the systems. For example, support tickets can be triaged and assigned without opening the website for ZenDesk, sales figures can be retrieved without logging into HubSpot, and document comments can be read without opening Box or G Suite.
These two initiatives have reinforced the value of automation within a platform as widely adopted as Slack. Here are some examples of how a Slack App can help your company improve DevOps across all your teams:
- Create more transparency in the process and metrics across your team’s workflows. Using team channels for workflow automation means that all team members have visibility into the day-to-day operations of the team. Also, unlike the command-line, Slack is broadly adopted across departments, so showing updates in the chat UI will reach more employees.
- Reduce human error by maintaining consistency across engineering teams. A shared platform allows teams to ensure reliable use of all automation. For example, all infrastructure provisioning can have the same settings.
- Accelerate developer onboarding with process & best-practices embedded in workflows which are available in a familiar user experience.
- Even on Mobile, you can run or monitor your DevOps systems. Since Slack Ops can run in any Slack client, they can be used in Slack clients on running in a web browser, a desktop, or a mobile app.
- Deploy your developer’s tools in a platform that loves developers & developers love, Slack.
Previous implementations of ChatOps were not widely adopted, and there were a number of complaints leveled against the technology. These issues included a feeling that ChatOps was intended as a means for management to spy on IT operations, or worse still, to try and reduce staff by automating them out of work. Those fears did not have a chance to surface as these concerns were preempted by more practical questions. How is ChatOps more valuable than the command-line? What problems can they solve that aren’t just as quickly addressed by a shell script?
Some of these may have been fair criticisms for another time, but there are some significant differences between the previous incarnations and the modern implementations. Firstly, the past offerings did not have the backing of a platform as strong as Slack, or its 12,000,000 users. Second, there has never been a workforce more prepared for adopting new technology as we have today. And finally, the technology available was not as pervasive; today, almost everyone carries the ability to initiate ChatOps in their pocket. All of these factors remove previous blockers to adoption and pave the way to more widespread acceptance of the modern version of ChatOps.
According to a Slack user survey, their users report an average of 49% reduction in email and nearly 80% say it improved transparency. Improvements like these can be targeted at DevOps if teams share the same experience across various tools and platforms. Furthermore, vendor lock-in can be avoided if organizations use loose coupling across their DevOps tools. With modern tools, there doesn’t have to be any compromise. Developers can use their favourite languages, deploy operations across multiple platforms, and still improve productivity by only maintaining one codebase.
Instead of DevOps being difficult, opaque, and limited to technical users, it can be liberating and open. The mechanism for this is ChatOps (read: Slack Ops). Although ChatOps has been around for years, Slack Apps have now reached the critical mass that enough people are comfortable using the system that they won’t be surprised when workflow automation and other operations are bubbled up through a Slack chat window. In fact, many users will wonder why more systems aren’t made readily available through the familiar interface.
Whether your goal is to increase transparency, reduce human error, or ensure a consistent process across all your teams, Slack Apps can help you get there. Don’t settle for the way it has always been done, bring your users into a simpler world where DevOps isn’t an unapproachable black box.