Using Wikipedia as a data source in your iOS app

Over the weekend I put together a simple periodic table app based on data from Wikipedia, which is fetched and parsed using ObjectiveGumbo. You can head over to my Tumblr blog to read how I did this, or check out the source code on GitHub.


Introducing Circle Draw for iOS

circledrawfullAt school you were taught to draw circles with a pencil and a compass. This is great if you need a perfect circle, but how well can you draw a circle with just your finger? Now you can use Circle Draw for iOS to determine how well you can, and a judgmental cat will show your score!

Circle Draw is free for iPad and iPhone. You can get Circle Draw on the App Store now.

An Android version will be available at some point…


Opening pages in Chrome from Safari on iOS

If you particularly like Google Chrome for iOS (it isn’t a badly designed app, just a little slow because of Apple’s restrictions) but don’t like having to copy links from the address bar in Safari into Chrome I’ve come up with a simple bookmarklet that will do it for you:

  1. Create a new bookmark in Safari (you can do this by adding this page to your bookmarks) and give it a useful title like ‘Open in Chrome’
  2. Delete the URL
  3. Paste this into the address box instead: javascript:window.location.replace(window.location.href.replace('https://','googlechromes://').replace('http://','googlechrome://'))
  4. When you’ve got a page open that you want to open in Chrome, just tap the bookmark. Sometimes it will ask if you want to open the link in Chrome but most of the time it doesn’t and just changes apps straight away.

How the iPad Mini integrates with Human Interface Guidelines

The iPad Mini is going to be an odd device. It is, after all, effectively a ‘concentration’ of an iPad 2. The fact that it has iPad 2 internals would suggest that the 2010/2011 generation devices (iPad 2, iPhone 4 and, based on internals, the iPad Mini) will probably be continued to get updated to the latest version of iOS up until iOS 9. I assume this is based on the fact that the iPhone 3GS was released with iOS 3 and but it still received the following three updates. Because the iPad Mini was released with an iOS version two versions newer it would suggest that the iPhone 4 or iPad 2 may receive as many as five version updates.

When the iPad Mini was announced a lot of people trashed Apple because they were effectively back tracking on what Steve Jobs had said about 7-inch tablets. A problem that Steve had cited was that developers would either develop scaled up phone apps or scaled down tablet apps and either way they would be hard to be use. Turns out he was wrong.

Apple’s Human Interface Guidelines for iOS are a collection of lots of long documents that basically just encourage developers to make beautiful, easy to use apps. There is one explicit requirement that apps should use touch targets at least 44 by 44 points. A point on a non-retina device is one pixel, on a retina device it is 2 pixels wide. This means that the actual size for touch targets on different Apple devices are the following:

Basically Apple has sized the iPad Mini at incredibly convenient size for developers because it means that touch targets on full size iPad apps on an iPad Mini will still be above (exactly) the minimum iPhone requirement. The major benefit for developers is that they don’t have to effectively scale up their touch targets so that they are big enough for the guidelines on the iPad Mini. In theory targets will remain their current size on the full size iPad too. An alternative way of looking at it is that there is no way that the iPad Mini could have been smaller without it breaking Apple’s own guidelines.

Given that the touch targets are phone size it also suggests that Apple reckons you’ll be using the iPad Mini in your hands more. It is reasonable to sit a full size iPad on a desk or your lap, but that probably won’t be happening with the iPad Mini because you don’t do that with your iPhone.