Category Archives: iphone

Garmin vs Apple Watch: why I switched

I was a smartwatch holdout for many years, on the basis that the short battery life would be annoying (my previous watch had a 10 year battery) and that the utility of a smartwatch is limited; mainly I just need to know the time. The big feature of a smartwatch of course is health tracking but that was not something I felt I needed.

Two and half years ago I succumbed and bought an Apple Watch 7, partly to see what I had been missing, but it also nearly coincided with taking up running.

Apple Watch during a run

I used the Apple Watch from mid-2022 until January this year, to track my runs and monitor my fitness. If you are a runner you will know that you want to track your pace and distance as part of training, and if you have any interest in the data and science of running, then other things like heart rate zones, V̇O2 max and so on.

There is also the matter of listening to music while running. I enjoy this, though earbuds are controversial because of the need to pay attention to your surroundings especially on roads with traffic. I am a fan of bone conduction headphones which let you listen without blocking your ears at all; and UK Athletics, the official body for running, permits bone conduction headphones in races at the event organiser’s discretion.

The integration between the Apple Watch and iPhone is not as smooth as you might expect when it comes to music, or perhaps it is just a hard problem. If you have headphones paired to the iPhone you can control the music from the watch, but you will not get announcements about your pace and distance progress. The solution is to pair the headphones to the watch and not to the iPhone. Then you get both music and announcements, by default every km or mile (depending on preference) you are told your pace. There is also a buried setting that lets you set a playlist for workouts, that starts automatically when you start the workout and can play in random order. In case you have not found this setting, it is in the Watch app on the iPhone under Workout – Workout Playlist.

That all sounds good, but I gradually got frustrated with the Apple Watch for running. Here are the specific issues:

Starting a run (or other workout) is a matter of pressing the side button, selecting workout, scrolling to the workout you want (usually Outdoor Run for me), and tapping. Depending where you tap, you may be asked what type of run you want, open, goal-based, route, or all. Or it may just do a brief countdown and start. All sounds reasonable; but imagine that it is a cold wet day, you are wearing gloves, and about to start a race. Scrolling and tapping successfully is difficult with gloves and worse in the rain. All the above is fiddly, when what you want to do is just start the workout and get on with the race.

GPS accuracy I found not very good, especially early on when I had an iPhone SE. It would consistently under-report the distance so that a 5K race showed as 4.8K, for example. Apple Watch has GPS on board but version 7 and earlier use the GPS on the iPhone to save battery, when available. I replaced the iPhone and accuracy improved, so perhaps I was unlucky, but I still noticed anomalies from time to time. In fairness, it can be difficult with things like trail running under trees and so on.

Annoying bugs include the watch starting and ending run segments for no reason I could see, music volume resetting after a pace announcement, music playback occasionally not starting, and worst of all, the workout ending before the end of a race despite turning off the auto workout start and stop features (which never work reliably). Most of the time it worked but I never felt I could completely trust it.

Battery life is an issue. If you leave the default of the display being always on, the Watch 7 will barely last a day, and less than that if you run with music. It will do a half marathon if you start with a good charge but not a full marathon (not that I have done one); but I did find it running out of charge when training towards the end of the day. I gave up on sleep tracking because it was easiest just to stick the watch on the charger all night; with a bit of discipline you can charge it before heading to bed but of course that will mean it is not fully charged the next morning. I set the display to be off by default which improves matters a lot.

Most runners wear other types of watch, the most common being a Garmin. In January this year I decided to try a Garmin and got a Forerunner 265, a mid-range model.

Garmin differences and advantages

Garmin Forerunner 265

The Garmin has a button top right labelled Run. Press it and it searches for GPS; when found it goes green. Press it again and the run starts. Press it again and the run stops. It is easy to operate even with gloves and in rain; and touch control is disabled during workouts so there is no risk of inadvertent taps – which are a possible cause of some of the Apple Watch issues.

The second big improvement with the Garmin is the battery life, which is around a week. That means I can track my sleep and the watch is ready for a marathon (even though I am not). Battery life does reduce if used intensively, for example with GPS and music, but still a vast gain over Apple Watch.

Music is a bit of an issue on the Garmin if you use Apple Music, since it is not supported. The only solution is the old-school method of copying MP3s to the device. On Apple Garmin makes this difficult by insisting you use Garmin Express, which only recognizes the “iTunes” library, now Apple Music. I still have a ton of CDs ripped to FLAC and my solution is to select some FLAC files, copy them to a temporary location, convert them to MP3 (I used ffmpeg), add them to the Apple Music library, copy them across with Garmin Express, then remove them from the Apple Music library. There is probably an easier way.

On the plus side, music playback works really well and I do not get the volume issues I had with Apple Watch. Tracks are shuffled by default though the algorithm seems not quite as good as on Apple Watch, and tracks can repeat too soon. There is no auto-start. Controlling music is easy: just hold down the bottom left button and the music screen appears. As with Apple Watch, you get pace and distance announcements as well as music.

