News, ideas and randomness

Flip Maps – Simple location bookmarking and sharing for iPhone

Posted: December 30th, 2011 | Author: Andrew Gleave | Filed under: Uncategorized, iphone, portfolio | Tags: , , | No Comments »

I’m pleased to announce that Flip Maps is now on the App Store! (link)

Flip Maps lets you bookmark places you have visited and share them with others. Each new place is added as a page to your notebook so you can quickly flick through all of your maps to find the one you want. Maps can be organised by title, city or region, and when you create a new map, you can attach a photo or movie to it as well as giving it a name and adding notes.

You can see your current location on each map, and get directions.

Flip Maps came about when I was looking for a way to keep track of the great places I went to when I was in New York this September. Trying to remember exactly where a restaurant was quite difficult, and what I really wanted an app I could open up, it would pick up my current location, I could give the place a name add some notes about how great it was, maybe take a photo of it, and save it for future. So, a couple of months after getting back, I still couldn’t find a simple app which would do what I needed and looked nice, so I decided to build one!

Gorgeous page turn animations!

Sort and order your maps by title, city and region

I wanted the app to feel like a little notebook crammed full of maps, so we’ve put a lot of effort in to making the app great to use and look and the same fluid page turn animation that iBooks uses to make it feel like you’re really flipping though pages of notebook.

Maps are shared via email and the recipient just has to tap on the attachment to import it in to their copy of Flip Maps. It’s quick and simple and makes it easy to send maps (and their attached photo/movie) to friends and family without signing up to anything.
Also, maps can been created even if you don’t have a data connection since Flip Maps can still get your location from GPS. So, even if you can’t see the map you can still save it and Flip Maps will get the address information and map tiles the next time you go online!

I have some great ideas for future improvements to the app, but we’re always happy to get feedback and comments!

You can download Flip Maps from the App Store now.

PhoneGap CouchDB Attachment Plugin

Posted: March 14th, 2011 | Author: Andrew Gleave | Filed under: couchdb, iphone, mobile | No Comments »

I’m working on a cool new project which makes use of a lot of exciting new tech: jQuery Mobile, PhoneGap, CouchDB (Couchbase) and Django, and I wanted to enable the iPhone and Android PhoneGap apps to push binary attachments directly to CouchDB, without having to proxy through Django.

All access to CouchDB is performed via its RESTful JSON API which is awesome because it means you can to talk directly to the database using javascript! It’s also great because, in this case, there isn’t much going on in the middleware (Django) layer so implementing Python API endpoints to proxy to a standard database wouldn’t be worth it when I can get CouchDB to do the heavy lifting for free.

I had a look around and couldn’t find any existing plugins which could upload binary attachments to CouchDB (I could have used an XHR request to post the photo data, but I didn’t want to Base64-encode the photos as it can cause Out of Memory exceptions on devices with high-res cameras and increases the file size by ~1.4x), so I decided to write a quick Objective-C plugin.  PhoneGap has a simple plugin system which enables native code plugins to be exposed to DOM which means I can call my upload method, pass it the photo’s file URI, and let the plugin handle uploading the content.

The plugin is up on GitHub. Feel free to fork and send pull requests.

Enable AirPlay video streaming in Safari on iOS 4.3

Posted: March 11th, 2011 | Author: Andrew Gleave | Filed under: iphone | No Comments »

I wrote a Mobile Safari bookmarklet a couple of weeks ago to enable AirPlay video streaming to Apple TV, and was using it at home while iOS 4.3 was still in beta. Now iOS 4.3 is live, (and the NDA has been lifted), you can get it from GitHub.


Legends of Suzuki iPhone Apps

Posted: June 17th, 2010 | Author: Andrew Gleave | Filed under: iphone, mobile, portfolio | No Comments »

We recently had the privilege of working with Suzuki UK developing two iPhone applications to complement their Legends of Suzuki exhibition at the Manx Museum. Suzuki have a long and illustrious history at the Isle of Man TT and 2010 is their 50 year anniversary and they wanted to provide an interactive element to their exhibition.

