Apple, Failure, and Perfect Cookies


It’s painful, hard, and often time-consuming to restart when you’re already done, but you can’t argue with the results. Both Apple and Nintendo create some of the best, most inspired design out there.
Lukas Mathis, in Chabudai Gaeshi

When people ask me what Apple’s dev process has that’s different to other places, I always gravitate towards this, even though it sometimes seems ludicrous.

In my time working there, I must personally have seen years-worth, probably decades-worth (and, from afar perhaps even centuries-worth) of work simply discarded because it turned out not to be ‘right’ or ‘good’. This was done with very little animosity towards the people who did the work. There was a distinct difference between working on something that turned out bad and had to be discarded (fine - admirable, even) and doing bad work (bad).

Read more…

Easy Xcode Static Library Subprojects and Submodules


In which a method is presented for reliably building static libraries with subprojects in Xcode, and it is suggested that this method, combined with Git submodules or other similar mechanisms, provides the best way to share libraries, frameworks, or other code between projects.

I’m sure I don’t need to tell you that it’s a useful thing to be able to share code between projects. On the small end of the scale, you might have created some nice views, or text processing classes, and want to be able to include them in multiple apps. On the larger end, perhaps you produce games written with a shared framework, or you’re maintaining an open source library.

Read more…

On Frequent, Intense Mature and Suggestive Themes


Marco Arment has written a provoking article about Apple App store ratings. I haven’t really looked at the situation since my original (and, at the time, infamous) brush with the Apple law over the rating of Eucalyptus. As you may remember, it’s rated, at Apple’s request, 17+ for “Frequent/Intense Mature/Suggestive Themes”, because users can access Victorian textual translations of, for example, the Kama Sutra from it. How are other book reading apps rated? I took a sample of the popular ones:

Read more…

Answering an important question: Why I'm saying “Yes” to Alternative Vote on Thursday


Do you want the United Kingdom to adopt the ‘alternative vote’ system instead of the current ‘first past the post’ system for electing Members of Parliament to the House of Commons?”

If you’ve spoken to me recently (or know me on Twitter or Facebook), you’ll know that I’ve been campaigning for a “Yes” vote in the referendum tomorrow on whether Britain should adopt the Alternative Vote. This is the first time I’ve been ‘politically involved’ in anything beyond voting, and it’s an interesting experience - equal parts uplifting and depressing, I’d say. I thought it would be a good idea to detail my thoughts here, partly as a cathartic exercise, but also so that I could better explain to my friends and family what I’m thinking. I hope that even if you’re intending to vote “No” you can spare the time to read this, because I think it’s important. I’ll try to be impartial with the arguments.

Read more…

No Review Copies of 17+ Rated App Store Apps


I am wary that this blog is in danger of turning into “Gripes With Apple”, especially after last week’s article, so I thought twice about posting this. It’s certainly not of the same order of magnitude as last week’s news, but it is something I’d usually blog about if I hadn’t seen it covered anywhere else - and I haven’t seen it covered anywhere else, so here goes…

Recently I noticed that I can no longer generate “promo codes” for Eucalyptus. These codes are basically akin to iTunes gift cards, and they allow free copies of apps to be given to people - reviewers, for example. They’re quite important if you want your app to be reviewed anywhere - in web or print (in case you were unaware, review sites and magazines generally don’t buy the apps they’re reviewing, they’re sent ‘promo’ copies by the publishers).

Read more…

Thoughts on iOS Content Purchase


I’d like to take a moment to talk about Apple’s new policy on paid ‘content’ in iOS applications. If you don’t live in the Apple bubble I live in, let me explain: Esentially, all apps that allow users to comsume pay-for content (magazines, music, books etc.) must allow the user to buy access to that content in-app, using their iTunes account. For this, Apple will take 30% of the retail price of the content. Content can also be sold outside of the app, via whatever means you can think of (books on your web site, an newspaper subscription bought via a newsagent etc), but the in-app price - which includes Apple’s 30%, remember - must be identical to or less than the out-of-app price. An app also cannot promote that content can be bought outside of it, even if it is possible to do so (e.g. no linking to your web site to get the users to buy subscriptions there rather than using in-app purchase). The Apple press release I linked to earlier talks about subscriptions, but Apple has confirmed that the rules apply to all content, not just subscriptions - books too, for example.

Read more…

Support the Gorillas on World Usability Day


Silverback GorillaToday, November 11th, is World Usability Day. To celebrate, the good folks at Clearleft wil be donating all revenue from sales of Silverback, their Mac ‘guerilla usability testing’ app, to the Dian Fossey Gorilla Fund.

Silverback’s a great app [full disclosure: I did some work on the latest version, but I’m pretty sure I would think this regardless] for performing quick, simple usability testing of your Mac app, web app or web site (or even Windows app with VMWare or Parallels!). It records what’s happening on screen, along with the user’s reactions using the iSight camera, and you can play back and export these recordings later. It’s simple to use, and can scale from simple in-the-coffee-shop or pub tests (“Hey, would you like to test out my new app? I’ll buy you a coffee!”) to use in full-scale usability labs. It’s well worth the asking price on any day, and today there’s an even greater incentive.

Read more…

My Inquiry on Global Sources


Spam is getting more and more targeted. With contact details blurred to protect the, erm, guilty…

Mail window showing spam

I love how they insinuate that this in response to some enquiry I made, somehow hoping I’m so busy I’ll presume I forgot about it or something.

I’m tempted to try to get an SDK and some hardware samples out of them…

Read more…

Webmoco Go!


A couple of the guys I worked with via Missing Ink Studios on the first apps to use the Eucalyptus reading engine (including the Hitchhikers’s Guide To The Galaxy and Peter James apps) have started up their own web and mobile development company, “Webmoco”.

I found them great to work with, so if you’re looking for a development team, check out their site, which includes a showcase of the great apps they’ve been involved with in the past.

Read more…

Using the Mac or iPhone's Built In Regex Routines


In which a convenient method of using POSIX regular expressions from Objective-C is presented.

It’s a common complaint that the Mac and iPhone platforms don’t have native support for regular expressions, but that’s not entirely true. If you drop down to the UNIX core, there’s an implementation of the old (and only partially busted) POSIX regular expression interfaces. Here, I’ll show a simple Objective-C wrapper class for them that lets you use them conveniently in Mac or iPhone apps.

Read more…