Fitness statistics are better on the Garmin. V̇O2 max and heart rate zones is an interesting one. V̇O2 max is an interesting statistic but not essential to know, but heart rate zones are important to training. All these figures depend on the “Maximum heart rate” (MHR) which is traditionally calculated as 220 minus age. However this formula is a crude way of calculating MHR as it assumes everyone is roughly the same, which is not the case.

Apple Watch gives you the option to enter your own MHR rather than use the formula. However it’s not that easy to find out and will change over time so that is not ideal.

The Garmin though will auto-detect your MHR which strikes me as a better approach. According to the docs:

Auto Detection can calculate your maximum heart rate value using performance data recorded by the watch during an activity. This value may differ from an observed lower value recorded by your watch as the feature can determine a different value based on a proprietary algorithm.

In my case I seem to have a higher than average MHR and as a result the Garmin is giving me more plausible data for heart rate zones and V̇O2 max. Note though that smartwatches are not reliable for this and as the Garmin docs also say “the most accurate method to measure your maximum heart rate is a graded maximum exercise test in a laboratory setting.” There is also a suggestion for calculating it with a running test.

I still think the Garmin auto detection is preferable to the Apple Watch approach. In practice the Garmin has given me a higher figure for both V̇O2 max and MHR.

The Garmin is more pro-active than Apple Watch in assessing your fitness and making recommendations. There are features like Training Readiness, Stress measurement, Body battery, and more. When you start a run, the Garmin will recommend a training run or recommend that you rest instead (you can disable this feature if you prefer). The Garmin will also assess the Training Effect of a run, divided into aerobic and anaerobic impact scores. Another interesting metric is recovery time which assesses how long you need to rest before another high intensity training effort. It is hard to say how reliable these various indicators are (and there are more that I have not mentioned) but I feel they have some value, and should improve in accuracy over time.

Apple Watch advantages

The Apple Watch is a general-purpose smartwatch, whereas the Garmin is a fitness watch and the Forerunner series designed specifically for running – so it is not surprising that the Garmin has advantages for runners.

The Apple Watch looks nicer and less geeky, and as you would expect integrates better with an iPhone. Features like Camera Remote are handy, as is turn by turn directions. You can dictate a message into the watch, which is not possible with the Garmin. I miss the integration with Apple Music.

Apple Watch workouts appear on the paired iPhone under Fitness. If you integrate with Strava you can choose which workouts to import from the Strava app. If you integrate the Garmin with Strava it either imports all, or none of your workouts. This is a nuisance as it clutters Strava to import every single little workout or repetition. The best workaround I have found is to import none, and then import the ones you want manually via export from the Garmin Connect web application. Another idea is to import all, and immediately delete the ones you do not want. Either way, Apple Watch is preferable in this respect.

Price-wise, a Forerunner 265 costs £429.99 which is more than a basic Apple Watch 9 at £399 and much more than Apple Watch SE at £219. The Apple Watch Ultra though, which I understand is better for fitness tracking, is much more expensive at £799. Even the high end Garmin Forerunner 965 is less, at £599.99. There are cheaper Garmins as well: the Forerunner 255 is apparently a decent choice at £299.99, with most of the features of the 265 but an inferior screen and no touch control.

Some reflections

I am writing from the perspective of a runner. I do not think you should consider a Garmin over an Apple Watch if you are not looking for a sports watch. Then again, I still feel that smartwatches have disappointing utility if you exclude the fitness/health tracking features.

That said, the Garmin does illustrate the advantages of physical buttons over touch control, and the greater efficiency of a custom embedded operating system over iOS (or strictly, Watch OS).

What is the Garmin OS? There are some clues in this 2020 interview with one of the developers, Brad Larson, who said it is “a full custom OS … OS is almost stretching it. It doesn’t support multiple processes, it does threading and memory management but it doesn’t multi-process, but that’s what’s necessary. Most of our codebase is still in C … we’ve been pushing for the UI framework which sits on top of everything to be C++.”

I do not know how much has changed since then but suspect it would be a disaster if Garmin were to adopt Android Wear OS, for example, with the inevitable bloat that would come with it.

It also seems to me that Apple could significantly improve its watch from a running perspective with a little effort, applying its corporate mind to simple things like the challenge of starting a workout in typical running conditions.

As of now, I recommend Garmin over Apple Watch for running, based on my experience.

Another good quarter for Apple, but Huawei growth and Samsung decline is the real Smartphone story

Apple has reported its “best June quarter ever” with revenue up 17% year on year. iPhone unit sales were flat, but higher average prices bumped up revenue.

More significant though is the rise of Huawei, now number two in unit sales after Samsung and ahead of Apple. Here are the latest unit sales for the top ten vendors according to preliminary figures from IHS Markit:

