This isn't quite the same as a NullPointerException in Java though. I forgot to make the database connection at all initially, and I only saw the problem because a unit test failed - invalid number of returned rows. Why? Because Objective-C handles null objects properly so any method I invoked on nil just becomes a no-op.
So - what does this mean?
Note to self:
1. write more unit tests.
2. learn from stupid mistakes faster
5:59:03 PM
Cocoa implements time according to the Network Time Protocol (NTP) standard, which is based on Coordinated Universal Time. The current private implementations of NSDate follow the NTP standard. However, they do not account for leap seconds and therefore are not synchronized with International Atomic Time (the most accurate). [Apple]
Huh?
I looked up Java's Date representation and I couldn't figure out if it used leap seconds or not. There's a really long winded discussion about leap seconds in the java.util.Date javadoc, but it seems to imply that it depends on the underlying operating system.
Thing only get more confusing when reading up on Dan Bernstein's weblog on TAI and UTC time. Aiyeee!!!
3:31:00 PM