In recent times, Software continues to transform the world in remarkable ways and developers are at the center of it. As an IT engineer/professional, it is essential to listen/learn from the industry technology leading annual conferences like Microsoft Build, Google I/O, Amazon ReInvent, etc.
As continuous learner, itz been a decade to take part consistently in disruptive tech sessions. Herez key take away during this week sessions by Microsoft Build 2017 at Hyderabad, India. Itz an annual tech conference and one of 6 events within Asia + only event in India.
This year, they focused around .NET, web apps, the Universal Windows Platform, Win32 apps, Mixed Reality, Visual Studio, Xamarin, Microsoft Azure, Cognitive services, and much more.
With 2 days deeper into code level, it has the below agenda:
Day 1 (Jun 21): Itz a full day of fast-paced, demo-driven sessions, focusing primarily on new technology that you can start using immediately in your projects, with a bit of forward-looking awesomeness for inspiration.
Day 2 (Jun 22): Second day is focused on hackathon to build a fun client, cloud and mobile solution that meet the requirements of a business case given at the beginning of the day. Mobile Cross Platform Xamarin implementation is the focal point.
Industry scorecard of Windows10 is pretty impressive with 500 million devices; 300 million active users of 3.5 average hours. UWP (Universal Windows Platform) is the next Gen to build the common App for all devices, platforms, desktop, laptop, PDA, etc. Desktop Bridge is to modernise Windows10 app. It creates trusted AppX. Improvement in UWP is open sourced at https://aka.ms/uwpcommunitytoolkit/
To me, Top-5 admiring take way from Microsoft 2017 Build.
1. Mobile Center
Microsoft is well advanced positioned in cross mobile App development using Xamarin technology. Xamarin C# achieves the high performance with 100% native App feel.
2017 announcement contains XamarinForms 3.0 with memory performance theme, Embedded Xamarin Forms mixed code and Xaml standard between WPF and XamForm. CanonicalXamarin solution has Android iOS WinPhone portable projects, as depicted below.
Now, they are extending their wings of Mobile development cycle via Mobile Center.
Mobile Center brings together multiple services, commonly used by mobile developers, into a single, integrated product. It helps to build, test, distribute, and monitor your mobile apps, and also implement push notifications.
In Build process, it creates an installable app package automatically with every push to your repository. In Test phase, it runs your automated tests on more than 400 unique device (iOS + Android) configurations. During distribution, end users can install the app via email distribution lists from (Hockey) App Store. In Analytic effort, mobile center uses events to collect rich behavioral analytics data like timely user activity, session duration, Top-X devices, etc.
2. Microsoft Graph
To me, Graph is the powerful data structure to be leveraged in the highly socially connected world business.
Microsoft Graph exposes multiple APIs from Office 365 and other Microsoft cloud services through a single endpoint: https://graph.microsoft.com. It helps to
- Access data from multiple Microsoft cloud services from office to system software
- Navigate between entities and relationships.
- Access intelligence and insights from the Microsoft cloud.
In the conference, they demonstrated a wonderful business use case with high degree of connectivity and collaboration tool set. Bot Demo was built with news feed, notify contact, reference to my known circle, LinkedIn connect, sentiment analysis of the collaborator objects and their schedule calendar. Simply Superb.
3. Progressive Web
Progressive Web App is the mixture of best of web and best of app experience. They are useful to end user from the very first visit in browser tab, no installation required. As the user progressively builds with App over time, it becomes more powerful.
In terms of Microsoft timeline, they introduced "Pinned Site" in Windows 7; "Packaged Web App" in Windows 8; "Hosted Web App" in Windows 10. Now, PWA (Progressive Web App) as the fast and common for the cross platform/devices. Itz characteristics are listed as:
Key benefit is to compete with native. It loads quickly even on flaky networks.
Secret sauce is Service Worker. It is an asynchronous background thread which takes control of all network requests in a page, acting as proxy. It has the ability to intercept and handle network requests along with the pro grammatically managing response caches.
In the conference, they demonstrated the power of Progressive Web using Microsoft Engineering team's internal tool. It was thrilling performance improvement against the traditional App using PWA Builder.
4. Artificial Intelligence
Microsoft Artificial Intelligence (AI) suite comprises with power of Big Data, Cloud and Intelligent solutions. AI has 3 core elements, which are fundamental blocks.
- Massive data
- Big compute
- Powerful algorithms
Microsoft AI eco system is built from intelligent source data (IoT), derive the intelligence behind using ML, AI, BigData Analytic, and finally to serve the smart actions delivered to the end customer.
In 2011, Cosmos DB project was initiated as "Project Florence" to address developer pain-points that are faced by large Internet-scale applications inside Microsoft.
Now, here is an IoT use case with Cosmos in connection with WebJobs SDK. LogicApp Work flow, HDInsight, etc.
Azure Cosmos DB is a global distributed, multi-model database that is used in a wide range of applications and use cases. It is a good choice for any application that needs low order-of-millisecond response times, and needs to scale rapidly and globally. It supports multiple data models (key-value, documents, graphs and columnar) and many APIs for data access in extensible way.
5. Fluent Design
Formerly known as Project Neon, the Microsoft Fluent Design System is the latest iteration in the development of Microsoft's look-and-feel for Windows.
Fluent builds on the Metro design language introduced with Windows Phone. Metro was designed for touch devices in particular; with Fluent, Microsoft is aiming at devices ranging from those without any display at all, through phones, tablets, traditional PCs, to virtual and augmented reality systems.
Fluent design has 5 core themes namely light, depth, motion, material and scale.
The overall design principle here was to create a design language that looks light, features layers and depth and animations, as well as materials. Because of this support for materials, Fluent will also bring back some of the translucency that Windows apps lost in recent iterations of the operating system. Fluent Mixed Reality is derived from Unity.
The main purpose here is to give developers access to a single design language that will work well across devices.
Closing Note
In a nutshell, "AI FIRST" is upcoming industry mantra based on Microsoft Build, Google I/O, Amazon ReInvent, etc. As those industry technical leaders are ahead in the business, it is essential to have the continuous learning around this emerging and disruptive technologies.