… or at least, a quote good enough to make me come out of hiding before I’ve explained why things have been so quiet around here.

John Gruber on the iPhone IDE debacle:

If you are constitutionally opposed to developing for a platform where you’re expected to follow the advice of the platform vendor, the iPhone OS is not the platform for you. It never was. It never will be.

To all the people whinging about this decision by Apple, go away. You can have your fun on Android or some other platform that supports your open development philosophy. If by some fluke Apple wind up with a such a massive majority that you’re forced to come back because all the users are here, don’t expect any sympathy from us. It will have happened because Apple’s restrictions resulted in the most consistent mobile OS experience, and users decided that’s what they want.

iPhone is a closed system, and in my opinion the overall quality of the apps available is better for it. Not that the app store is full of fantastic quality at the moment – you really need an iPod or iPhone to appreciate this, but the store has an amazing amount of crap already.

However I can see the app store really going down the toilet if they let “meta-platform” (as Gruber calls them) apps onto the store. Just look at what happens when people develop cross-platform apps for PC; you either target one primary OS and optimise your UI for it at the expense of the others, or target a general use case and suffer for having a non-native UI. Yes there are exeptions, but they are rare and most of them spend stupid amounts of time implementing multiple native UIs in their cross-platform code.

Gruber has a specific example of this:

Consider, for one example, Amazon’s Kindle clients for iPhone OS and Mac OS X. The iPhone OS Kindle app is excellent, a worthy rival in terms of experience to Apple’s own iBooks. The Mac Kindle app is a turd that doesn’t look, feel, or behave like a real Mac app. The iPhone OS Kindle app is a native iPhone app, written in Cocoa Touch. The Mac Kindle app was produced using the cross-platform Qt toolkit.

Native apps are always better; I don’t use OpenOffice more because the UI pisses me off than because iWork is cheap enough that I don’t mind paying for it. Windows is the same (I can’t stand Apple’s apps ported to Windows with Mac-style keyboard shortcuts). Once you allow cross-platform UIs to enter your computing world, life just isn’t as much fun anymore.

And I want my iPhone to be fun.

[update: A related article with an appropriate quote, this time from MacWorld].

… the develop-once-run-anywhere philosophy is something that makes more sense to bean counters and development-environment vendors than it does to platform owners and discriminating users. In the ’90s we were told that Java apps would be the future of software, because you could write them once and deploy them anywhere. As someone who used to use a Java-based Mac app on an almost daily basis, let me tell you: it was a disaster. Java apps didn’t behave like Mac apps.

We’ve had a few ephoxians on twitter for a while, but early last week we hit some kind of tipping point and now most of the engineers are actively chatting on it. For my part I joined to follow and converse with Brent’s Dev Diary, it’s a cool idea and I might do a bit of dev diary tweeting myself one day. All of a sudden though the team is tweeting about all sorts of things 🙂

I’m still exploring how I want to use this and who I want to follow, so far it’s just a few friends and some well known new media celebrities (who are, as always, responsive to fans no matter how they want to communicate) 😉

I don’t think we’re going to get too many more succumbing to the fun so if anyone is interested here’s the list:


I’m sure if there are people I’ve missed they’ll be pointed out to me shortly and I’ll probably update this post.

Status Notifier. I knew that I would miss the status bar icon for new mail, but I had forgotten how stupid the silent mode toggle is. The icon for it is so natural that I forgotten it was a jailbreak-only feature! That apple still haven’t added an icon for this after three years is amazing to me.

Yes you can look at (or feel) the side of the phone to check – but the problem is I regularly forget that I have silent mode on and just stick it in my pocket without a second thought. I have missed a number of phone calls and countless SMS due to accidental silent mode. It’s ridiculous.

Google’s exchange calendaring support for the iPhone always felt like a hack, and having tried syncing to a real exchange server I knew it was the fault of the protocol. I was excited at first to get push calendaring but the benefits just didn’t seem worth the hassles I had to put up with. And I’m very glad I decided not to try contact sync.

