Macbook Pro 2016


I made the decision to move to predominately Apple based platform around 2008. At that stage Mac OS X and iOS had great potential, and Apple was uniquely targeting areas where there was no evidence the other companies would. I assessed there were no downsides, and limited lock in points that were manageable (in that pre-iCloud world). Being able to drop down into a bash shell was great (no cygwin craziness). And free OS upgrades were fantastic and refreshing. You could easily see the TCO equation made sense, even with the higher sticker price of the hardware.

Now, I have always considered myself as a “Pro” user. I code (ranging from large enterprise systems to iOS apps), run VMs, create and edit photos and vector graphics, and occasionally make amateur movies from 4K video.  For this I need a minimum of 16GB and work typically connected to an external monitor (4K now). My Mid-2014 MacBook Pro is still supporting these tasks really well, but is definitely behind the state-of-the-art. The latest Macbook Pro unveiling has addressed a number of items, but has completely missed opportunities and actually regressed in some areas.

The positive items first:
  • Touch ID (awesome but expected… why so long?)
  • smaller size and weight (once again awesome but expected)
  • powering the laptop and driving a 5K monitor all with one cable (awesome)
  • improved graphic processing power (good and expected – this is where my 2014 is noticeably falling behind)
  • USB-C & Thunderbolt 3 (awesome), touch bar (good but yet to be proven)
  • brighter display and wide colour (great), better speakers (awesome but expected), and wider trackpad (good).

OK, all positive things, but 95% of that is “expected”. Just to clarify what I mean by “expected”, these are things that I would expect Apple to enhance (performance/capacity), or items where I know Apple has a solution on another product that makes sense on the Macbook Pro (i.e. Touch ID, keyboard, etc).

Now, for the significant negatives:
  • Price
  • RAM
  • USB-C ramifications and dongle/adapter hell

Price: When I bought my current MacBook Pro (1TB, 16GB RAM) in 2014, it cost me around $3650, and I had to buy a ethernet adapter and a DVI adapter. Today, it will cost $4889, and I have to buy a DisplayPort, HDMI, VGA, SD card, ethernet, and 2 x lightning adapters/dongles! And I always use the extension power lead which apparently doesn’t come in the box anymore which I would also have to purchase. Wow. I would be way over $5000 by the end of that. Now I could justify $4000 but $5000+ is more than a stretch, it is basically drops it out as an option.

RAM:  16GB limit is too low for “pro” users. I don’t think I need to justify this. I understand the limitation might be Intel here (low power RAM only being available in 16GB capacities). Still not good enough.

USB-C: As I point out above, I need to buy and carry 7+ new adapters! This is beyond ridiculous for “pro” users. Then there are the more obvious issues: you cannot connect a iPhone to the Macbook Pro without buying an adapter, and the Apple mouse doesn’t connect either.

An interesting opinion (being discussed around the internet) is that perhaps Apple’s idea of a “pro” user might not match the market. This would go a long way to explain the decisions that led to the design of the new Macbook Pro. However, there are many internal Apple engineers that are pro users, where were their voices in design process? Silent, ignored, or maybe they don’t agree? I guess the price issue isn’t an issue for them, but the RAM and adapters would be.

Another view might be that Apple actually doesn’t want the majority to upgrade to this yet, and it is merely laying the foundations. If early adopters are willing to live with the negatives then let them trail-blaze and by the time the majority of the market (i.e. people like me who are happy with their 2014 edition) really needs to upgrade then a new model will fix the issues or USC-C will be ubiquitous and the price will start coming down again.

I really think they should have changed one of the models to be a bit thicker/heavier (even up to the existing MacBook Pro sizes), include options to max out RAM (64GB or higher), drop the 256GB SSD, leave the SD card, HDMI, and one standard USB port (or even a lightning port for the iphone/headphones). That would have gone a long way to appeasing the “pro” users. One more thing- include a LED to shown power is being supplied (one more removal together with the terrific MagSafe connector).

One other tidbit from the event last Thursday: no more Apple external monitors. Why? End- to-end experience has been key to the Apple position so why the decision to stop making monitors? They have displays in the iMac – why not just offer that screen without the computer? If it is just about money, then that is really disappointing as that is not the position that I think design-oriented consumers expect from Apple.

Final point: Can Apple stop saying at these events “this is the best ‘x’ we have ever made”? It is not objective, and obvious since if they are releasing a new model then they wouldn’t release something was worse than a previous model. Umm… well…

NikePlus Exporter – Retirement

I have stopped using Nike+ and didn’t notice that Nike has redone the Nike+ service, and a couple of weeks ago my plugin to download Nike Activities as TCX and GPX files, stopped working.

I was expecting this for a while, since I was essentially calling their unpublished APIs. I have taken a quick look at it and there is good and bad news.

