Join Walt Ritscher for an in-depth discussion in this video Why Windows 10 is a great developer platform, part of Demystifying Windows 10 Universal Apps and Cross-Platform Development.
- In this video, I'll look at why Windows 10 is an awesome operating system for developers. Updating your operating system to a new version is an exciting, yet nerve wracking prospect. On the one hand, you are eager to see the new features, get the latest security innovations, install better drivers, and get up to date bug fixes. On the other hand, you wonder how long it will take you to get comfortable with the system changes and fret whether the operating system will break your favorite applications. In this video, I want to explore Windows 10 from a programmer's viewpoint.
What are the improvements in the new operating system that make your applications better for your users? I'm talking about changes like the improved touch features in Windows 10, the simplified writing gesture based applications for tablets, and smart phones. Also, what features in Windows 10 make it easier for you to do your programming work? So, here's my short list of topics for today. I'll provide an overview of these topics in this video. I'll start by looking at one code base, which is a way of writing a single application code base for universal Windows applications. We'll take a brief look at the Windows store, how you can deploy your application through a centralized marketplace, we'll look at the phenomenal touch based interactions that are available in Windows 10.
And the better built-in multi-monitor support. Also, we'll look at something called Continuum for Windows phone, you're going to like that. Also on the agenda is the Action Center, and how to add toast notifications to applications. And finally, we'll look at speech commands and Cortana, which is Microsoft's new digital, personal assistant in Windows 10. I'll start by looking at the idea of one codebase. This has to be my favorite feature in Windows 10. Microsoft created a unified operating system that works across a wide range of Windows hardware.
You can code a single app, and with some minor tweaks, have it run on Xbox One and desktop computers. It'll also run on touch verse devices like tablets and Windows phones. It can also run on Microsoft Hollow Lens, a cordless, self-contained, head mounted Windows 10 computer that uses cutting edge sensors combined with a high definition 3D to create augmented reality applications. Finally, there's also a version of Windows 10 that runs on embedded devices. You might know these by their current buzz word, internet of things, or IOT devices.
This means your app can run on Intel based point of sale systems, vending machines, wearables, it can run insides robots, and it can work on hobbyist boards like the raspberry pie. You've probably installed apps from an app store on your smart phone, so you know how they work. Apps are created by developers, uploaded to the store, and distributed to consumers. The store charges the customer, and then takes a cut, then pays the developer the remainder. In Windows 10, there is a universal app store. The first app store in the industry designed to provide a single platform for delivering the full range of apps, games, software, and services to the entire Windows ecosystem.
In all those devices I mentioned a few minutes ago, your app will be available in the Windows 10 store for those devices. And the store is available across the global market, so you can sell your app to millions of customers around the world. Windows 10 is a touch first operating system. If a customer device has a touch screen, the operating system will adjust to be touchable. For example, the buttons and icons get bigger for better support of finger sizes, and the operating system understands pinch, zoom, and swipe gestures. And you know what? Your app just works in this touchable arena.
The Windows API makes it easy to add touch support to your interface. Windows 8 and 10 feature vastly improved multi monitor support. Managing multiple monitors was a hassle in Windows 7, often requiring the help of third party software. Windows 8.1 introduced per monitor DPI scaling, so you can adjust the Windows interface to different dimensions if you are using two displays with varied resolutions, or you can connect a low res Windows tablet to an external monitor. It's a drastic increase in usability when you are mixing and matching display types.
Speaking of additional monitors, have you heard of Continuum for Windows phone? If you have a phone with two graphics cards, you can hook the phone up to another monitor and display it on the big screen, plus, the phone can also work with keyboards and mouse. The phones with this enhanced hardware are slated to appear in the Fall of 2015. This is cool for consumers because they can utilize their phone as a full featured computer, and that could be translated into more customers for your apps. Microsoft has implemented the Action Center in Windows 10, which notifies users about new activities in Windows 10.
Your application can add items to the Action Center. There's also a pop up notification system called notification toast. These information screens slide in from the side of the monitor to inform the user of an important message from the application. You can use this feature in your app. Now, let's take a look at these notifications in action. To do that, I'll bring up the Action Center. On my Windows 10 machine, I've got my task bar set to auto hide, so I'll move my cursor to the bottom of the screen, and over on the right side of the task bar, you'll see an icon.
This one. That's the Action Center. Now, what the Action Center does is it takes any notifications that have appeared on the screen and it keeps them there for later use, that way the user, if they missed a notification, they can come into the Action Center and see the message. In my case, the auto play system has told me I've plugged in my phone, and I've gotten a few emails in the past couple of days, so I can see those emails on this list. At the bottom of the screen is a list of other things that I can do. Like, I can connect to other devices, I can connect it to bluetooth, I can set my quiet hours.
I'm going to concentrate on the top half of the screen. Now, once I've got a message, I can dismiss it after I've read it in the Action Center by clicking on this X button. I won't do that yet, I'll do that with my custom in notifications. So, let's see what those look like. (soft music) There's a custom notification, it appears in the lower right hand corner of the screen. You'll see there's an image. There was also a header. And there was some text message in there. Now, that notification was set to auto hide after a few seconds. So, if the user missed it, they can go back to the notifications center and see it.
To do that, use the Windows key and tap A. There it is. And you see that my application has a new notification up here. Now, when the user has read this, they can click on the X button to dismiss it. You can have lots of different kinds of notifications. Let's say you don't the user to dismiss the notification, so you can leave it on the screen forever until they click on the X button. Let me show you an example of that. (soft music) That one will play that sound until the user dismisses it. You might have noticed that each one of the notifications had a different melody that it was playing, too, so you can control the pictures, the text, how long it stays on the screen, and other settings.
Now, let's go talk about another feature that I really like, which is Cortana and the speech system. Microsoft has been working on speech recognition and speech dictation for decades. Their speech APIs are very good, but haven't seen much adoption in consumer applications. Recently however, Microsoft introduced Cortana to the Windows world, and showed that voice control makes for a nice, hands-free experience. You can leverage the speech APIs in your app. The easiest feature to add is to have text recited back to the user through the computer speakers. For a more interesting example, you can plug your application into the Cortana engine and have the user interact with your application through voice commands.
I love the speech engine in Windows and Windows phone. I'll show you some speech dictation, I'll show you some speech recognition. Now, in order to do this, you have to turn on the speech recognition, and that's done in Windows 10 through Cortana. I've already done that, if you look on my task bar over on the left hand side, you'll see there's a circle over there next to the Windows icon. That's our Cortana interface. If I want to interact with my mouse, I can click there, I can do this. Here, you can see some information about what she can do for me, she's telling me some information. Clicking on this icon opens the settings for the notebook.
And here, you can see I can have her give me suggestions. I like that feature, and I can also have her listen for a phrase. If I say these two words, she'll start listening to me, and following my instructions. Now, I'm not going to say those yet until I'm ready. Okay, I'm ready. Hey, Cortana? What's on my calendar for Tuesday? - You have two events Tuesday. At 11:30AM, lunch with Ziggie at Tequila Mockingbird and at 4PM, pick up tuba from Beecher's Brass Repair.
- Now, what just happened here? The speech recognition kicked in, she read my text, figured out that that applied to my calendar, reached into my calendar application, and pulled out the information there. This is awesome because that means that you, as a developer, can do the same thing. So, you can expose your data to the search engine, through Cortana, users can talk to Cortana, and get the information from your application. Also, there was the speech dictation part where she was saying the words back to me. Now, one of the interesting things that Microsoft did is they used a voice actress to record thousands of lines of dialogue, so she sounds very natural.
Most times, she doesn't sound like a robot. You can also have fun with her, and you have her do things like open applications. I'll show you some examples of both of those. Hey Cortana? Tell me a science joke. - Where does bad light end up? In prism. - And last one, hey, Cortana? Do you like dogs? - I like good dogs. Who's a good dog? Who's a good doggy? That's a good little fuzzy face. - Too much fun.
Back to more serious matters. Many of you skipped installing Windows 8 or Windows 8.1 If so, you may not be familiar with the enhancements that appeared in that unloved operating system. There were a lot of them, for example, there were lots of security enhancements in Windows. Most of those enhancements were rolled into Windows 10, so they are available for your applications, too. One of my favorite features from this era is the improved task manager. It's worth looking at when you have some time. There are many other features that ship with Windows 10, like the Bing search API from within your application.
And of course, there's the replacement for Internet Explorer, the new browser known as Edge. But I should wrap up this introduction now. There's a lot to like in Windows 10. Many of the new ideas are accessible from your code, bringing the rich, modern features to your customers. In this video, I looked at a sub set of the features available in Windows 10. Watch the Windows 10 essential training course for a more thorough overview of this new operating system. Also watch the surveying the Windows 10 developer tools video, in this course, to learn about Visual Studio, and the other tools for writing code for Windows 10 apps.