John C. Welch (aka Bynkii, Angry Mac Bastard): Password Changes in Open Directory (One burst of profanity). For us Mac users who are sometimes a little too smug about the Mac's user interface. (The podcast: Angry Mac Bastards. Extreme profanity there, though.)
Loren Brichter (Atebits, Tweetie): Not Your Average iPhone Screencast. How to make the simulator look like a real device in screencasts.
Faruk Ateş: The Conquest That Wasn't. How Microsoft dominated the PC world without conquering it. I think Faruk utterly nails this.
Tenni Theurer (Yahoo Interface Blog): Web Performance Research, Part 3: When the Cookie Crumbles. From 2007, but I hadn't seen it yet.
Matt Gallagher (Cocoa with Love): Safe, threaded design and inter-thread communication
Chris Hanson on Objective-C 2.0's dot syntax. When to use it, when to not use it, and what it's really there for.
Elizabeth Gilbert (Eat, Pray, Love): on nurturing creativity. Probably my favorite TED talk. I saw this a few months ago, but promptly forgot about it, so I'm linking to it this time.
Zack Rusin: Git cheat sheet. (via unixfudotnet)
Matt Gallagher (Cocoa with Love): Control and configuration of applications through Info.plist. I hadn't heard of UIRequiresPersistentWiFi before, so this will be helpful to me.
Xcode and iPhone OS 3.0.1
To get Xcode 3.1.3 working with iPhone OS 3.0.1, you'll need to teach Xcode how to target iPhone OS 3.0.1.
Xcode will automatically recognize iPhone OS 3.0.1 and look for a new SDK at a set path. The problem is that SDK doesn't exist. The good part is that the iPhone OS 3.0 SDK works perfectly for developing 3.0.1. The only apparent change is the SMS fix.
Assuming you've installed to /Developer, the iPhone OS 3.0 SDK is here:
/Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.0 (7A341)
When using Xcode with iPhone OS 3.0.1, Xcode looks for the iPhone OS 3.0.1 SDK here:
/Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.0.1
The trick, then, is to build a symbolic link that connects what Xcode is looking for with what it needs to find.
So what do you do? Assuming you've installed Xcode in the standard location, this is a Terminal command to fix the problem:
ln -s /Developer/Platforms/iPhoneOS.platform/DeviceSupport\
/3.0\ \(7A341\) /Developer/Platforms/iPhoneOS.platform/\
DeviceSupport/3.0.1
(I've split this into three lines to make it easier to copy and paste with the \ line continuation character.)
This will not add a SDK to Xcode's list, it will just teach Xcode to map your device to the 3.0 SDK.
A few other tips:
- If you still can't debug restarting your iPhone may help. Most of the iPhones I've tried to debug on, I've had to restart first.
- If you get an error regarding code signing, try downloading your provisioning profile again and re-installing it. Also, select it again in your build settings.
Based on information from iPhone OS 3.0.1 Advisory.