Global smartphone shipments by OEM (million units)

Rank

Company

Q2’18

Market Share

YoY

Q1’18

Q2’17

1

Samsung

70.8

20.6%

-10.8%

78.0

79.4

2

Huawei

54.2

15.7%

41.0%

39.3

38.5

3

Apple

41.3

12.0%

0.7%

52.2

41.0

4

Xiaomi

33.7

9.8%

45.6%

28.4

23.2

5

Oppo

31.9

9.3%

4.5%

25.9

30.5

6

Vivo

28.6

8.3%

20.3%

21.2

23.8

7

LG

11.2

3.3%

-15.5%

11.3

13.3

8

Motorola

10.0

2.9%

41.5%

8.7

7.1

Others

62.8

18.1%

-33.3%

80.4

94.2

Total

344.6

100.0%

-1.8%

345.5

350.9

Source: IHS Markit, Smartphone Intelligence Service, 2018.

What is notable is that the number one vendor Samsung suffered a 10% year on year decline, but Huawei grew units by an amazing 41% to become number two ahead of Apple, by volume.

image
Huawei P20 Pro

Note that Apple has not declined as such. This is about Huawei winning sales both from Samsung and from other vendors. If the trend continues, Huawei is on track to overtake Samsung in another few quarters.

Samsung remains the premium Android brand though it has struggled to come up with compelling reasons to keep upgrading its high end devices. A new Galaxy Note is on the way and may be the distinctive new model that the company needs.

That said, it will take more than that to disrupt Huawei. In one sense, there is nothing very complicated about Huawei’s success: it has delivered devices both via its Huawei and Honor brands that are well made and which offer the best value proposition on the market. That does not make them the best in absolute terms (I would rather have a Samsung), but that is not the most important thing. Chatting to a Three salesperson in a shop recently confirmed this: they sell more Huawei/Honor than any other brand, because customers look at what they get for their money.

It is logical that as Android devices have become thoroughly commoditised, that Chinese vendors can achieve better value than their competition thanks to the cost-effective manufacturing capacity available in their own country.

Xiaomi, another Chinese company, confirms this trend, with its units up over 45%, growing faster than Huawei.

Amazon Mobile SDK adds login, data sync, analytics for iOS and Android apps

Amazon Web Services has announced an updated AWS Mobile SDK, which provides libraries for mobile apps using Amazon’s cloud services as a back end. Version 2.0 of the SDK supporting iOS, and Android including Amazon Fire, is now in preview, adding several new features:

Amazon Cognito lets users log in with Amazon, Facebook or Google and then synchronize data across devices. The data is limited to a 20MB, stored as up to 20 datasets of key/value pairs. All data is stored as strings, though binary data can be encoded as a base64 string up to 1MB. The intent seems to be geared to things like configuration or game state data, rather than documents.

Amazon Mobile Analytics collects data on how users are engaging with your app. You can get data on metrics including daily and monthly active users, session count and average daily sessions per active user, revenue per active user, retention statistics, and custom events defined in your app.

Other services in the SDK, but which were already supported in version 1.7, include push messaging for Apple, Google, Fire OS and Windows devices; Amazon S3 storage (suitable for any amount of data, unlike the Cognito sync service), SimpleDB and Dynamo DB NoSQL database service, email service, and SQS (Simple Queue Service) messaging.

Windows Phone developers or those using cross-platform tools to build mobile apps cannot use Amazon’s mobile SDK, though all the services are published as a REST API so you could use it from languages other than Objective-C or Java by writing your own wrapper.

The list of supported identity providers for Cognito is short though, with notable exclusions being Microsoft accounts and Azure Active Directory. Getting round this is harder since the federated identity services are baked into the server-side API.

image

Microsoft repositions for a post-Windows client world

Microsoft CEO Satya Nadella has penned a rather long public letter which sets out his ambitions for the company. It is not full of surprises for those who have been paying attention, but confirms what we are already seeing in projects such as Office for iPad: Microsoft is positioning itself for a world in which the Windows client does not dominate.

The statement that stands out most to me is this one (the highlighting is mine):

Apps will be designed as dual use with the intelligence to partition data between work and life and with the respect for each person’s privacy choices. All of these apps will be explicitly engineered so anybody can find, try and then buy them in friction-free ways. They will be built for other ecosystems so as people move from device to device, so will their content and the richness of their services

Microsoft is saying that it will build work/personal data partitioning into its applications, particularly one would imagine Office, and that it will write them for ecosystems other than its own, particularly one would imagine iOS and Android.

This is a big change from the Windows company, and one that I will expect to see reflected in the tools it offers to developers. If Microsoft is not trying to acquire Xamarin, you would wonder why not. It has to make Visual Studio a premier tool for writing cross-platform mobile applications. It also has to address the problem that an increasingly large proportion of developers now use Macs (I do not know the figures, but observe at some developer conferences that Windows machines are a rarity), perhaps via improved online developer tools or new tools that themselves run cross-platform.

