BUILD 2016 Day two of Microsoft's Build conference was focused on Azure, the company's cloud platform, with new features announced and preview features moving to general availability.
Top of the list is Azure Functions, a new service which lets you write code that runs in response to various triggers, such as an HTTP request, a file being uploaded to Azure storage, or a message received on an Azure Service Bus. You can write code in a variety of languages: "C#, Node.js, Python, F#, PHP, batch, bash, Java, or any executable," according to the docs.
Azure Functions looks like an answer to Amazon's Lambda or Google's Cloud Functions, which perform similar roles, though Azure already had something similar, called WebJobs, and Azure Functions use the WebJobs SDK. "Azure functions are an evolution of WebJobs," Azure Program Manager Corey Sanders told The Reg. A new Dynamic Service Plan means that Functions can scale seamlessly.
Another new feature, now in preview, is Power BI Embedded, which is a new service that lets developers include data analytics and visualization reports in applications for external users, billed on the basis of the number of report views. The existing Power BI is an Office 365 service for internal use only. By contrast, Microsoft will only license Power BI Embedded for external users.
"Power BI Embedded is only intended for use by external users, and may not be used within internal business applications," says the FAQ.
Microsoft also announced general availability of the Azure Service Fabric – designed for applications composed of microservices – which has been in preview for nearly a year. There is also a public preview of Service Fabric for on-premises Windows Server, and a private preview of Service Fabric on Linux. Microsoft says that Service Fabric is used by many of its own services, including Cortana, Azure SQL, Azure IoT and Skype for Business.
DocumentDB, Microsoft's NoSQL cloud database, is getting global database support (data replicated across multiple regions) as well as protocol support for MongoDB, which means you can use Apache MongoDB APIs and drivers.
Azure storage is getting an option to encrypt data at rest with AES-256. This feature is in preview and should not be used for production workloads. Other snags are that it is currently only available for the East Asia region, and only for storage accounts created through Azure Resource Manager, not old-style standalone storage accounts (which Microsoft calls "classic").
In the IoT area, Microsoft announced new APIs for managing devices in its Azure IoT Hub service, simplifying IoT application code, and a new Azure IoT Gateway SDK to assist developers in processing IoT data before it is sent to the cloud.
Microsoft also announced five new IoT "Starter Kits," essentially a box containing a small board such as a Raspberry Pi or Intel Edison and a bunch of sensors and components. Developers can build a single-device IoT application, preferably (from Microsoft's point of view) using Azure to monitor and report on the data, by following its tutorials. Starter kits cost from around $50 to $175.
On the developer tools side, the new Visual Studio Azure Tools and SDK, now at version 2.9, makes a number of additions and improvements, including performance diagnostics with Service Profiler, a preview of Tools for Docker, Service Fabric Tools for Visual Studio, Azure Resource Manager tools for Visual Studio Code, and diagnostics for Azure Event Hubs. The new SDK is required if you use Visual Studio "15," the forthcoming version now in preview.
Big news at Build?
At his keynote, corporate VP Scott Guthrie talked up Azure growth, stating that there are more than 120,000 new Azure subscriptions created each month, and that 5 million organizations now use Azure Active Directory (required by Office 365). The news announcements were solid but hardly groundbreaking, other than the Xamarin announcement that the recently-acquired cross-platform mobile toolkit will now be free with Visual Studio.
Xamarin is important to Microsoft's Azure ambitions, since almost all mobile apps have a cloud component, and many cloud applications support mobile clients. Microsoft is more concerned about building its cloud revenues than charging for developer tools, and Xamarin strengthens its ability to support iOS and Android.
In other respects, the lack of breakthrough announcements at Build is mainly because Microsoft updates Azure frequently and incrementally, rather than reserving news for its big events.
At Build there is more buzz about Azure than about Windows 10, despite the range of improvements there, and Microsoft's cloud ambitions remain on track.