I have attended this year’s exciting //build/ tour in Pune. Last time, it was in Bangalore. Those who are new to //build/ tour - this event is a one-day technology event of the biggest developer conference powered by Microsoft where next generation technologies, technology roadmaps are showcased. More details here.
Undeniably great speakers have lined-up for the event and below are some of the notes that I managed to capture during the event, in no specific order.
Windows IoT & Azure
IoT has lot of offerings in Azure portal. Here goes the short list:
- Azure IoT Suite – business solution to manage your IoT devices
- Azure IoT Starter Kits – development board that are ‘Azure Certified for IoT’, sensors and actuators.
- Azure IoT Hub – connect, manage and monitor your IoT assets
- Azure IoT Gateway SDK – connect your devices (includes legacy devices) to gateways to manage at central point, run analytics and wherever on-premise computation is necessary. Typically used when your IoT components like sensors can’t be connected to cloud.
Now to remotely control UWP application running on Windows IoT you can use Windows IoT Remote Client app from Windows Store. More details on setting up the device and app is available here.
As a side note, Lambda Architecture is commonly used architecture for IoT.
UWP in Xbox
You can deploy UWP app to Xbox One devices, starting with Windows 10 Anniversary Update. All Xbox One retail kits can be converted to dev kit. UWP apps can be regular apps and games. Other than gaming experience, Xbox also provide TV experience which multiplies your dev opportunity. Xbox default sounds can be used for UWP apps so that user’s get the same experience across the app. More details here.
Augmented Reality in UWP
Vuforia SDK now can be used for Augment Reality in UWP apps. Vuforia SDK supports HoloLens too.
HoloLens SDK (with emulator) is available to public for developing holograhic apps. More details on getting started is available here. Most interesting info – in emulator you can use Xbox One Controller to navigate in your 3D world and do gestures like air-tap, gaze, etc. using controller buttons.
Xamarin iOS emulator is available with VS2015 Update 2. This will eliminate the dependency of a Mac machine for your iOS development. However, it is always advisable to test your app in real device before publishing to store. Also, you can take advantage of Xamarin Test Cloud to test your apps across different devices.
Project Westminster (Hosted Web App)
Project Westminster is a UWP bridge to bring your web apps Windows 10 platform. The demo of this session was indeed interesting. A hip-hop music composing website (web app) was converted to UWP app which runs on desktop and tablet. Then the same app is deployed on phone. In desktop and tablet, you can tap on any instrument to create music. However, the phone experience was surprisingly different. You can select an instrument and shake your phone. With respect to your phones movement, sound will be generated. Ain’t that sound interesting? That made the crowd applause.
The demo also showcased how you can access native APIs like live tiles, camera, etc.. The idea behind this concept is, leave Phonegap and other technologies behind, which has several device dependent limitations and embrace the UWP concept where you can access all the APIs like in native apps.
Hosted web apps are undoubtedly hosted in a server which means you need to be online to access the service. So what you’ll do when your app is offline? There is an tricky solution. Hosted web app can include msapp-error.html webpage which will be loaded when your app is offline. You can either show an offline message or show a minimal version of the app so that end-user’s experience is not affected.
Azure Microservice lets you breakdown you application into smaller independent services. One notable feature was when the newly deployed service fails (typically during an update), that service will be rolled backed to it’s older version automagically. Azure microservices can be written in an programming language and can use any framework.
Another great announcement, Azure Data-Center > AWS + Google. Ain’t that sound great!
Cloud is the future inevitably.
Power BI Embedded is available which allows you to integrate Power BI reports into your application. This is available in preview.
Cross-Platform Web App Development
Manifold JS – Lets you create hosted apps across platforms and devices. It’s a Node.js app.
Volron JS – a platform-agnostic tool for remotely debugging and testing your web apps. It’s powered by Node.js and Socket.io.
Pen and Ink
Windows 10 has lot of investment in inking API. The natural way of interaction where we often jot down notes in a paper using pen/pencil. Using pen or stylus, you can write on the screen and inking API will take care of converting that to it’s correct text. During demo, we are shown how you can fill in a form using a Pen. This is indeed amazing since it recognizes your hand writing and converts that to correct value.
If you take note (say, some reminder task) in Sticky Notes and launch Cortana, those text will be prompted to add as reminder in Cortana which automatically gets synced with your phone and you’ll never loose your important stuff. The way devices and services talks to each other is an amazing way to visualize.
You can read more about inking in windows 10 here, here or here.
Creative Animation with Composition API
Earlier, integrators (those who swims in XAML) used to do storyboard animations in XAML using Blend. The XAML framework sits on top of DirectX. Sometimes, we might need more smooth animation and fine-grained control over animation. The new Windows.UI.Composition API lets you go one-level down to the Visual Layer to write your fine grained animations using C#. This provide more control on your animations to do the vital things. XAML support is on it’s way. More details here.
Windows App Extension
You can register your app for a particular extension so that whenever a registered URI is triggered, your app will be launched. This is similar to deep-linking concept.
Store Engagement SDK
The catchy feature is you can use Feedback class in UWP apps to direct your Windows 10 customers to Feedback Hub, where they can submit problems, suggestions, and upvotes. Then, manage this feedback in the Feedback report in the Dev Center dashboard. More details here.
Project Centennial is another universal bridge which lets you convert your legacy Win32 apps to UWP. You can convert your legacy apps using App Converter. This is preview stage. The converted app runs on desktop and tablets but not on any other form factors like phone, Xbox, etc..
For the demo, the popular game Quake or Doom (can’t recollect which one) from GitHub has been converted using this bridge and played right on the stage, without any issues. This bridge looks promising enough. However, the idea of this bridge is to port your app to UWP and use App Services to communicate with this UWP app to get your business data. That’s my best guess.
Right now, Cortana is using Voice Command Definitions (VCD) files to listen to the commands. However, this will be replaced with another cognitive service – LUIS (Language Understanding Intelligent Service) in the long run. In a nutshell, Cortana starts learning you more personally than your spouse. Alarming!
(Intelligent) Bot is going to be the next big thing which powers Conversation-as-a- Platform. Microsoft Bot Framework is available to create bots. You can leverage existing bots service or create a new bot of your own and teach the bots using machine learning.
Microsoft Graph Explorer – you can test run your Graph APIs here.
Shazham – Windows 10 version is developed as hosted web app and audio playback logic is written in C++.
If you are waiting to hear about Windows Phone, then there are no news on windows mobile platform. Since, Windows 10 runs on one core and essentially you can target your app on any device running Windows 10; I don’t think we’ll hear news about any specific platform alone going forward. In short, Microsoft will be more interested to talk about Windows 10 in general than about any specific platform. Another fact I noticed was Microsoft was trying to target an era beyond mobile. Yes, they missed the mobility ship! The talk was more concentrated on services – bots, cognitive services, etc. that works in platform agnostic way.
That’s all about the event.
Hope you enjoyed this lengthy post.