…and I assure you, I’m no happier about it than you likely are.
Basically, all new developers use VScode (or better, its in-browser equivalent GitHub Codespaces), a Microsoft product. They write code of varying quality and then stuff into GitHub, a Microsoft product. If they’re lucky / unfortunate enough to have a production environment, they’ll often kick off a deployment to that environment via GitHub Actions.
Microsoft Azure is apparently a cloud.
If they can integrate “deploy to Azure” into this toolchain somewhere, then staying within the Microsoft ecosystem start to finish becomes a default that other cloud providers can’t touch.
Well, what about AWS?
AWS is a non-starter in this space. Creating an AWS account is significantly out of the way for basically every developer because the experience is crap.
You need to fiddle around with roughly a dozen services to get your first EC2 instance up and running; even going with Cloud9 (their in-browser editor that people might use once, recoil from in disgust, and never revisit) requires a full AWS account setup, fiddling with IAM unless you’re fool enough to run such a thing as the root account, and then basically taking the punches on the chin.
It’s not well-integrated. And since basically nobody uses it, you’re not going to find a plethora of blog posts about how this works.
GCP? They hire smart people, as they insist on telling me constantly…
Google has an easier developer onboarding experience. But you still have to go seek out Google Cloud as a distinct offering and end up making an affirmative choice to use it.
They’ve gotten a pile of SDKs and other technologies like Firebase to see decent adoption. But they don’t have an IDE answer.
They also clearly have a better integration story than AWS does since Google teams are apparently allowed to speak to one another in the company cafeteria. But that story remains weak at the introductory level—and that’s what matters.
Meanwhile, if they’re able to execute this correctly, Azure (federated to GitHub) becomes a button in the developer’s IDE or a tab in the GitHub interface.
They already have a sizable and thriving developer ecosystem. The trick / pivot here is going to lie in making their offering appealing to a different subset of developers.
I’m speaking, of course, of myself in my role as the founder of my side project, Twitter for Pets.
Twitter for Pets
Tomorrow, I’m going to go down to City Hall and file registration paperwork for Twitter for Pets, the premier social network for pet communication. Thanks to the miracle of hard work, a mountain of venture capital, and the winds of privilege at my back, over the next 10 years it will grow into a publicly traded company that’s a component of the S&P 500.
At some point during that growth trajectory, Azure (and frankly, any enterprise vendor) needs to have an on-ramp via which I become their customer. Without that, the vendor is serving a long-tail market that will increasingly choose Not Them whenever possible.
I want to emphasize this point because I think it’s overlooked.
Today’s development practices that startups use are what large enterprises will be using in five years. Enterprises love describing themselves as “like a startup;” the inverse is almost never true.
Microsoft knows how to speak Enterprise. Via their GitHub and VScode offerings, they’re learning how to speak Startup, too.
The trick is going to be integrating that pathway so that it doesn’t feel like two Microsofts (or two Micros Soft?).
The key to pulling this off is going to come down to timing.
Timing is everything
If they were to enable this tomorrow, it would likely set back adoption of Azure by a good five years at a minimum. This is because Azure is still beset by problems every time I try to experiment with it.
Maybe I’m just a beautiful bespoke angel that magically trips over every corner case—but I strongly doubt that.
To me, the product isn’t ready. It’s getting better all the time, but they’re clearly targeting a web console-first interaction model instead of being API-driven. Azure’s not like other clouds.
It’s going to be incredibly painful for them to shift to this model of operating. But the rewards are bountiful if they can do it successfully.
In fact, it has the potential to be the next Heroku with a reasonable “next step” when customers outgrow the curated version. It also has the potential to offer a house that comparatively makes the other cloud providers look like they’re dropping off a pile of bricks and lumber in the driveway.
All Microsoft has to do is not completely screw it up.