I’ve spent my life working with devs and ops guys the last two decades. Seeing the paranoia, the anxiety and hearing about the nightmares.
Looking back the web has changed fundamentally the last two decades. From purely static html websites, to sites with with a few perl scripts in the /cgi-bin/ folder that wasn’t really mission critical (is my email contact form still working?), to sites that became apps/databases (database-backed web sites anyone?) to today where almost everything is a web app powering our lives in every mission critical way imaginable. A huge shift.
Starting out, operations meant sysadmining servers with manually updated static content. The sysadmin job was mostly about periodically ensuring that your servers were patched and that your datacenter operators were doing their job of providing power and Internet to your servers. Today, ops is a 24/7 job of keeping an app running and even the simplest successful apps involve a lot of services running on the inside. Multiplied by a dramatic increase in the rate of change. From the manually updated static content, to database based websites where code changes were deployed on a periodic schedule, to modern web apps, where changes are deployed as soon as a developer feels like it. With continuous delivery it has become best practice that every developer is responsible for the code he/she writes and the services he/she builds.
This evolution has caused an evolution in the way teams and organisations operate. From the one lone sysadmin keeping servers patched to the pressure of the ops life spreading to the whole team. The lead dev haunted by nightmares (yes, real nightmares) in which the distressing “beep!” is going off, the riveting product meeting automatically paused by the CTO getting a text message and the colleagues anxiously awaiting the content (usually just a message from the girlfriend), the couple of minutes worrying for the whole team about the “down” alert before they get the releasing “up” alert, the planning required by the lead dev to go on one weeks vacation totally offline. The modern ops life affects the whole development team and organisation (and their families, girlfriends and boyfriends). Today ops isn’t just a technicality, but a fundamental human issue for web people.
The untold truth is that being a modern web developer is a very demanding job - a literal 24/7 always-on job. A job with enormous pressure and worrying. A job in a non-perfect world of things that could be improved, always with the paranoia that at any time something could go down. A hard job even for the non-dev team members - living with the pressure your co-founders and colleagues are dealing with. The many years it takes to become good at ops because no one has built the tools with the craft and practice embedded in them.
Living with an web app is a hard lifestyle.
That’s why I’m so fundamentally excited about what we’re up to with Opbeat. To make living with a web app just a bit more human. To make the lives of developers (and the whole team) just a bit better.