Early in my career, we talked about “Bare Metal” servers. This meant that if you wanted to deploy something, you had to order a PHYSICAL SERVER from some company (Dell or whatever). Your System Administrator (who may or may not have looked like a mafia enforcer, you know who you are) would go pick the server up off the loading dock (possibly with one arm – and we’re not talking about a Raspberry Pi here), unbox it, mount it in the appropriate rack, hook it up to power and ethernet, and begin installing the operating system, lockdowns, and eventually, the software you wanted. And then they might just come stand in your office door and stare at you for a while. Oddly specific, I know.
Fast forward to today where everything is in the cloud. I’d like to coin a new term (and, apologies if it isn’t original, but it is to me): Bare Vapor. Instead of relying on some muscular individual who could probably make anyone you know disappear, now if you want to deploy something directly to the cloud, you have to either spend hours or days spelunking through the appropriate vendors documents and hope you get it right, or hire some other budding mafia heavyweight (or possibly a 90 pound nerd) who knows the ins and outs of one of the major cloud vendors (AWS, GCP, Azure, etc) to configure what you need. Might look like “progress” but seems like it continues to obey the “law of conservation of pain in the a$$.”
Point being: deploying apps is still hard, especially if you try to do it at the lowest level and haven’t had the opportunity to develop appropriate scar tissue. I’ve personally found that using “wrapper” services who provide more user-friendly interfaces that abstract away some of the complexity of the underlying cloud to be very helpful (think Duplo Cloud, fly.io, et. al.), but the downside is the explosion of account/billing management that comes with it.
Be careful out there. Also, get off my lawn.