This week Gerhard is joined by Justin Searls, Test Double co-founder and CTO. Also a š magnet. They talk about how to deal with the pressure of shipping faster, why you should optimize for smoothness not speed, and why focusing on consistency is key. Understanding the real why behind what you do is also important. Thereās a lot more to it, as its a nuanced and complex discussion, and well worth your time.
Justin Searls: So DevOps, just like so many things in open source, became a hot and trendy buzzword that was heavily marketed and associated with either products or sort of halo projects when it comes to recruiting in like big tech companies. And the original idea that DevOps would be like test-driven development, and if you just gave developers testing, they would incorporate it into their team room, they would automate away a lot of the pain around testing and quality assurance, and then the intrinsic quality would increase at a marginal decrease in that teamās ability to deliver things quickly⦠And in part, accelerated by the fact that they no longer had other people to have to communicate requirements to, so that things can be tested. So like the theory went, if we just did that with operations, we would get the same lift.
And to me - I had that experience, and it was called Heroku. You know, it was the most DevOps thing that I had ever used in my entire life, was being able to say āgit push herokuā, not have to think about my operations at all, but know that it was like taken care of, that I had answers to every question about scale, and about adding on additional components, without necessarily having to turn it into my side hustle or my day job or my identity.
But DevOps as a term has changed, as I think the Agile era of the aughts sort of undervalued and played down the importance of operations as a practice. I think a lot of the people who are the Linux sysadmin archetype of the late ā90s might be seen as sort of getting their comeuppance now or their day in the sun of lots and lots of new innovations and technology that are focused on meeting the same kind of just core desires⦠You know, some of itās like āHey, how big can we make things? How fast can we make these? How can we automate all of these very fancy and cool, but maybe a little arcane and unnecessary at small volumes and scales, like orchestration of like lots and lots of real and virtual systems up in the cloud?ā So DevOps and automation tools have enabled and empowered lots and lots of really cool stuff.
And my experience, of āI just want to be able to āgit push herokuā and have my app work in the cloud and not have to worry about it ever againā is, I think, still the pinnacle of what I would want as a developer. And of developers that Iāve talked to that have had that experience in real life, they all wish that we could still have that.
[28:10] And Heroku still exists and itās still a thing, and I love the people there and I love the product, but clearly, itās not a flavor of answer that the market is searching for, because everyone thinks that theyāre going to need Google scale and Facebook scale kind of tools for the job thatās in front of their very straightforward CRUD app, with very few users. And this is all of a piece with sort of startup culture that everything needs to be a billion dollar unicorn to be valuable, and so you have to presume the conclusion that of course theyāre going to reach that scale, so then you may as well just on day one reinvent the universe in AWS through all this automation.
So DevOps as an overall meme in the industry I think has been net negative, and slowed down a lot of teams by way of distracting them, where the fact that teams now have to hire a certain number of DevOps people, quote unquote, āto full time just keep the hamster wheel spinning of their cloud-based computingā, whereas before you might even have had an on-premises server that was just sort of sitting there and was just on and workedā¦
Thatās what I, in spite of the poll results - I think like 44% of the people saying sped up⦠I think some percentage of those people are just people who like really geek out about DevOps technologies and kind of donāt care and are just team pro-DevOps⦠And some percentage are just people who like living in the ideology that we live in and probably just never had the experience of what if you could just set it and forget it and not have to worry about it again? Because if itās a means to an end, why would you want the thing that required a ton of effort and thought and complexity and specialized skills and so forth, and constantly having to read up?
So Iām coming across as pretty anti-DevOps here, but I think that when you look at the replies, the number one point of contention is that no one has a shared understanding of like what we mean by the word āDevOpsā. And so just to focus on automation here, itās - yes, I love real automation, but I donāt think that what weāre typically describing around DevOps related activities is like actually automating anything, in terms of actually automating away a problem.