The bad news is, the changes are major. It will require a rewrite.

The good news is, there is now an official API.

I have the code deployed on github @, so am happy for someone to pick up the work at moving the plugin code to the API (it looks very do’able). However,  I note there are heaps of Nike+ GPX tools out there so I don’t think it is worth the time investment from my perspective.


I am sorry to everyone who has used the tool and become reliant on it, but check out one of the other tools and hopefully it fulfills your needs.

Nike+GPX and x2g

Nike+GPX – I have merged a fix from Paj and deployed on the Chrome App Store. I have also redirected the download link to the app store as that probably makes sense now.

x2g also got an minor update to fix the following issues:

  1. Private Strava activities not being synchronised
  2. Any requests over 30s are not being terminated by Heroku. So I had to make it not return an error, but mention that the full sync will complete soon (it will keep on going in the background)
  3. Sync Date not being displayed properly

x2G & Nike+GPX News

A number of changes to Strava and MongoLabs meant the x2G app stopped working last year. I thought I would have a new app out that absorbed the main functionality of x2G however that is taking longer than expected, so I went back and fixed the number of issues it had. So it should be working again!

My new app will synchronise to-and-from Google Calendar so will be a natural progression when it comes out.

As for Nike+GPX, I don’t use Nike+ anymore so didn’t notice it too had some issues which I see a few people have written updates to handle. So I have made it open source on GitHub now (, I should have done that a long time ago. So please feel free to keep the plugin up-to-date and I will post updates here when required.

Update 16/Mar/2016: NikePlus Plugin has been updated in both the download link and Chrome Web Store to v0.48 (Thanks to Per Jensen & Matthias Hüller). GitHub also merged.


Consolidation and analytics of personal data has long been an interest of mine, particularly sports tracking like cycling and running. Mobile devices are making this easier, and every day new services allow access to all kinds of data which up to recently would have to be recorded manually (and therefore just not done, well except for people like Nicholas Felton).

However, for particular kinds of events, such as going to the gym, I have been taking the time to enter them manually in Google Calendar, into a special calendar set up to record just fitness events. I have always wanted to store other fitness items on the same calendar for easy visualisation of all fitness activities, but it was always too hard.

Since I have moved all of my running and cycling to Strava now, I decided to implement an application to sync my Strava activities to my Google Calendar (i.e. Strava-to-Google Calendar synchronisation). The solution works quite well, and I am guessing if I find it useful then there will be someone out there who might also like access to it.

So announcing x2G (!

Screen Shot 2014-08-06 at 9.39.59 pm

x2G (x-to-Google) first connects to your Google Calendar account, and then lets you connect Strava as well. Once both are connected, you choose the calendar you wish to sync your activities to, and hit the “Quick Sync” button. Full Sync will clear out all of the strava entries on the calendar before the sync (it wont delete anything that is not strava related).

Right now, it is in beta and still running on Heroku, so the URL will change in the future, but if you would like to test it with me feel free. Also, since it is in beta, I recommend connecting to a dedicated calendar rather than your primary calendar (just in case there are bugs).

It is called ‘x-to-Google’ because I am not stopping at only Strava. I have also got a Moves connection working as well, so expect that in the near future.

Any feedback either through this blog or email to:

Update 15-Sep-2014: Sorry everyone if you have been having issues, I pushed an unfinished version up to the site and it was causing issues. I have fixed it now.

Nike+ Exporter 1.46

I have posted a update to the plugin which upgrades all the dependencies to the latest versions and changes the way the files are generated. This might fix some of the issues people are having with the longer runs.

Please download the latest version by clicking the “Download” menu option above.

Update: 8/8/2014 – Published to the Chrome Web Store

Update: 3/Mar/2016 – Project code is now up at for those that want to fix any issues

Google Reader

Bad news- Google Reader is closing down. The Android client together with the Web App were excellent (in my opinion).

For me, Google Reader was the main reason I have been using Google+. At least it will make my decision about whether to focus on Facebook versus Google+, easier.

It is similar to the time when Microsoft announced when they were stopping MS Money. It left me with no reason not to jump from Windows onto Mac OS X.

My question: What is stopping Google dropping other services I rely on which they may not consider commercially important (like Google Calendar or Picasa)?

Update: 20/06/2013: Google Graveyard- Google Graveyard (Slate)

Update: 21/06/2013: I wish Digg luck:

Update: 01/05/2015: Feedly is awesome

Nike+ Exporter 1.43 / 1.44

I have posted a minor update to the plugin which incorporates the most popular feature request, to have the list sorted in reverse order (i.e. most run first).

Also, I have added what might be a fix to the timezone issue. If the error occurs again, please email me your debug logging so I can diagnose further.

Update 24/01/2013: More bugs fixed with the timezone issue. Hopefully fixed now. Please try v1.44.

Please download the latest version by clicking the “Download” menu option above.

Nike+ Exporter v1.4

I have just released version 1.4 of the Nike+ Exporter Chrome plugin. Note the name change from Nike+GPX Export to just Nike+ Exporter, which highlights the biggest change with this version: TCX export!

I need more people to test this new functionality, so if TCX is your thing, then please try and use it and send me all your feedback. I also want to know if there is any need to split the run into multiple laps (e.g. km or mile laps, or as just one large lap). Also, with TCX I can put multiple runs in the one file so let me know if there is any need for such a feature (i.e. export all runs to TCX or perhaps export all runs on page to TCX, etc)

Here is a screen shot:


Click “GPX” for GPX export (only available for runs with GPS data), or TCX (which should work for runs without GPS data as well). Also there is a new icon for the toolbar (let me know if you like this one better than the old one.

If this version works well, I will submit it to the Chrome Web Store which should make it easier for novices to install.

Please download the latest version by clicking the “Download” menu option above.

Known Issues

A number of people have been said that runs might not be available for export for 2 hours, which could be a timezone issue.  However, I am yet to get any debug information. So if you have the same issue, or any other issue, can you send me the debug information using the following method:

  • Open up your console log after you log in (Right Mouse Button on the extension window, and inspect element/Console)
  • Use Plugin until the error occurs
  • Then cut/copy everything out of the console and send it to me in an email at

Running Apps Review

Over the last couple of weeks I have been comparing a few of the running apps currently on the market. It is an extremely crowded area with Sports Tracker, Runtastic, Runkeeper, Nike+, Strava, and Endomondo, to name just a few.

My all-time favourite is, without a doubt, the venerable Sports Tracker ( It was the pioneer, originally available on old Nokia Symbian (and developed by Nokia Labs) phones, and was eventually spun out of Nokia into a separate company. The web site is currently an all-flash site (I believe they are moving to HTML5 currently and are in beta testing), which is hugely functional and looks great. Their Android and iPhone apps also look and work fantastically. Sports-tracker also sell their own branded HR monitor.

The reason I went looking at other apps was because Sport-tracker was occasionally doing a really bad job at plotting the GPS path, giving me different distances for routes that were exactly the same. Also, some of the newer social and motivational features of other platforms including challenges, and recording/reporting records such as fastest ‘x’ km, or number of runs per week, etc, were missing. I also asked Sport-Tracker about public web services to get access to run data and they said that it was not a priority for them, which was a position that annoyed me considering almost every other service offered an API.

I tried Runkeeper but didn’t like it compared to Sports-Tracker, and dumped it immediately. Next stop was Endomondo but it was way too ugly for my discerning taste (ha! – I have been working with UX Designers for too long).

Nike+ then became free and I gave it a go. I loved the simple interface, calibration option at the end of the run, the fact that it stopped the phone from locking during the run like Sports-Tracker, how you could easily read the screen while running, and, best of all, hit the screen at any time to have the run details spoken to you.

What I disliked was the data was locked up in Nike+ with no export or import options. I wrote Nike+GPX export plugin to help with that issue, and also use the Garmin Forerunner TCX to Nike+ utility ( to import runs into Nike+. The ‘achievements’ feature were great (although when the GPS gets it wrong it can record personal bests that are incorrect and unrealistic with no easy way to back out).

Then I had friends start to use and recommend Strava. Easy, just export the GPX file from Nike+ and import into Strava which does a great job during import to smooth the GPS coordinates, and the process is essentially seamless. The social features are great, just like a ‘facebook’ for running. The custom segments are my favourite feature, which gives you a leaderboard for public segments, which is very motivating (and demoralising at the same time) . The GAP (Grade Assisted Pace) for split times is a good feature (even though I think most elevation data is normally wrong). And to boot, Strava has a public API (which I am yet to try but will do soon).

I spent last week trying out the Android app, and was very disappointed. Firstly, it does not stop the phone locking and therefore I had to type my password while running to check the details/pause/stop the run which is unacceptable. I found the Black-on-Gray text harder to read than the Nike+ White-on-Black text, and could not hit the screen for the voice features.

Further, a friend who was trying to complete a long distance challenge had the application crash while submitting his last 22km run, He emailed tech support and the response was just “sorry, the run is lost”. I have never had that happen while using Sports-Tracker or Nike+, so am not going to risk it.  I consider this an application architecture issue that is needs to be fixed.

I checked out Runtastic last week, which seemed good but it has ads (if you don’t pay), does not seem to have (on first look) Strava’s public segments features, and has an over-blown/out-dated UI (in my opinion, of course).

So, using Nike+ on Android as my running app, and exporting to Strava at the end of the run, is the best proposition for me right now (I also import into Sports Tracker to keep it on the radar and to have my entire run-history in one place).