Thursday, May 28, 2015

What's the point of (where is the value in) Project Astoria and Project Islandwood?

Projects "Astoria" and "Islandwood" are "Universal Windows Platform Bridges" that allow you to reuse the code used to build Android and iOS apps to make apps for Windows 10.
They each work a bit differently but are typically talked about together as their very existence shows that the "new Microsoft" and Windows 10 are very different from the Microsoft and Windows of the past.

There are a couple of key differences.
Astoria allows you to take an existing APK and submit it to the Windows Store and comes with the ability to replace the use of Google specific services with their Microsoft/Windows equivalents. It also only works on "Windows 10 Mobile" - what used to be known as "Windows Phone" but now also includes small tablets (phablets).
Islandwood allows the creation of Universal Windows app, that runs on more than just the mobile SKU of Windows 10, but using Objective-C. It also includes shims and mappings for the use of the more common iOS functionality and services.

Who would use them and why would they care?
Consider someone who already has a mobile app or game. They want to reach as many potential customers as possible and so their app/game is almost certainly available on Android or iOS. It's possible that they have created both versions with a cross platform tool* but it's more common that they will have created the iOS version in objective-C and the Android version in Java.
When they now come to consider supporting Windows 10 there are considerations to make:
1. Will there be enough potential users to make the effort worth while?
2. How much effort will be involved in creating the new version?
3. Do they really want to write the app/game for a third time?

Let's look at each in turn.

1. At the moment Windows/Windows Phone has a very small market share but Windows 10 has the opportunity to help increase the number of devices running a single version of Windows dramatically. Microsoft have even said they're aiming to get Windows 10 on a billion devices in two to three years. A billion potential users could be very appealing but until it shows some traction both the market share percentage and absolute numbers remain low.

2. Ideally any business would like the amount of effort required to build an app to be as low as possible. It takes a special kind of person to want things to be harder, take longer and cost more than is necessary.

3. You should need a very good reason to have to do the same thing three times in three different ways. It doesn't just duplicate the initial effort and costs but the ongoing ones too.

So, considering the above, if there was a way to take the assets, resources and investment in existing code bases and use that to create an app that runs on Windows 10 then it should be very appealing. Enter projects Astoria and Islandwood.

But which should a company use?
As ever with technology, it depends. Obviously if someone only has an Android/Java code base then they should look at project Astoria. Or if only on iOS/Obj-C they should go with Islandwood.
But what if both? I'd suggest the following. If only interested in running on phones then look to use Astoria. Otherwise look to Islandwood.


The use of either (or both?) of these projects should be seen as a stepping stone if it gets a business to a position where they still have more than one code base for their app/game.
Surely, as far as possible, it's in the interest of the company behind an app/game to only need one version of their code. I therefore expect the popularity of cross platform solutions* to grow in the next few years. There are various options for this but, personally, I'd look at either PhoneGap or Xamarin based solutions depending on the specific project.


I assume that Microsoft hope that those people who use the above tools will be exposed to how powerful the tools and languages Microsoft have created are and then consider switching to them in future. Either in addition to building natively for Android & iOS or exclusively by use of a solution such as Xamarin.


Yes, they both allow you to reuse resources across platforms but are they cross platform solutions?

*Related question: How do you define a "Cross platform" tool/solution?
Does it have to produce the output for different platforms?
Does it need to support a specific number of platforms? (Presumably more than two.)
Does it count if it is based on conversion from one native format?

I don't know if there is a clear definition. Do you have one?


  1. I am an avid reader who likes engaging content. That's why I am here. Your original views on this topic are refreshing and interesting. You've done a great job of expressing your views. Thank you.
    tu 95| call of duty| clicker heroes| strike force heroes 2| kitten cannon
    scooby doo games| scooby doo| brain games| braingames| brain


  2. Your blog is very interesting, this is because your blog discusses about tips and unique informatics
    Lindungi Kesehatan
    Penting Kesehatan

  3. Our Casablanca Cartier watches attending like absolute watches, and attending like replicas, if you ever accept had a bad acquaintance aural the accomplished application the Cheap watches, we assure that affairs the replica watches appearance from us would ensure the appearance looks original, and cipher can doubt its authenticity. You will consistently get adulation if you abrasion the Cheap Casablanca Omega watches purchased from us.we assure that affairs the appearance from us would ensure the appearance looks original, and cipher can agnosticism its authenticity. You will always get louis vuitton replica adulation if you abrasion the Cheap Casablanca Omega watches purchased from us.Panerai Ferrari Granturismo Watches accept abiding bands usually designed Montres Hublot Big Bang from calfskin or alligator. The appearance bands authority up to a accomplished lot of abrasion and tear. The watch aswell appearance azure crystal, which is exceptionally aggressive to scratches. The azure clear contains anti-reflective blanket and is hardly domed.Panerai Ferrari Granturismo watches appear with rolex replica an added elastic strap and a spiral disciplinarian for alteration the straps. Application the elastic bandage can be
    beneficial in situations in which you feel you may actual able-bodied accident to calfskin or alligator watch band.Panerai Ferrari Granturismo watches can calmly be articular by the Ferrari logo and a baby horse amid at the 12 o’clock area of hublot replica the watch. This logo
    can aswell be begin about the aback from the watch case, which is bogus from polished stainless animate and has a brushed animate bezel and edges.