20 minutes. That’s the amount of time most developers are willing to spend installing a tool or platform that could become the foundation for their software. I’ve watched our industry obsess on the “out of box” experience which usually translates into a single CLI command to get started (and then fails to scale up).
Secure, scalable and robust production operations is complex. In fact, most of these platforms are specifically designed to hide that fact from developers.
That means that these platforms intentionally hide the very complexity that they themselves need to run effectively. Adding that complexity, at best, undermines the utility of the platform and, at worst, causes distractions that keep us forever looping on “day 1” installation issues.
I believe that systems designed to manage ops process and underlay are different than the platforms designed to manage developer life-cycle. This is different than the fidelity gap which is about portability. Accepting that allows us to focus on delivering secure, scalable and robust infrastructure for both users.
In a pair of DevOps.com posts, I lay out my arguments about the harm being caused by trying to blend these concepts in much more detail: