There appears to be a lot of gnashing of teeth regarding the non-existence of the iPhone SDK. Some are saying that it is proof that Apple are evil and out to get us. There are rumours that the iPhone is about to undergo a platform shift and his Steveness is just saving Apple the trouble of yet another compatibility layer (although they must be getting good at them now). Even more likely is the idea that the iPhone is waiting for Leopard. Gruber's take on this is:
It’s entirely possible that Apple is committed to opening up the iPhone to development but that they aren’t yet ready, and, as per their usual policy, are keeping their mouths shut in the meantime.
This strikes me as the most likely. We all know that his Steveness is not too keen on third-party developers, even ones with as much style as Mac developers. But it is a smartphone and as such will be pretty odd without an SDK.
However, it did make me think back to one time where I knocked together a Delphi component. We needed a UI component and could not find a third-party one that looked good for the right price. So I spent three or four days building one. I think I used to cost the company approximately £200 per day - so let's say the component cost £800. I showed it to people and they thought it looked great - it did the job it needed to and did it reasonably well. Other people in the organisation started using it and, as a result of the feedback, I enhanced it. Probably another day - putting the cost at around £1000. Then my boss came over and asked what we would need to do to sell this component. Armed with a fountain pen, a piece of paper and some blind guesswork I came up with the following:
|Remove the dependency on a third-party component||5 days|
|Add functionality to deal with overlaps (not needed for us but will be the first feature asked for)||15 days|
|Documentation and User Guide||4 days|
|Extensive Testing||4 days|
In other words, my £1000 project turns into a £6600 project - 1 week turns into over a month. And these were rough estimates with a high margin of error (and, it has to be said, subject to the vagueries of my memory, several years on). Of course you would then need to chuck in support staff of some sort, as soon as you get your first sale. Where the original code did what it did and could be passed around the organisation without a worry, as soon as you get third parties involved the whole enterprise becomes a whole order of magnitude more complicated. We never did sell the component - it just wasn't worth the effort.
I'm sure that there is an iPhone SDK waiting to be released somewhere. But I bet it is Leopard dependent and I bet it is not ready for general consumption. The whiners will just have to wait.
Nuts by sundstrom.