Soon after he became CEO, Satya Nadella suggested that keynotes at Microsoft conferences shouldn't have any product news in them, that they should just celebrate what Microsoft customers were achieving with products, because everyone should already know the product news.
That doesn't quite work; for one thing, the audience is full of customers who are using Microsoft products and showing how other companies are getting more out of the same tools and services might inspire them to try new features but it might also make them wonder why Microsoft hadn't already told them about those options.
SEE: 30 things you should never do in Microsoft Office (free PDF)
The good news is that Microsoft is making sure that any sessions given by customers, partners or vendors at Microsoft conferences are at least 300 or 400-level technical sessions; not simple introductions. And it's still an audience of customers who've come to a Microsoft event to hear from the company about what's new, what's important and what the overall direction is.
Nadella should understand that, since he used the keynote to tell the story of how it was coming to Microsoft's first Windows Software Developer Conference in 1991 that inspired him to join Microsoft – the year the Linux kernel came out and the 'wizards' that eventually became Clippy first debuted.
This year, that direction is almost every direction at once, rather than one big new thing.
There was so much news that it overflowed the keynote and showed up in the two technical keynotes and even in breakout sessions, like the fairly major announcement that .NET is going to back to having just one version (.NET 5) that targets multiple platforms instead of the current mix of Mono, .NET Core and .NET Framework.
Office and Windows developers both got news to think about. It's hard to tell at this stage if the Fluid universal canvas for combining chunks of documents will be more significant than Microsoft's other attempts at doing this over the years – and enterprise developers working with Office might pay more attention to the new Microsoft Graph data connect service. That pulls your Office Graph data out into a secure data lake where you can do queries and analytics against the combination of who works with who on what, and information from your internal applications.
But Microsoft also showed off the work it's been putting into making Windows a serious platform for developers of all kinds; WSL 2 putting Microsoft's own distro of the Linux kernel into Windows would be major news if you weren't distracted by thinking about how open sourcing the new Windows Terminal had required open sourcing something as fundamental as the Windows Console subsystem.
SQL Server on ARM is officially called SQL Database Edge and it's a subset with a smaller engine that's focused on IoT scenarios but SQL Database Edge is another significant expansion of where you can use the SQL Server programming model. At the other end of the scale, how about using Cosmos DB as the secure, distributed key value scale for Kubernetes with the new etcd API, or being able to write data in a document database but read it back as if it was a graph database so you can use multiple database programming models with a single data set?
Kubernetes Event Driven Autoscaling doesn't just combine two of the biggest infrastructure buzzwords of the last few years (containers and serverless). It's also a subtle, tightly scoped response to the way Google is pitching Knative and Kubernetes as all you need for a serverless container stack.
Microsoft also added a permanent free tier for Azure App Service that finally makes it a competitor to Google App Engine for startups with tiny budgets. Power BI getting Python support sounds like a small feature but is actually a major step that brings the worlds of data science and BI visualisation closer together.
SEE: How to build a successful developer career (free PDF)
Microsoft might be pitching Visual Studio Online, the in-browser version of Visual Studio Code, as something for when you want to check a pull request to help a colleague debug a problem rather than when you sit down to code for six hours, "but that's what we said about the web when it first arrived," mused John Montgomery, who runs Microsoft's developer tools team, when we asked him what it was for.
Then there was a new drag-and-drop control system for IoT devices and Azure hardware-accelerated compression and being able to deploy machine-learning models onto FPGAs and cross-platform ink and handwriting-recognition APIs and dozens more useful developments for developers.
The wealth of what's new at Build doesn't mean a lack of direction and the fact that these are significant in terms of moving all Microsoft's platforms forward – but not world shattering – is a good thing.
This is the cadence you get with cloud and platforms that are built as a service. These are the size and scope of announcements you'd expect from, say AWS Reinvent, or if Google Next and Google IO were a single event (which they could usefully be).
Adding in 'bring your student child to the conference' and the Imagine Cup and digital security tools for electoral candidates and election campaigns shows Microsoft's developer breadth. But it also distracts a little from the message that Microsoft is trying to have something new and useful for every developer, not just one big thing.