Nadella is careful to avoid giving the impression that Microsoft is abandoning its first-party device efforts, making specific mention of Windows Phone, Surface, Cortana and Xbox, for example.

Our first-party devices will light up digital work and life. Surface Pro 3 is a great example – it is the world’s best productivity tablet. In addition, we will build first-party hardware to stimulate more demand for the entire Windows ecosystem. That means at times we’ll develop new categories like we did with Surface. It also means we will responsibly make the market for Windows Phone, which is our goal with the Nokia devices and services acquisition.

Here is another statement that caught my eye:

We will increase the fluidity of information and ideas by taking actions to flatten the organization and develop leaner business processes.

The company has become increasingly bureaucratic over the years, and that is holding back its ability to be agile (though some teams seem to move at high speed regardless; I would instance the Azure team as an example).

Nadella’s letter has too many flowery passages of uncertain meaning – “We will reinvent productivity for people who are swimming in a growing sea of devices, apps, data and social networks. We will build the solutions that address the productivity needs of groups and entire organizations as well as individuals by putting them at the center of their computing experiences.” – but I do not doubt that major change is under way.

Apple’s Swift programming language: easy coding for OS X and iOS at last?

Apple has announced a new programming language, called Swift. (There was already a language called Swift, used for parallel scripting, but Apple links to the other Swift in case you land on the wrong page. So far it looks like the other Swift has not returned the favour).

For as long as I can remember, serious Apple developers have had to use Objective-C, an object-oriented C that is not like C++. I have only dabbled in Objective-C but when I last tried it I was pleasantly surprised: memory management was no hassle and I found it productive. Nevertheless it is an intimidating language if you come from a background of, say, JavaScript or Microsoft .NET. Apple’s focus on Objective-C has left a gap for easier to use alternatives, though the main reason developers use something other than Objective-C, as far as I am aware, is for cross-platform projects. Companies such as Xamarin and Embarcadero (with Delphi) have had some success, and of course Adobe PhoneGap (or the open source Cordova) has had significant take-up for cross-platform code based on HTML and JavaScript.

I should mention that RAD (Rapid Application Development) on OS X has long been possible using the wholly-owned Filemaker, a database manager with a powerful scripting language, but this is not suitable for general-purpose apps.

Overall, it is fair to say that coding for OS X and iOS has a higher bar than for Windows because Apple has not provided anything like Microsoft’s C# or Visual Basic, type-safe languages with easy form builders that let you snap together an application in a short time, while still being powerful enough for almost any purpose. This has been a differentiator for Windows. Visual Basic is almost as old as Windows itself, and C# was introduced in 2000.

Now Apple has come up with its own equivalent. I am new to Swift as are most people outside Apple, but took a quick look at the book, The Swift Programming Language, along with the announcement details. A few highlights:

  • Swift is a type-safe language that compiles to native code using LLVM.
  • The IDE for Swift is Xcode. It supports Cocoa development (Apple’s user interface framework) via import of the existing Objective-C frameworks, which become Swift APIs via the import keyword:

