BBC iOS News App26 October 2016
From October 2015 to September 2016 I spent a year building two new features for the BBC News iOS app. The first a ground breaking portrait news video feature and the second the internationalisation and localisation of the app into three languages as part of the largest expansion of the BBC World Service since the 1940’s.
BopHeads TalkTalk TV XFactor iOS App15 September 2015
The X Factor is back! And so is the amazing TalkTalk TV app that gives you the chance to star in your very own music video!
For the last couple of months I have been working with the amazing team at MPC-Creative on this great iOS app spreading joy across the UK. 6000 downloads on the first weekend!
Simple iOS Viewstack 303 January 2015
A little while back I created the first version of a view stack utility for IOS. It was one of the first things I added to my toolbox shortly after starting working as a freelance iOS developer. Having used it in commercial projects I have refined and added features as demanded by real life mobile app development.
This simple tool has such a positive impact on promoting decoupled architecture in iOS projects and this article is a thorough look at the features of SimpleIOSViewStack as I think, given what it can do for you, this could be useful. If you are in a hurry the Git Hub ReadMe or this example project may prove a better starting point for you.
Bridging Objective-C Factory Classes to Swift17 July 2014
Recently on my journey learning Swift, Apple's new programming language, I decided to re-write my Objective-C View Stack utility using only Swift and it turns out you can't. Well you can't at the moment, it's worth bearing in mind that Swift is in Beta at the time of writing and could change at short notice.
Working around the problem is really easy though and it is this type of situation where Objective-C knowledge is going to remain important for developers focussed on Apple's iOS and OSX platforms.
Simple iOS Viewstack29 May 2013
One of the central mechanisms in the architecture of an iPhone or iPad app is a UINavigationController, there is at least one in most apps. This class is similar to a view stack found in other application frameworks and for the most part works very well. One drawback, and this has as much to do with iPhone and iPad application architecture as it does the UINavigationController itself, is the decentralised approach to navigating between children UIViewControllers. Not having details that relate to one aspect or your application, in this case navigation, in one place in your code can make things hard to find and this frustrating situation can be made more so by the use of storyboards, but that's another conversation entirely.
The situation can very easily be improved ...
Simple Objective-C API service23 May 2013
I am sure many Objective-C developers, iOS or OSX, have been in the situation where the backend API needed for the project they are working on has not been developed by the time they need to start writing the code that will access it. In organisations such as creative agencies, startups and software companies it is not always possible to synchronise resources to perfectly suit all the current projects' timelines but with a mixture of creativity and technology, conveniently wrapped up in a utility called SimpleObjectiveCAPIService, this simple bottle neck can be negotiated.
It is only correct that I point out now that this utility has been created more to assist with iOS app development rather than provide production ready network utility. If you are developing an enterprise iPad app or an iPhone app that has to cope with dynamic connectivity situations this utility is more than likely going to fall short of your needs.
Dual : Adobe Air Database Update & Access Layer03 January 2012
We've all been in this situation. You have developed a mobile app, or desktop application. It has been accepted to the Android Marketplace / Apple's App Store, or you have uploaded it onto your website or intranet for distribution. People have installed it and are using it.
It's time for version 2 and you make the inevitable changes to the database. You have to write code, in the model of your MVC pattern usually, that copes both with a upgrading the database from version 1 and creating a database from scratch for a user who is using your application for the first time at version 2.
And so the pattern continues, and the problem grows, for each version. In version 3 you have to write code that handles people upgrading from version 2 to version 3, version 1 to version 3 and people installing the app for the first time.
What a pain! Not anymore.
ActionScript 3 Frame Buffer03 February 2011
All AS3 programmers have had to cope with situations where what they can see on the screen is different to what their code is telling them. Within Air, Flex and Flash applications the two main contributors to this are; the Flash Player is single threaded, apart from a few exceptions in Air, and internally is based around a frame rate.
Have you ever tried to measure something you have just added to the Display List and even though you can see it on the screen your measurement, something like width or height, is coming back as 0? How about when you are preloading, does your preloader get stuck at 10% and then jump to 100% at the end?
Interactive Data Visualisation / Map of London29 April 2010
A recent trend within the UK government is one of providing access to the data sets they hold to the public. It appears to me at least that the thinking behind this is that transparency is promoted, the public may well come up with ways of using the data that are useful to everyone, and after all the public has paid for the creation of these data sets and so it seems correct that they should have access to it.
Not too long ago I attended a meeting at London's amazing city hall which focused on the Greater London Authority's contribution to this movement, The London Datastore. For someone like myself who develops compelling rich interactive digital media for a living it was obvious that here is a rich source of potential to tell a story using this data and Flash / Flex.
Flash Actionscript 3 : ViewBuffer28 April 2009
At the end of 2008 I worked on a Flash project for The Economist called 'The World in 2009'. There was a graphic designer who was responsible for producing a world map vector and I wired it all up.
As you can imagine this artwork was intricate. Each country had a border and a background colour that were separate objects, some text fields for labels, and as you would expect also grouped into continents. The designer was using Adobe Illustrator to create the vector shapes and importing these into Flash and sending me the .fla
The process was not very smooth. There were changes to the artwork of course, Illustrator does not create MovieClips in the same way that you would manually and also when dealing with such an complex piece, old fashioned user error creeps in.