Friday, May 30, 2014

The future is...

... already here - it's just not evenly distributed. - William Gibson

It's certainly not evenly distributed if it's just in our heads.

It's certainly not evenly distributed if it only exists in proof of concept form on a few devices and just used by the creators.


Plus it's going to include this great looking new film:



How can we make the future better?


Thursday, May 22, 2014

Universal apps are confusing because they're not apps...

... they're solution templates.

"Universal app" is a nice term though, isn't it? It speaks to the idea of a single app that can run everywhere. We know that's not the reality but it seems like what a lot of people want to aspire to.
iOS already has "universal apps". These are a single packaged application that can be deployed to both iPhone and iPad and the app will adjust its UI (and behaviour) as appropriate to provide an optimised experience on both types of device. Anecdotally I've heard from people within Microsoft who speak to developers, who develop for platforms other than Windows, who are amazed that despite all this talk of "One Microsoft" and a common design language across all platforms it is still necessary to build separate apps for each platform.

Maybe talking about something with the same name as a type of application on iOS will make some people think that "universal apps" on Windows work just the same...

So, what of these templates if they're not apps?
"Universal apps", in the Windows sense, are a solution that contains 3 projects: One is the Windows apps; one is the Windows Phone app; and one is a new, special kind of shared project that contains files and resources that are auto-magically included in the other 2 projects when they are built.

So, yes, a universal app is a way of building 2 apps - one for each platform. The bit that is universal is the code and resources that are used in each app.

In Microsoft's defence, they have done a lot of work to be able to use the same UI and code files in the projects for both type of app.


What about using the "same" app on "big Windows" and on the phone?

If you're using Windows [Phone] 8.1 and view the store you may see the above image next to some apps. This means the Windows and Windows Phone versions of the apps are linked. If you buy it on one platform then you'll also get it on the other. The same goes for In-App-Purchases and settings (as appropriate) within the app. You should get a seamless experience when using the same app on both platforms.


So, in conclusion:

  1. The term "universal app" is confusing and means something different to what it does on iOS.
  2. "Universal apps" on Windows are a way of reusing code and assets to easily build versions of an app for both Windows and Windows Phone.



Tuesday, May 20, 2014

Universal apps and manipulating statistics

The new Universal apps, apparently, support sharing approximately 90% of code between Windows Phone and Windows.
By "code" I mean XAML controls and WinRT APIs.

Now, 90% is a high proportion and the assumption therefore is that it should be really easy to use the same code on both and most apps should be able to reuse almost everything.


But what if I'm playing devils advocate?
Surely we can look at that 90% differently.
Let's work on the basis that it means that 9 in every 10 items can be used on both platforms.
This means that 1 in every 10 items doesn't work.
Do you have 10 (or more) controls in your app or use 10 or more of the APIs in the SDK?
If so, then you'll have something that can't be shared across both platforms. At least in part.

Isn't it only the smallest, simplest apps that contain less than 10 controls or use less than 10 APIs.


Two points then:

1. Statistics can be manipulated to skew opinions and support different arguments.
2. Don't assume that creating code that can be used in both a Windows and a Phone app is straight forward and everything will just work the same on both platforms.


Are you really still thinking "desktop first"?

There are still some people who still think of "mobile" as an afterthought. Here are 2 statistics (from last year) that highlight how, world wide, there are far more people using mobiles (smartphones & feature/dumb phones) than are using PCs (including tablets).
Click through on both statistics for more details.