import UIKit

  • You can mix Swift and Objective-C in a single project. In Objective C you can use #import to make Swift code visible and usable.
  • Swift is a C-family language and you will find familiar features like curly braces and semi-colons to terminate lines (though semi-colons are optional).
  • Swift uses reference counting for automatic memory management. There is rather complex section in the book about weak references and unowned references, to solve some of the problems inherent in reference counting.
  • Type inference is the preferred approach to declaring the type of a variable, but you can state the type if required. You can also declare constants.
  • Swift supports single inheritance for classes and multiple inheritance for protocols (protocols are more or less equivalent to interfaces in other languages).
  • There are advanced features including closures, generics, tuples, and variadic parameters. (I am not sure if “advanced” is the right word, but other languages such as C# and Java took a while to get these).
  • Swift has something like destructors which it calls deinitializers.
  • There is an interesting feature called Extensions which lets you add methods to any existing type. For example, you could extend Int with a prettyprint method and then call 3.prettyprint.
  • Swift variables are not normally nullable; they must have a value. However you can declare optional types (add a ?, such as Int?) that can be set to nil. You can also declare implicitly unwrapped optionals which can be nil, but once assigned a value cannot be nil thereafter.
  • Swift includes the AnyObject type which can represent anything.

Swift seems to me to have similar goals to Microsoft’s C#: easier and safer than C or C++, but intended for any use right up to large and complex applications. One of the best things about it is the smooth interoperability with Objective-C; this also saves Apple from having to write native Swift frameworks for its entire stack.

A smart move? I think so, though Swift is different enough from any other language that developers have some learning to do.

What difference will Swift make? Initially, not that much. Objective-C developers now have a choice and some will move over or start mixing and matching, but Swift is still single-platform and will not change the developer landscape. That said, Swift may make Apple’s platform more attractive to business developers, for whom C# or Java is currently more productive; and perhaps Apple could find ways of using Swift in places where previously you would have to use AppleScript, extending its usefulness.

If Apple developers were tempted towards Xamarin or Delphi for productivity, as opposed to cross-platform, they will probably now use Swift; but I doubt there were all that many in that particular group.

I would be interested to hear from developers though: what do you think of Swift?

Microsoft completes Nokia acquisition: what now for Windows Phone?

Microsoft has completed its acquisition of Nokia today, a milestone in the turbulent story both of Nokia and of Windows Phone, which Nokia adopted in the hope of establishing a “third ecosystem” to challenge Apple iOS and Google Android.

Rumour has it that the Nokia acquisition was controversial within Microsoft and a large factor in the departure of Steve Ballmer as CEO. However, even if Microsoft took the view that an independent Nokia was better for Windows Phone, it faced the risk that market pressure would drive Nokia to Android and weaken the platform. The beginnings of that process may have been under way, with the launch of the Nokia X Android-but-not-Google range of phones, but we will never know, since Microsoft decided on acquisition.

image

How important has Nokia been for Windows Phone? In my view, life-saving. Before Nokia, there was no manufacturer nor operator which really cared about the platform, and it showed in lacklustre hardware and half-hearted marketing efforts. Nokia came up with the distinctive Lumia brand and style, added a decent mapping service, and with its focus on the PureView camera technology, gave enthusiasts a reason to take a close look at its devices. It also saw an opportunity at the low end, and created some great value devices that opened up a new market for the operating system.

There were some blunders (the original Lumia 800 suffered many faults and terrible battery life on launch) and Lumia did not grow fast enough to restore Nokia to health, but to my mind it was a good effort.

Today, the general opinion of Windows Phone is that it is a strong smartphone operating system but suffers from a lack of high-quality apps. Users have to put up with the fact that most app vendors feel they are done if they support iOS and Android; and if there is a Windows Phone version of their app, it is often poor. That is not a great position for Microsoft/Nokia to be in, but it could be worse. Blackberry 10, which is also a decent mobile operating system, has been all-but written off as a viable contender.

Microsoft is fortunate in that, unlike Blackberry, it can to some extent create its own ecosystem. Office 365, Bing, OneDrive, Nokia’s maps, Azure for developers needing a cloud back-end: taken together they form a viable alternative. In this respect, Microsoft actually has an advantage over Apple, which lacks this breadth of services.

I have been reading the latest Developer Economics report from Vision Mobile. It is a good example of the neutral perspective on Windows Phone, though you will find it somewhat inconsistent:

Windows Phone sales picked up significantly in Q3 2013, showing a 140% increase year-on-year, fuelled primarily by low-end device sales. According to Kantar, Windows Phone sales in the three months running to Oct 2013, reached double-digit figures in some Western European markets. While this is certainly a positive sign for Microsoft they will continue facing an uphill struggle, in an increasingly unfavourable race against the two runaway leaders, iOS and Android.

The report emphasises that iOS and Android have won the mobile OS wars, but says that there are signs of hope for Microsoft:

Windows Phone Developer Mindshare has finally moved upwards, following positive market signals in the last two quarters. As we have frequently highlighted in past reports, the developer intent has always been there, with Windows Phone figuring at the top of our Developer Intentshare chart, but needed positive market signs in order to convert this interest into Mindshare. While the 26% Developer Mindshare is still less than half of that for iOS, Microsoft can now claim that over a quarter of developers that target mobile platforms are now actively developing for Windows Phone. […]

As a latecomer to a mobile market dominated by strong network effects, establishing a credible footprint in mobile remains a formidable challenge
for Microsoft. We believe that Microsoft may be better served in the long-run by leveraging the Android ecosystem as the deployment platform for Office
and Server businesses which are still growing.

Microsoft is in fact supporting iOS and Android as clients for its cloud services, as noted again at yesterday’s financial webcast, where CEO Satya Nadella talked about a strategy that goes across “devices some ours, some not ours.” It is a bit of both though, and the company is not showing any signs of weakening its own mobile efforts.

In my view reports like that from Vision Mobile miss a couple of factors. One is that Windows and Windows Phone are converging. They already use the same OS kernel, and at the Build conference earlier this month Microsoft announced Universal Apps that will run on both, and the ability for developers to sell an app once and have users install on both phone and full Windows.

This means that the future of Windows Phone and that of Windows itself are closely bound together. Longer term, they will either both fade away, or both succeed.

Windows remains a huge business for Microsoft, despite the decline of the PC, especially in business. Microsoft’s problem though is that adoption of Windows 8 has been relatively weak, and that those who do use it, largely live in the desktop environment rather than running Store apps (of which Universal Apps are a variant).

Despite the dismal progress so far for the Store apps platform and ecosystem, I believe it should be taken seriously. On paper it has many advantages, not only for touch control, but also in deployment, security, roaming data driven by the cloud, and discoverability through the store. Isolation from the core operating system protects users against the things that destroy desktop Windows, like unwanted extras foisted on users who simply need to update Java or Flash.

At Build we saw not only Universal Apps, but also a preview of Office in the Windows Runtime (Store app) environment. We also saw a preview of Store apps running within a window in the desktop environment, solving the jarring transition between desktop and Store app environments that unsettles users. If Microsoft gets this right, both Windows Phone and Windows tablets will be substantially more attractive.

Microsoft also has the ability to bind Windows Phone into its enterprise device management environment, System Center and InTune. In Windows Phone 8.1 the device management and security features businesses need are much improved. More is still needed; but the company should be able to build integration points that make it attractive to business customers already using products such as Active Directory, Microsoft Office, Office 365, System Center or InTune.

Another factor is the strength of Visual Studio for developers, especially as Microsoft improves its integration with cloud services like Azure and Office 365. You can use C# everywhere from cloud or server to mobile client.

image

Cortana is sure that Windows Phone is the best; but check out the Bing ad.

What then is the future of Windows Phone? Uncertain, as ever; but if Microsoft pulls off a smooth Nokia acquisition – leaving in place the things that enabled the company to build the Lumia brand – and if it delivers on the promise we saw at Build, of a strong unified platform, then I expect market share to continue to grow. If it can climb to 10% or 15%, it will be on the map for vendors and the app problems will ease.

On the other hand, if Microsoft/Nokia means a return to the ineffective marketing and strategy we saw before Nokia adopted Windows Phone, then I expect Windows Phone to follow Blackberry into oblivion.

I am positive, but Microsoft needs to execute carefully and quickly to win market share for its mobile platform.

Not just Instagram: the Windows Phone (and BlackBerry, Firefox OS) app problem

I like the Windows Phone OS and use one day to day. However it has become impossible to do my job in technical journalism without either an Apple iOS or Android device alongside it. The reason is that I review gadgets and find increasingly that they come with app support – but only for iOS or Android.

The Fitbit exercise tracking gadget, for example.

image

Or the Corsair Voyager Air wireless hard drive, almost inaccessible from Windows Phone (you can do it with a firmware update and DLNA).

 

image

Or the Seagate Wireless Plus. Actually this one is better as it has a web UI, but no app.

image

My bank is Nationwide and has an app – uh oh.

image

It’s not just Instagram.

image

Where do Microsoft and Nokia go from here? Or other contenders like BlackBerry and Firefox OS? The answer of course is to sell lots of devices so that discontented users beat up the companies that do not support them. But selling lots of devices is difficult when the customer says, “it’s a nice phone, but it does not work with my portable hard drive. Or my bank. Or my Fitbit.”

The Mac survived versus the PC for many years with this kind of problem. It takes a loyal customer base and excellent 1st party and niche apps. There are still areas of strength which Microsoft and its phone partners could exploit (though they have been poor at this to date). Enterprise integration with Windows Server and System Center. Consumer integration with Xbox.

If the company can get it right with Windows tablets that would help too, especially combined with unification of the Windows 8 and Windows Phone app platforms.

Unfortunately for Microsoft though, the market has already decided that only two mobile platforms matter, and that will not be easy to change.

PCs down, Android up: astonishing figures from Gartner show shift to mobile

Want to know why Apple is suing Samsung over Android, or why Microsoft is re-imagining Windows as a touch-friendly mobile OS? Look no further than Gartner’s latest report on European and worldwide sales in the third quarter of 2011.

First, this release shows PC sales in Western Europe, not helped by HP’s dithering over what to do with its PC division. Total shipments declined by 11.4%. Apple increased its unit share by 19.6% to 7.6%, which would be greater when measured by value since its computers command the highest prices, but still small relative to the entire desktop and notebook market. Netbook sales declined by 40%, presumably because people are buying Apple iPads instead. “Media tablets” including the iPad are not included in these figures.

Next, take a look at worldwide sales of mobile devices. Units are up 5.6% year on year, to over 4.4m devices in the latest quarter.

Then at the operating system breakdown for smartphones (115m devices). The operating system in features phones does not much matter. Android grabbed an amazing 52% of sales (from 25% a year earlier), versus Apple’s 15%. Gartner thinks Apple’s decline is a blip cause by customers waiting for iPhone 4S, but this is still an extraordinary result for Android. Symbian is down from 36.3% to 16.9% (the “burning platform”); RIM is down from 15.4% to 11%; Microsoft is down from 2.7% to 1.5% – is that burning any less?

It would be remarkable if Microsoft’ share does not increase at least a little in the fourth quarter, with the launch of Nokia’s Lumia and much more promotional activity, but on these figures it needs a miracle.

A few observations on Windows Phone 7.5 “Mango”

I received a Windows Phone running version 7.5 “Mango” for review yesterday. Here are some initial observations; I am not going to call it a review after such as short time.

image

There is still no screen capture utility – well, there is this one but it requires a developer accounts. So no screens, sorry. Microsoft should fix this – how difficult can it be?

Microsoft says there over 500 updates in Mango, and it does feel like a significant update, though retaining the look and feel of the first release. A half-version upgrade is about right.

Some things I noticed:

  • Task switching. Press and hold the back button, and swipe through running apps. This is excellent, better than iPhone or Android.
  • Voice control. This is expanded in Mango to include web search, text messaging and more. Tip: to see the commands, hold down the Windows key to go into speech mode, and click the help icon.

    It has great potential, especially with a bluetooth headset for true hands-free. I have a Plantronics Voyager Pro bluetooth headset, reviewed here. Using this guy, I can press and hold the call button on the headset, to put the phone into speech mode.

    I found this works well for calling people or simple searches, but general speech to text is not too good. I tried texting someone the message “Your parcels have arrived”. After several attempts, all of which were interpreted as various strings of garbage starting “George”, I gave up. I would still use it for making calls though; it seems that when the scope is narrowed to people in your contacts list, the interpretation is more reliable.

  • The search button is no longer contextual – it always takes you to Bing search. I think this is a retrograde step.
  • Local Scout is a feature that is meant to find restaurants, shops, things to do, and other handy information based on your location or the current map location. This is a neat idea, but when I tried it for my home town it did not work well. The first problem: I found that tapping the Local Scout tile is unreliable, and sometimes reports that Bing cannot find the location even when the location button in Bing Maps works fine.

    Fortunately you can also use Local Scout from Bing Maps. The Local Scout listing was not good though. Of the top 20 food and drink places, one had been closed for years, others were duplicated under old and new names, and there were hardly any ratings or reviews. Tap “Suggest changes” and you can submit changes to the address details or report closure, but you cannot add a review or rating, which seems a severe omission.

    I downloaded the TripAdvisor app which is a great deal more useful, mainly because of the amount of user-generated content.

    Maybe I’m missing something, but it seems to me that Microsoft needs to join a few dots here; Local Scout is only as good as its data.

  • Office and SharePoint integration. As soon as I gave Windows Phone my Live ID, it picked up my SkyDrive account and was able to open, edit and save documents there. I also hooked up Outlook to my own Exchange server, and added an Office 365 SharePoint account as well.

    SkyDrive support is new and a huge feature, especially considering that it is a free service. Editing features on the phone are limited, but you can include basic formatting.  More important, you can easily access what could be a large document repository.

    OneNote support is good, and notes made on your phone sync automatically to SkyDrive, where you can further view and edit them in a browser, or in desktop OneNote. I guess I can show a grab of the browser, which shows that the voice memo is inaccessible:

    image

    I discovered a few oddities. I was unable to link Windows Phone to my own SharePoint 2010 test server, receiving a message “We don’t support this authentication scheme”. Later I found this information:

Unless your organization uses a Microsoft Forefront Unified Access Gateway (UAG) server, you can only access a SharePoint 2010 site if you’re in the office and connected to your organization’s Wi-Fi network.

That is a considerable limitation. It did work OK with SharePoint on Office 365, except that for some reason I can find no way to create new documents on Office 365 – well, maybe in the browser. The Office Hub can create new documents on SkyDrive, but not on SharePoint, which is odd as the two have a lot in common.

Despite these issues, you get a lot out of the box for using Office on the move, particularly if you use a supported SharePoint configuration or SkyDrive. The on-screen keyboard is good too.

  • Music search. This is a fun feature. Go to Bing search, click the music icon, and it will try to recognize what is playing. It had no problem finding Katy Perry’s Teenage Dream. It struggled a bit with the more obscure Strangely Strange but Oddly Normal by Dr. Strangely Strange; but on the second attempt it found that too.
  • The social media features seem strong to me, though you are limited to the baked-in services which are Twitter, LinkedIn, Facebook and Windows Live (no Google+). You do have to link each service to your Live ID for full features; for example, you give permission to Windows Live to post to your Twitter account. The integration is smooth and if you spend your time juggling with these four services then this may well the phone for you. For example, you can post a message to all of them at once. I found the People hub good enough as a Twitter client.
  • Apps are still lacking. The issue is not the quantity of apps available, but their quality, and the lack of certain key apps. There is no official Dropbox app, for example, so you will need to use the web or a third-party workaround. On the positive side, the free Guardian app is great, especially since you can pin a section to the Start screen – I did this for Technology – and there are apps for WordPress, Amazon Kindle, the ubiquitous Angry Birds and some other essentials.

    I noticed that TripAdvisor has 61 ratings on the Windows Phone Marketplace, whereas the Android version has 39,930. That illustrates the scale problem Microsoft is facing.

  • Still no Adobe Flash.
  • Microsoft’s new Windows Phone site is clean and informative. Not always the case with Microsoft’s sites. The My Windows Phone site lets you find your, lock or erase your phone, once configured.
  • Internet sharing, which makes your phone into a wireless hotspot, is coming but subject to operator support and approval. This means you will likely pay extra for “tethering”. I have a free app which does this on my Android phone and find it useful, though whether it is worth paying extra every month is another matter.
  • Microsoft has introduced some features aimed at enterprises. In particular, Information Rights Management is now supported for Outlook and Office mobile documents. Another important feature is the ability to deploy custom applications as hidden apps, which do not appear in Marketplace searches, but can be downloaded from a link circulated internally. There is now a Lync (business messaging and conferencing) client for both Office 365 and on-premise Lync servers.

Future of Windows Phone?

My guess is that Microsoft is badly disappointed by the sales performance of Windows Phone to date. The problem is not so much the phone itself, but that it has failed to convince either the operators, or the retailers, or the general public, that it is something special and worth choosing ahead of either an Apple iPhone or Google Android device. In fact, typically retailers have few if any Windows Phones on display, and even customers asking specifically for one may be redirected to something else. The truth is, there is a disadvantage in having a minority-choice device, most obviously in the selection of apps available, but also in features that rely on user-generated content.

I asked about this problem at the Mango press launch and was told that the Nokia partnership will be the solution.

My review device is a first-generation HTC Trophy, and while it is decent enough it is not outstanding. Give Windows Phone some truly desirable hardware and a few must-have apps, and its fortunes will change, but that is not an outcome that I take for granted.

I do like the SkyDrive and Office 365 integration though, with the caveats noted above, and if I were Microsoft I would be pushing the value of those features.

Delphi for Windows, Mac and iOS: screenshots and video of cross-platform development

Embarcardero is drip-feeding information about its forthcoming RAD Studio XE2 in an annoying manner; nevertheless the product does look interesting and promises cross-platform native code apps for Windows 64-bit, Windows 32-bit, Mac OS X and Apple iOS. I have grabbed some screens from a video recently posted by Embarcadero’s Andreano Lanusse; the video is also embedded below.

Here is Delphi XE2 showing a FireMonkey application in the designer. FireMonkey is a new cross-platform GUI framework.

image

Note the list of target platforms on the right. If you squint you can see 64-bit Windows, OSX, and 32-bit Windows.

image

How do you compile for the Mac? It is clear from the demo that Lanusse is running in a VMWare virtual machine on a Mac. He also has a Remote Profile option set to target the host Mac:

image

He then refers to a “Platform assistant” which you can see running in a terminal window on the Mac.  He is then able to compile and run from the Windows IDE:

image

Finally, he targets iOS, though this is a separate project, not just another target. The process exports the project to Xcode, Apple’s Mac and iOS IDE:

image

Next, we see the app running on the iPad simulator:

image

The ability to target the Mac is nice to have, but I suspect it is iOS that will attract more interest, given the importance of Apple’s mobile platform.

Here’s the complete video where you can perhaps puzzle out a few more details.

Update: there is also some Q&A in the comments here.

Graphics rendering is Direct2D or Direct3D on Windows, OpenGL on Mac. FireMonkey renders all components through the graphics API, it does not support use native OS components, though Embarcadero’s Michael Swindell says:

FireMonkey client area controls are rendered by OpenGL on Mac, but appear and work just like Cocoa controls – or however you want them to. There are many different Cocoa UI styles in OSX apps, and Firemonkey can render any of them – including iTunes, or Prokit which is an Apple UI style for Pro apps like Final Cut, not available to devs via Cocoa. Windows are Cocoa Windows and the client areas and all user controls are rendered by OpenGL in HD(2D) or 3D. Menus are std and rendered by Cocoa in the menu bar, and common dialogs are rendered by Cocoa. If the “true OSX” look isn’t for you, you’re welcome to use any included Style, download a custom style, or create your own custom style.

Swindell also addresses the matter of Linux and Android:

We do plan Linux and Android. But no eta yet until we get Win/OSX/iOS out. We would also like to provide language bindings for other languages.

Finally, a bit more about that Platform Assistant:

Developer requires a PC and a Mac (or Mac with VM running Windows). You will develop on Windows, and use the platform assistant (PA running on your Mac) to compile natively to your Mac and the PA handles debugging communication between the Mac and your IDE running on Windows. Delphi (or C++Builder) and Firemonkey create compiled stand alone OSX executables that you can sell/distribute to your users. They are native Mac apps. They “copy install” and run like any other Mac app, or you can use a Mac installer if you like.