The Legends of Suzuki exhibition at the museum comprises all sorts of Suzuki memorabilia, from the bike Mike Hailwood rode in his final TT victory in 1979 , to leathers, helmets and bikes from many other TT champions stretching back to the 1963 50cc winner Mitsuo Ito. If you’re on the Island and are a TT fan, you should certainly check it out!

Working with Manx National Heritage, who provided the content, we built an audio guide app which provides commentary and information for some of the exhibits and a “Gallery Tour” app which includes photos, information and video of covering significant events in Suzuki’s history at the Isle of Man TT.

The gallery app has rare and early photos of the first Suzuki team in 1960 as well video clips of Mike Hailwood, the 1960’s riders, Mick Grant, and more recent stars such as Cameron Donald and Bruce Anstey.

Both free can be downloaded now from the App Store:

Legends of Suzuki Exhibition Archive Gallery

Legends of Suzuki Exhibition Audio Tour

We also built a simple web-based version of the audio tour app for iPhone and Android (2.0+) users which is virtually identical to the native iPhone app. Go to on your iPhone, iPad, iPod Touch or Android phone to check it out!

We had great fun making the apps, we hope you find them useful.

Just Released: Ronaldsway Airport iPhone App

Posted: June 14th, 2010 | Author: Andrew Gleave | Filed under: cocoa, iphone, mobile, portfolio | Tags: | No Comments »

We’ve just released a simple iPhone app for Ronaldsway Airport here on the Isle of Man.

The application is free, simple, and quick, and shows arrival and departure information for flights to and from the Island helping you keep up to date while on your iPhone, iPad or iPod touch.

If you live on the Island or are visiting, you can download it from the App Store here.

Glowing and soft shadowed text on iPhone

Posted: April 29th, 2010 | Author: Andrew Gleave | Filed under: cocoa, iphone | Tags: , , | 3 Comments »

iPhone OS’s UILabel provides basic shadowing properties which can be used to create inset text effects and basic text shadows. However, the shadow has no blur and gives a sharp edge which is not particularly useful if you’re looking for a soft or subtle shadow.

Recently I needed to create a “glowing” text effect – essentially a soft shadow without the offset – so I wrote a simple UILabel subclass which let me specify an offset, colour and blur amount.

The screenshot shows a how the class can be used to create a glow effect but it’s equally easy to create soft shadows for your text.

You can find the source here on GitHub.

Simple iPhone & iPad Video Streaming with Streamory

Posted: April 20th, 2010 | Author: Andrew Gleave | Filed under: Company, iphone, mobile, portfolio, streamory | Tags: , , , | 2 Comments »

For the last couple of months we’ve been working on technology to enable anyone to stream live and pre-recorded video to iPhone, iPad and iPod Touch devices.

Today, we’re pleased to announce Streamory, our in-alpha service which lets users easily stream their own video and audio to the iPhone with only a couple of clicks. Streamory takes the hard work of configuring and setting up a streaming infrastructure, and instead lets you simply upload a video or input stream and, with a single click, publish a stream for use in your site or iPhone / iPad app.

Simple iPhone and iPad media streaming service

You can check our simple web-based demo iPhone app on the Streamory site – make sure you’re using an iPhone or iPad for best experience, though! The demo app demonstrates some different types of output Streamory can generate, as well as adaptive bandwidth streams which give you higher or lower quality content automatically as available bandwidth changes.

We’ve already got some great ideas to make it easy for users to create iPhone-ready video streams without the fuss, but we’d love to hear what you think so get in touch and let us know! :)

We’re not ready for beta testers yet, but if you’d be interested in participating, drop us a line and we’ll get back to you when we’re ready.

Andrew Gleave is the lead developer of iPhone and mobile apps at Red Robot Studios. Considering developing a mobile app? Contact Red Robot Studios to see how we can help.

The Enterprise Ready iPhone

Posted: April 9th, 2010 | Author: Andrew Gleave | Filed under: iphone, mobile, mobile app | No Comments »

Yesterday Apple announced the fourth release of the iPhone OS. There are a lot of changes to the platform but some of the less-discussed improvements are ones which bring ‘enterprise-ready’ features to the iPhone. These features really open up the potential for using iPhone and iPad devices securely in a business context.

