Dear Steve,
you have shown us that we don’t understand what we think we understand, and must redo what we think is done, in order to go forward. You’ve tought us not to accept mediocracy, not from ourselves and not from the world around us. Strive for passionate perfection, every day, with love. Love for what we do and those that surround us.

Rest in Peace


Finally, after having sent mails to people high up at Apple, signing petitions, joining groups and blogging about it for many years, iTunes movie rental and purchase is coming to Scandinavia, possibly the world. That is great, we have been missing it for ages. Thank you, Apple, for allowing us to send you money ;-) Like many other people, I’m looking forward to trying out this service, especially the rental service.

But what this makes me really happy about is that I now am actually optimistic about iTunes Match being not only a US product. So far, we have had no access to iTunes movies, tv-shows, Apple’s iBookstore and probably other similar features I forget. It even took for ages for the AppleTV to get to Denmark, I bought mine in Australia. But iTunes Match is exciting, and will hopefully be a really great showcase for iCloud. October 4th will be exciting in its own right, but the movies becoming available makes me excited that there will be less US-only services and more open-for-the-world services.


I’ve used many version control systems, but this week has been the first time I’ve used Mercurial for anything more than a bit of testing. It looks good to me, so I read a bit around to see how people are using it in their projects, and I came accross Lajos Kamocsay’s post about how he includes Mercurials branch and revision information in his Xcode projects that I think deserves a shout-out.


When updating an Address Book record in Cocoa, I read that I had modify the record using ABRecordSetValue(). But it wouldn’t change. Even if I called ABAddressBookSave() afterwards, it just wouldn’t change. It turns out I had to call ABAddressBookAddRecord() also. There is no ABAddressBookUpdateRecord(), but it turns out that the ABAddressBookAddRecord function does the same. I expected that it would give me a duplicate record, but it does not, it updates the existing record. Glad to have that sorted out, I hope this helps you as well.


I’m sorry if this is all over the net today, but I really find this a great info graphic, by Noodlor. I link directly to his graphic:
A quick & comprehensive guide type guide