You are not Google or Facebook. Hell, you are probably not Netflix or Etsy, either. And likely, the idea of having development teams to try to replicate these environments is impeding progress.
The DevOps movement is often fueled by larger software companies who are doing amazing things. The two poster children for the “common man’s” DevOps has become Netflix and Etsy. But they are not common at all. As I witness the topics and chatter on the subject, it is highly dominated by “continuous delivery” and “continuous deployment processes,” — oh, and “Docker.” They steal the show, and give incoming adopters the sense that if you are not doing CD, you are not doing DevOps. But all three of these are not practical for the typical organization.
If I were to guess, let’s say that continuous integration is for 90 percent of the companies out there. Minus those who are only doing dev for line-of-business applications. Then delivery is for nine percent and deployment for one percent. Both the reason and the problem is the CDs imply a particular type of application. One that has a high transaction volume and/or a user base that is geographically diverse.
But even if you do not fit into those categories, it does not mean DevOps is not for you. Because, after all, DevOps is not a thing. It is a framework. And it never ends. Not even Google can claim they have created the ultimate development environment. If they had, they would stop creating new languages and frameworks.
So take a big breath, and succeed at something for yourself, not trying to be Facebook or Google. What you should take from the leaders is the proof that it is possible. But what you need to focus on for yourself is:
- Automating something.
- Release more.
- Bring quality earlier in the pipeline.
- Break down communication barriers.
- Simply make better software.
All of these lead to a DevOps environment naturally.
Unfortunately, an all-too-common response I hear from people when I pitch DevOps is “we are not Facebook.” So they got the message, but their interpretation is wrong. The idea is that DevOps leads with people; people that drive processes; processes that are executed by tools. As long as you are not going backwards, then you are taking the next step.
The vendors are not helping. The vendors are guilty of believing that a single instance of a customer doing CD means that the entire world is. And thus they market ahead of that. Bleeding edge. They are always surprised when replicas of their ideal customer do not suddenly appear. The vendors have a tendency to ignore the masses. They are putting off prospects who dismiss them as being too far ahead. But really, automation for software releases is valuable for all companies, and automated functional testing is, as well.
From my point of view, both automated testing and continuous integration are starting points that any company can embrace. They leverage all the same tools and similar approaches as CD, and thus a way to slipstream into existing environments, as well as onboard the future. The problem is that these new processes mean organizational change. Which will be tough, and a must. Either you do it fast, or painfully slow over a long period of time.
So, basically, the market is its own worse enemy. The early majority has a pipeline inferiority complex, and the vendors keeping pushing the edge of being way too early with messaging, but on time with technology.
Docker is a sponsor of The New Stack.
Feature image: Mighty Mouse in “Wolf! Wolf!” (1945), public domain.