
Also I used the iPhone development course from Stanford on iTunes U, which is quite comprehensive (these guys will be pretty much competing with this series, which is top notch and also free):
http://itunes.apple.com/us/itunes-u/developing-apps-for-ios-...
1) learning how to program in Objective C 2) learning how to use Xcode (probably one of the worst IDEs I've ever used) 3) learning how to use the specific parts of the iPhone like iteracting with the camera, etc.
There will be a lot of issues to deal with, such as accessing the camera, storing the photo, uploading it to the web site, etc, that are non-trivial. Without a knowledge of C/C++, it might take you on the order of months, not days.
I picked up "Beginning iPhone 4 Development" and was new to both iPhone develoment and MacOS. It took me about 2 weeks to get a working app that just posted text to a Google App Engine backend, although a lot of progress was made over 1 weekend of straight coding and playing around. My biggest frustration was learning how to use Xcode, but I basically just followed the book and it ended up being a pretty good tutorial.
I don't want to be a hater, but $50 for a video tutorial that promises to teach you iPhone development in under 1 hr sounds unlikely. There are A LOT of details that need to be addressed, and I feel like the "Beginning iPhone 4 Development" book is pretty damn good as an introduction, so that's probably money better spent.
If that's true, why does Apple, easily the most experienced Cocoa developer of all, use nib files in its shipping products? What have you discovered about Interface Builder that the creator of the tools and frameworks doesn't know?
This isn't generated code. It's not even remotely like Frontpage. Again, from the above link:
"Interface Builder does not generate code. It doesn’t create a forms file of any sort. What it does, is actually instantiate and configure the same objects that you use in your application to show your user interface. If you add a button to your application in Interface Builder, you’re actually creating an instance of UIButton or NSButton. When you configure it, you’re actually setting state on that button instance. Then, when the nib file gets saved, that button gets serialized into the nib file using NSCoding, exactly the way we persisted objects the archiving section of the persistence chapter in Beginning iPhone 3 Development. Basically, the nib loader is doing exactly what the code you would write to create and configure the interface object would do, down to the actual method calls used."
Except instead of a couple dozen lines of code, you have no lines of code – which strikes me as an excellent deal.
"If you’re writing tons of code to implement your user interface, that’s lots of code you have to write, maintain, and debug. The nib loading code is solid. It’s been around darn near 20 years and is used in literally thousands of production applications, including most of Apple’s applications. Apple very much "eats their own dogfood" when it comes to their development tools. If you look inside the bundles of an Apple application, the chances are very high that you will find some nib files in there."
Beginning iPhone 3 Development: Exploring the iPhone SDK by David Mark and Jeff LaMarche