With iPhone OS 4, iPhone and iPad now support:

  • SSL VPN Support
  • Multiple MS Exchange Accounts
  • Mobile Device Management Remotely configure, update and wipe devices
  • Data Encryption
  • In-House App Distribution – Distribute and update your enterprise apps to company devices wirelessly

All of these are important features for most medium and large businesses, but being able to remotely update and sync your company iPhones and iPads is a real clincher. The ability for an enterprise to write and deploy its own apps (not distributed with the App Store) to staff devices wirelessly over WiFi or 3G, is the only reliable way of making sure all your devices are up to date: waiting for users to sync with iTunes mean it could takes weeks for all devices to get an update.

Add the ability to encrypt user data, access your network securely though a VPN and remotely manage and wipe devices, and you’ve got a pretty good case for building mobile apps which help you to do business, and that don’t give the Sys Admins a security and management headache.

I’ve only had a cursory look over the new SDK but the thing which stands out is that it really feels like a mature platform: there aren’t as many missing or restricted APIs and many of them have been massively expanded. This release will give rise to a whole host of apps just not possible before.

I can’t wait to take a closer look at the SDK in the next couple of days!

HTTP Live Streaming for the iPhone

Posted: March 17th, 2010 | Author: Andrew Gleave | Filed under: iphone, mobile | Tags: , , , | 1 Comment »

There are many types of live streaming technology, some with wider adoption than others. Currently, the most widely used platform for streaming media is Adobe’s Flash technology, and is what sites like YouTube, BBC iPlayer and use to stream their video content.

However, to watch the stream you need to have Flash Player installed. This isn’t a problem for typical computers – approx. 90% of all computers already have Flash installed – but if you’re an iPhone user, you’re out in the cold. Apple have been very public in their criticism of Flash, and some well-known Apple fans have claimed that it is the “leading source of application crashes on Mac OS X”.

Whether on not this is the case is beside the point, but what is interesting is the technology Apple have developed as an alternative to Flash streaming, for both the iPhone and, more generally, the web as a whole. Not only is it built on existing and well-established protocols and technology, it’s a proposed standard and headed off to the IETF for approval. The best bit of all: it’s very simple.

The technology is called HTTP Live Steaming and is fundamentally very straightforward to deploy. There’s no special / expensive kit required to deploy the stream, and instead uses standard web servers with minor modifications.

Key differences:

  • No streaming software required.
  • No extra ports have to be opened on your firewall as they do for RTSP / RTP.
  • Clients can make use of standard HTTP constructs like caching, load-balancing and expiry headers to optimise delivery to clients.
  • Only needs a standard web server. No extra modules necessary: just add the mime types to your config and you’re done.
  • Clients can dynamically switch between streams of different quality depending on available bandwidth. If you’re on a WiFi network you can be watching a HD-quaity video stream; move to the garden (and 3G) and it can automatically switch to a lower quality stream with no interruption.
  • Can support both live and VOD (Video on Demand) streams.
  • The stream can be encrypted. Therefore, you don’t need access restrictions on the content itself. An authorised client is served a key which enables it to decrypt the stream on the fly. If someone gets hold of the stream but don’t have a key, it’s totally useless.

For the iPhone, or any other mobile device, this is all a great win: you can be on the move, your phone dynamically switching from 3G to EDGE to WiFi as you move around, and your stream will intelligently adapt to give you the best broadcast quality with no drops or stalls. Perfect.

Actually, this is where HTTP live streaming differs from the “progressive download” model where the client incrementally downloads the content as it the stream is being watched: with a progressive download you’re stuck with whatever resolution you chose when you started watching the stream, and if your bandwidth decreases, you stream will stall.

The only real downside is that it’s currently only supported on the iPhone and Mac OS 10.6. However, I can see Apple implementing it in its Windows version of QuickTime and Google implementing it for the Android platform so this shouldn’t be a limitation for long.

Another tangible advantage for this technology is that WebKit has native support for HTTP live streams being used as the source for <video> and <audio> elements. This means you can use live streamed content in your web app as well as in native iPhone applications without the need for any external plugin.

This all adds up to a pretty attractive package, with minimum fuss on both the client and server sides.

Get in touch to find out how we can help you stream audio and video to your iPhone app.