At Build, Microsoft delivers AI to mainstream software developers

nadellabuild17-2

Microsoft Corp. put the convergence of artificial intelligence and cloud at the center of this year’s Build, its annual conference for software developers.

As emphasized in keynotes, breakouts, and demonstrations on the expo floor in Seattle, Microsoft’s goal is to “bring artificial intelligence to every developer.” Microsoft’s strategic direction aligns with Wikibon’s recent observation that data science—of which AI, deep learning and natural language processing are salient specialties—has become the heart of modern application development.

At this year’s Build, the chief Microsoft announcements showed that the company is investing heavily in new tools, platforms and services to help developers weave AI and other forms of data-driven intelligence into every conceivable type of application on every platform.

Chief among the development platforms where Microsoft is focusing its investment are the “intelligent cloud” and “intelligent edge,” spelled out in Chief Executive Satya Nadella’s keynote. In that regard, this year’s Build featured an impressive range of Microsoft announcements designed to help developers to infuse AI and other intelligent applications into the cloud and the Internet of Things, as well as into Microsoft’s longstanding strongholds in enterprise infrastructure and at the desktop.

Where developers are concerned, the principal announcements at Build 2017 significantly deepen Microsoft’s value proposition in the following areas:

Microsoft platforms are among the most ubiquitous development targets worldwide. Nadella (pictured) started his keynote by highlighting widespread adoption of the platforms in the business and consumer markets. Most notably, more than 500 million Windows 10 worldwide are now active on a monthly basis, as well as 100 million monthly active commercial Office 365 users. In cloud computing, Microsoft Azure remains one of the most widely adopted commercial services, counting 90 percent of the Fortune 500 as users. On the commercial cutting edge for AI-driven conversational applications, Microsoft’s Cortana service now has 140 million monthly active users. And there are 12 million organizations who use Microsoft’s long-established Active Directory technology on-premises or in the cloud.

Microsoft recognizes that cognitive computing is the heart of many innovative development initiatives. Recognizing that developers need tools for AI, deep learning, machine learning and other cognitive apps, the company made several significant announcements at Build. It announced several additions to its established portfolio of Azure-based cognitive services, including tools and application programming interfaces for developers to customize its library of almost 30 off-the-shelf vision, speech, text, NLP and other AI algorithms to go into any bot or other app. It has improved its established Cognitive Toolkit, offering greater support for developers wishing to work in TensorFlow or Caffe2 frameworks, with plans to support containerized deployment of deep learning apps built in the toolkit as well as deployment of those apps to IoT edge devices.

In addition, it demonstrated how it is infusing AI capabilities into Office 365 applications such as PowerPoint. It enhanced its Bot Framework and expanded the range of partnerships that integrate its Cortana chatbot technology into their offerings. It launched the Cognitive Services Labs where developers can experiment with new services that are still early in development. It also announced, through its Bot Framework, the ability to publish AI apps to new channels including Bing, Cortana and Skype for Business. And it has launched a private preview of a batch AI training capability that allows developers to use their choice of parallel CPUs, GPUs or FPGAs for this process.

Microsoft continues its shift toward comprehensive support for cloud-native app development. For all applications, not just those that incorporate cognitive intelligence, Microsoft made several announcements that expand its commitment to containers, serverless, microservices and other cloud-native development. At Build, Microsoft announced general availability of Visual Studio 2017 for Mac, which enables developers to work readily across Windows and Mac environments. It also announced wide-ranging support for scalable, cross-platform application containers of nearly every type, with the ability to run Windows and Linux containers inside every application.

Visual Studio 2017 developers can now deploy Windows Server Containers to Azure Service Fabric. Where the popular Docker framework is concerned, developers can use Visual Studio 2017 as well as Docker Compose to develop, test, debug and develop apps to deploy to Service Fabric, as well as to Docker Swarm, Kubernetes and Mesos. They can run Service Fabric as a unifying middleware layer within and between Azure in the public cloud, Azure Stack in private clouds, VMWare and bare-metal cloud environments. Developers can use Visual Studio 2017 to write Azure Functions and Logic Apps as on-demand serverless code for Azure, rather than stand up persistent containers or other services on devices. They can use Azure Application Insights to track resource usage, performance and other issues surrounding Azure Functions and Logic Apps. The company is positioning Visual Studio Team Services as an end-to-end toolchain for DevOps on all these containerized, serverless and microservices apps. And it plans to take all these capabilities to the IoT edge.

Microsoft is aggressively evolving its Azure portfolio toward edge-facing app development. At Build 2017, Microsoft announced a preview of Azure IoT Edge, which extends the intelligence of its public cloud computing environment to IoT devices and apps for consumer, business, industrial and other scenarios. Following its recent announcements at DockerCon 2017, Visual Studio 2017 now supports development, deployment and management of Dockerized applications on the IoT and the cloud. In Visual Studio and its other development tools, Microsoft now supports deployment, monitoring and management of containerized AI, cloud and other app capabilities all the way out to the multi-device IoT edge. Fundamental to this strategy is Microsoft’s positioning of Azure Stack as an on-premises platform for edge and disconnected environments that benefits from interoperability with its Azure public cloud.

Microsoft is comprehensively enabling cloud-native development in a multi-device, multi-app, multi-platform world. Microsoft made several announcements that will help developers build Azure containers, serverless functions and other microservices for multi-device mobile and IoT environments in Azure, Office 365, Xamarin and Docker. It announced extensions to Microsoft Graph to help developers infuse the knowledge graph’s device insights and contextual awareness of the physical world into Office 365, SharePoint content management, Teams chatbot and Intune mobile device/app management environments. Leveraging these tools and integrated into the next version of Windows 10, new Graph features announced at Build include the ability of developers to use sample graph queries for quick-start cross-app/cross-device development, to query management objects across devices, and to programmatically manage cross-device application state.

It has also published new Graph APIs that provide developers with programmatic access to a common data model, as well as entities and functionality, across Office 365 for building smarter cross-device apps. New Graph APIs enable developers to expose calculated, relevant insights based on a user’s activity, such as identifying what documents are trending or how various users are working together within Microsoft’s suite of productivity applications. In addition, Microsoft is now enabling developers to orchestrate all of these multi-device/multi-app Office 365 capabilities with Microsoft Flow, extend the apps with code hosted in Azure, publish the apps through Microsoft Office Store and make them discoverable through Microsoft AppSource.

Microsoft optimizes its diverse back-end data platforms for “planet-scale” intelligent cloud and edge. It recent release of SQL Server 2017 adds native in-database machine learning features. At Build, Microsoft enhanced Azure SQL Database and added Azure managed databases for PostgreSQL and MySQL. But its most important database announcement at Build was the general availability of the new Azure Cosmos DB. This new cloud offering provides a globally distributed, horizontally scalable, schema-free database to support every type of data and offer several levels of well-defined consistency options.

On a global end-to-end basis, Cosmos DB exposes popular NoSQL APIs and provides developers with guaranteed uptime, fault tolerance and single-digit millisecond latencies in the 99th percentile for their cloud-native and edge applications. It is an auto-indexed database service with auto-replication to any Azure region in the world. Developers can choose any of several data models (key-value, document, column family, graph) and APIs (Document DB API, MongoDB API, Gremlin API for Graph, and Table API). Essentially, Cosmos DB is an evolution of Document DB, whose existing users have already been migrated to the new service.

For more information on Microsoft’s core cloud-native developer announcements at Build 2017, check out the Day One press release, Scott Guthrie’s Azure blog, Harry Shum’s AI-focused blog and the playback of the Day One keynotes.

Photo: Microsoft/screenshot