Microsoft's developer-centric Build conference opens its doors this week, the second such gathering since the minting of the "new" Microsoft with Satya Nadella in the driver's seat. The changes to Microsoft since Nadella came on board have been encouraging: a firm consolidation of Microsoft's presence in the cloud, the transformation of its app-dev ecosystem via open source .Net, and much more.
Still, there's a lot more Microsoft could do for its developer audience and for itself. Here are a few suggestions for Microsoft's agenda at Build and the reasons why.
Show us why UWP matters, if it does
In an alternate universe where Windows actually mattered as a mobile platform (let's face it, it doesn't), the Universal Windows Platform proposed by Microsoft would have made more sense. A single, unified binary that runs across Windows phones, tablets, desktops, and laptops without regard for form factor or UI behaviors -- we mean it this time!
With Windows Mobile a nonevent, UWP in the abstract presents a conundrum. Developers want to know why UWP is supposed to be a winner, and they need real-world use cases, not hypotheticals. Some advantages are already clear: better app security, enhanced deployment convenience, elegant support for touch-based environments.
The bad news is this comes at a high perceived cost: turning one's back on the broad compatibility and relatively minimal restrictions of the legacy Win32 app framework, since UWP is Windows 10-only. And some supposed slam-dunk advantages, like app delivery through the Windows Store, provide nowhere near the incentive that was promised. Finally, with the glacial page of OS upgrades in the enterprise, why dive headlong into a technology with no backward compatibility?
Consequently, almost no developers are picking up UWP. It appears to be as dead in the water as Silverlight. It's time for Microsoft to either make an ironclad case to devs for UWP or to dump it.
Details on Azure Stack, especially Azure Service Fabric SDK
The Azure Stack is Microsoft's on-prem edition of Azure -- "the power of Azure in your data center."
Among the promised components for the Stack is Azure Service Fabric, which has been called a "quantum leap" microservices solution that one-ups every challenger from Kubernetes to Docker Swarm.
They're bold words, and while an Azure-hosted version is available in a preview, it'll matter even more when it can be run on-prem. Word is Build will give us the SDK that can be used for local deployments, but more details about when Fabric is likely to drop -- and in what form -- would be nice.
Even better, Microsoft should offer more insight on a tantalizing hint dropped by Azure honcho Mark Russinovich. When asked if Service Fabric might be open source, he noted it was "something that we’re discussing."
How could this happen? Matthew Snider, senior program manager for Service Fabric at Microsoft, mentioned in a discussion that there were "several ways this could be done over time," such as open-sourcing the programming model layers and "working down the stack from there."
Details, please -- sooner rather than later. Build is the ideal environment for it.
SQL Server on Linux
Specifically, let's hear about which editions of SQL Server will be available on Linux. All of Microsoft's discussions so far have revolved around "SQL Server 2016," but anyone possessing five minutes' experience with Microsoft knows every version of SQL Server comes in several flavors. You pick the one that best suits your needs, from the free-to-use-but-scaled-down SQL Server Express to the massive SQL Server Enterprise.
Which will it be? All of them? Some of them? And what about the price, especially since Express is "free"? (It's unlikely SQL Server Express would constitute a major challenge to MySQL/MariaDB or PostgreSQL, but you never know.)
Join the OIN and be a real open source player
Microsoft's embrace of open source has been heartening, and most of the company's actions look good on paper, like the flurry of open-sourcing around .Net. But it's hard not to view the moves as Microsoft bolstering both its appearance and its soft power across platforms.
What hasn't changed: Microsoft using its patent portfolio as a form of not-so-soft power, where as Simon Phipps put it, "stalking users and developers of Linux and Android and shaking them down for patent licenses." Such behavior puts the lie to much of Microsoft's professed stance about open source.
If any open-source-related announcements come out of Build, let one of them be Microsoft joining the Open Invention Network and forswearing offensive use of patents for the collaboration open source is supposed to entail. It's a long shot, but it would buy Microsoft far more cred in the community.
The future of Xamarin and Microsoft's cross-platform app-dev chain
While we're on the subject of open source, let's hear concrete details about Microsoft's plans for the newly acquired Xamarin. As an open source .Net and C# platform, Xamarin made it possible to write native Android and iOS apps in Visual Studio, which Microsoft itself struggled to do. The company even told cross-platform developers that Xamarin would be a better solution than its Bridges strategy.
This is great news for Microsoft's core developers -- the .Net and C# crowd, who are being rewarded for their fidelity to Microsoft's tool set and can now build for platforms other than Windows with far less hassle.
What could Microsoft unveil here to make them even happier? Maybe a version of the Xamarin Test Cloud tightly integrated with Azure, as part of Microsoft's growing portfolio of cloud-hosted dev tools or maybe rebadged versions of Xamarin's tools integrated with Visual Studio. Either way, the burden is on Microsoft to show it'll do more than stamp its name on someone else's work.
App dev on mobile platforms that count
Microsoft is clearly interested in allowing Windows devs to build cross-platform apps with its tools. Let's see it lead by example and build more versions of its apps for other platforms that act like first-class citizens.
The future isn't one platform on multiple devices; it's multiple front ends for unified back ends. It's more profitable -- and a lot easier -- to put Microsoft's products on Android and iOS than it is to try and convince existing Android and iOS users or even newly minted mobile users to buy a Windows-powered phone.
Here and there, Microsoft has been getting the message, with more of its product line and even unique creations like the Next lock screen showing up on other platforms. But the pace needs to pick up. Microsoft's initiatives for cross-platform development (as noted above) can make that happen. Seeing Microsoft itself set the pace would be a good next step.