A bit of background: before exchange sync was available I was using plaxo to sync between my mac and google and then iTunes sync to the phone. This is important, because I knew exactly what the phone was capable of (in short, it’s very similar to iCal just with a limited set of recurring time periods). I switched to get over-the-air calendaring, but it hasn’t been pretty.

Beyond a few early problems with updating, the limitations of the exchange protocol bugged me constantly. It doesn’t support multiple alarms on one event and a few of my events wound up with a weird identifier string invited to them. The worst part though is it can’t move events between calendars; I often forget to change the calendar when creating events and pre-exchange it was an easy fix. With exchange sync, I had to delete and recreate the event when that happened.

All of that is fixed now that I’m using the caldav support added in OS 3.0. I can create multiple alarms again, after a few edits i’ve fixed up the weird events created under exchange protocol that the iPhone thought I didn’t own, and tonight when I set a calendar reminder on my mac to delay for 30 minutes I got a nice surprise when the re-reminder dinged on my phone as well. This is finally as good as direct phone syncing, and doing it over the air for instant updates isn’t costing me a MobileMe subscription.

I didn’t mention it at the time but the news of CalDAV support was my main reason for happily un-jailbreaking the phone. CalDAV worked so well with iCal that I had a feeling it would be awesome on the iPhone. And it is.

There’s been a lot of details circulating about how to enable tethering in OS 3.0 when carriers don’t want you to. I got it working with a hacked carried bundle, but I just reverted to the default after I found this:

Enable iPhone Tethering

Who needs to enable iTunes debugging options when you can hit a webpage in safari on the phone, hit download and instantly enable tethering 😀

Spotlight is coming to the iPhone. That sounds great on the surface, but I don’t think it’ll be quite as awesome for me as Apple are making out. I find search to be useful in OS X when I know exactly which app I want to load, but particularly on my iPhone that’s very rarely the case.

Maybe I just have too many toys / games to choose from but when I want to waste time with my phone I never have a specific app in mind; I spend 30 seconds browsing through the pages for something that I feel like playing. That breaks down with more than 2 pages but search won’t help at all.

Who knows, maybe I’ll just stop wasting so much time on my phone, and spotlight will become useful because I’ll know what I want to load every time.

But I doubt it 😉

I didn’t get around to posting it here but the features in iPhone OS 3.0 are totally worth ditching my jailbreak for. There are a lot of nice little things that I’ll miss, but nothing particularly critical.

With the update due out this week, I’ve been slowly removing my jailbreak apps. First to go was categories; while subfolders was kind of nice they were a little slow to load so I wound up just never using any of the apps in them. Whatever I’ve lost in compactness of app pages I’ll make up for in the new spotlight search.

To help this, I’ve removed a bunch of apps and games I didn’t need, and used iBlank when removing categories to force the games onto page 4 leaving blank space at the bottom of pages 2 and 3. The lack of clutter actually makes things easier to find, despite the extra page swiping necessary.

At the same time I uninstalled stack. It served a similar purpose to categories, but I only regularly used one (maybe two) of the apps. Again, spotlight will pretty easily replace what I was using this app for.

From there, the only serious apps left are SBSettings and my theme. I’m really going to miss my wood shelves background and fancy round icons, the defaults are so boring. However between the lack of background tasks running and the usual optimisation that apple put into their new OS releases, it’s going to feel like a brand new phone! 😀
(not as fast as the 3G S obviously, but still an improvement).

Once jailbreak is available for 3.0 – and given the 3.0-only updates I’ve seen to jailbreak apps it can’t be far away – I’ll probably do it again. The default settings app is just useless compared to SBSettings, and theming gives me a nicely personalised phone when everyone else can only customise their lock screen picture.

I don’t think I’ll install anything else beyond that though. Even if things like background scrobbling of tracks can’t be done in OS 3.0 without the background jailbreak daemon, who really cares when 99% of what I listen to on the phone is podcasts 🙂