SpeakerFilip Van Laenen

So you're going to run your project in a public cloud. That should be easy, because everything is taken care of, “as a Service”, right? Well, think again, because it turns out clouds have trenches too. And sharp, bleeding edges.

Sure enough, you don't have to set up any hardware. But you still have to set up virtual machines, nodes, containers, or whatever it is you'll be deploying your software to. This will have to be configured in a development environment. And a test environment. A staging environment. A production environment. And a couple of environments more, because it’s easy and cheap to create more environments, right? You better think that through from the start of your project.

Then there’s security. Not just the firewalls that have to be configured, but authentication and authorization. Your data isn’t just sitting around on a local server in an internal zone protected by your corporation’s firewall. It’s in the cloud! Uploading data to the development environment is suddenly the same thing as running a production system.

Performance becomes a new challenge in the cloud. You probably won’t be able to outscale Google, Microsoft or Amazon, but they can pretty easy outscale you with a large bill.

And finally, the joy of beta versions, or if you’re a privileged partner, alpha versions! Are you sure you want to touch them? Or can’t you afford to not touch them? You’ll be bleeding anyway.

Developing software in and for the cloud is a lot of fun, but don’t expect to always be on cloud nine!