Cloud computing on the cheap and the cost of missed opportunities
Writing about the advantages of cloud computing in 2016 feels a little like writing about the advantages of streaming music. That would be old-fashioned even for this blog. Yet there’s one concern I keep running into and trying to dispel, the price of the cloud and whether it’s good value. To borrow the words of a veteran of corporations and startups, you’d be hard pressed to find bigger spoilsports than Legal and Finance. I talked about cloud costs at a backendiste.cz meetup.
First, allow me a small detour. My mother-in-law recently bought a pool kit at an unbeatable price. The joy lasted until I found out I’d have to assemble it. There were about ten steps, which I won’t burden you with. After a full day of work we got to step nine and realized we’d made a mistake in step two. It was a fatal mistake that made it impossible to finish assembling the pool. Long story short, we drained it, took it apart and did the whole thing again the following weekend, with all the trimmings. Fortunately it worked out.
Economics has a concept called opportunity cost.
“… It corresponds to the value of the most valuable activity or good an economic agent must give up in favor of another. For example, if you decide to go to the movies in the evening, you give up the chance to work overtime and earn money at the same time. The wages you didn’t earn are the opportunity cost of going to the movies.”
In my mother-in-law’s eyes we saved money on the pool. Counting the opportunity cost of my labor, we could have had two pools, assembly included. When the discussion turns to cloud costs, especially with your CEO, CFO or whoever holds the purse strings, you need to count the opportunity cost.
Back in 2013, when we moved at GoodData from the public Amazon Web Services (AWS) cloud to the private Rackspace cloud, expectations were high. Price mattered a lot, alongside the performance boost of dedicated hardware. Comparing the two bills made the decision look obvious if you left out the opportunity cost. Perhaps the worse consequence of this cost optimization was losing access to infrastructure as a service on AWS and having to host everything ourselves whenever we needed it. With a little exaggeration, Rackspace was server colocation and we cobbled together the whole “cloud” ourselves on top. That may be the wet dream of more than one hardware guy. For a software developer, it’s a nightmare at best.
Whenever you get into a discussion about whether the cloud costs more or less, I suggest converting the difference to developer time, in person-days. If I told you a MySQL or PostgreSQL database purchased as AWS RDS cost CZK 3,000 a year for a t2.micro instance, would that sound like a lot or a little? Add it up with me. For CZK 3,000 a year I get monitoring, alerts, upgrades including security fixes, backups and easy administration, including scaling up through a web interface. Take a developer running the same database in-house. If they spend one day a year on it, getting at least backups and monitoring in place, that costs me CZK 4,500 at current labor rates. And that’s leaving aside that I don’t believe you can set up and operate a production database in one day a year. Patches and upgrades alone will take longer.
I can’t find it right now, and I hope we can find it together, but my friend Křečák wrote about Pareto’s 80/20 rule as it relates to building things in-house. That risk needs to be factored into the cost of going outside the cloud.
The cloud isn’t always the cheapest option. Still, remember to count the opportunity cost whenever the cloud looks expensive.
Related articles
Related CZ Podcast episodes
- #261 · Leadership
On leading people and teams. · Czech audio