Sunday, 6 April 2014

//Build/ Notes on Windows Phone 8.1

Two days back from //Build/ and I'm still trying to process all the stuff thrown at us.  I suspect it will take some more time yet.  I'm hoping to get my hands on some of the technology very soon so I can try it all out.

The first keynote on Wednesday, April 1 was really about the client.  Meaning Windows Phone 8.1 and Windows 8.1 Update.  There were so many things thrown at us that I won't try to cover all of them here.  I was lucky enough to sit near the front right be the press tables during this keynote and it was just about as interesting to watch their reactions as much as the developers.  Clearly we have different definitions of "cool".

Cortana

"Cortana" is (going to be) a rock star.  As soon as Cortana was mentioned the press were out of their seats and running to the front with their cameras.  Clearly they thought this was the number one item.  Afterwards I noted that it seemed the number one item covered in the press was Cortana with comparisons, reviews and generally high interest.  I, too, found it really cool...  How could you not?  I think I perhaps saw it from two different perspectives.  As a Windows Phone owner and user I'm cautiously pumped about her making my phone life better.  A personal assistant that can remind me of stuff could be very handy and I can't wait to try to integrate Cortana into my work-day world.  I'm always juggling many different things at work and the fact that she learns and gains context from both the way I interact and inputs such as email will be most interesting.  As a developer I immediately thought of all the apps I have written to consider which ones I can add Cortana to.  Yes, you can have Cortana interact with your apps.  You can provide language that can be used by the phone user that will launch and perform tasks in your app.  For example, I thought it would be nice if you could ask "Border Wait Times, what is the current wait time for Peace Arch to enter the US?" and she told you!  Very cool.  You can even just shorten the name to "Border".

Action Center


Another item that caught my "User" love is the Action Center.  It's not just a notification center.  From within this action center you get quick links to flight mode and other common settings along with past notifications.  This was one of the major things missing from Windows Phone and now we have it.  I can't tell you how many times I missed a toast notification and then could never figure out what it might have been.  I will use this feature as a user, all the time.  As a developer I want my notifications to be important before I send them.  However, even if they are important, there never was any guarantee that anybody would ever see it.  The toast could come and go and nobody would ever know.  I pledge to add more notifications (where important) to my apps.

Other Cool Stuff

Other items that got my interest but to a lesser extent as a user include: (and were interesting but not immediately affecting my developer alter-ego)
  1. 3 tiles across even on screens smaller than 5 inches
  2. the new Calendar was nice
  3. the personalizing of the lock screen was cool and has developer implications for making a cooler lock screen.  Way cooler!
  4. WifI Sense (for auto-enrollment in public wifi hotspots)
  5. Shape Typing Keyboard
For the Enterprise, they are now going to include Enterprise VPN and encrypted email.  Yeah!

Universal Apps

Ok, time for the big developer payoff.  End users will not probably be aware, or care, about this one but they will benefit greatly from it.  Universal projects in Visual Studio 2013.  You will be able to use a new template in Visual Studio when creating a new project that is called Universal.  This app contains 3 "project heads" that includes a Windows 8.1 section, a Windows Phone 8.1 section and a Shared section.  With Windows Phone 8.1 there is now about an 80% overlap in frameworks so much of what you do is available to both.  You can put your App.xaml, pages and much of your code in the Shared folder with References and platform specific stuff in their specific heads.  And just like that you can publish to both stores.  On this topic, I will expand in another blog the ability to easily share information and settings between devices and platforms for a truly seamless experience for users.