Chapter 18. Where to Next?

Well, wow! You're still with us, huh? Great! It sure has been a long journey since that very first iPhone application we built together. You've certainly come a long way. We'd love to tell you that you now know it all, but when it comes to technology, and especially when it comes to programming, you never know it all. The programming language and frameworks we've been working with for the last 17 chapters are the end result of more than 20 years of evolution. And Apple engineers are feverishly working round the clock, thinking of that next cool new thing. The iPhone platform has just begun to blossom. There is so much more to come.

By making it through this book, you've built yourself a sturdy foundation. You've got a solid knowledge of Objective-C, Cocoa Touch, and the tools that bring these technologies together to create incredible new iPhone applications. You understand the iPhone software architecture, the design patterns that make Cocoa Touch sing. In short, you are ready to chart your own course. We are so proud! So where to next?

Getting Unstuck

At its core, programming is about problem solving, about figuring things out. It's fun, and it's rewarding like few things are. But, at times, you will run up against a puzzle that just seems insurmountable, a problem that just does not seem to have a solution.

Sometimes, the answer just appears if you take a bit of time away from the problem. A good night's sleep or a few hours of doing something different can often be all that is needed to get you through it. Believe us; you can stare at the same problem for hours, overanalyzing and getting yourself so worked up that you miss an obvious solution.

And then there are times when even a change of scenery doesn't help. And in those situations, it's good to have friends in high places. The following sections outline some resources you can turn to when you're in a bind.

Apple's Documentation

Become one with Xcode's documentation browser, grasshopper. The documentation browser is a front end to a wealth of incredibly valuable sample source code, concept guides, API references, video tutorials, and a whole lot more. There are few areas of the iPhone that you won't be able to learn more about by making your way through Apple's documentation. And if you get comfortable with Apple's documentation, making your way through uncharted territories and new technologies as Apple rolls them out will be easier.

Note

Xcode's documentation browser takes you to the same information you can get to by going to Apple's Developer Connection web site at http://developer.apple.com.

Mailing Lists

You might also want to sign up for these handy mailing lists:

http://lists.apple.com/mailman/listinfo/cocoa-dev — This moderately high-volume list run by Apple is primarily about Cocoa for Mac OS X. Because of the common heritage shared by Cocoa and Cocoa Touch, however, many of the people on this list may be able to help you. Make sure to search the list archives before asking your question, though.

http://lists.apple.com/mailman/listinfo/xcode-users — Another list maintained by Apple, this one is specific to questions and problems related to Xcode.

http://lists.apple.com/mailman/listinfo/quartz-dev — This is an Apple-maintained mailing list for discussion of the Quartz 2D and Core Graphics technologies.

Discussion Forums

These discussion forums allow you to post your questions to a wide range of forum readers:

http://devforums.apple.com — This is a web forum set up by Apple specifically for discussing iPhone and Mac software development. Many iPhone programmers, both new and experienced, including many of Apple's engineers and evangelists, contribute to these forums. It's also the only place you can legally discuss issues with pre-release versions of the SDK that are under nondisclosure agreements.

http://www.iphonedevsdk.com — On this web forum, iPhone programmers, both new and experienced, help each other out with problems and advice.

http://discussions.apple.com/category.jspa?categoryID=164 — This link connects you to Apple's community forums for Mac and iPhone software developers.

http://discussions.apple.com/category.jspa?categoryID=201 — This one connects to Apple's community forums for discussing the iPhone.

Web Sites

Visit these web sites for helpful coding advice:

http://www.iphonedevbook.com — This is the official web site for this book. We will post errata as people report bugs and typos to us and maintain the most current version of all book projects. We'll also tell you what we've been working on lately and what we've got in the works.

http://www.cocoadevcentral.com — This portal contains links to a great many Cocoa-related web sites and tutorials.

http://cocoaheads.org — CocoaHeads is a group dedicated to peer support and promotion of Cocoa. It focuses on local groups with regular meetings where Cocoa developers can get together, help each other out, and even socialize a little bit. There's nothing better than knowing a real person who can help you out, so if there's a CocoaHeads group in your area, check it out. If there's not, why not start one?

http://nscodernight.com — NSCoder Nights are weekly, organized meetings where Cocoa programmers get together to code and socialize. Like CocoaHeads meetings, NSCoder Nights are independently organized local events.

http://cocoablogs.com — This portal contains links to a great many blogs related to Cocoa programming.

http://www.iphonedevcentral.org — This web site is devoted to iPhone programming tutorials.

http://www.iphonesdkarticles.com/ — This site is also devoted to iPhone SDK tutorials.

http://stackoverflow.com/ — A community site targeted at programmers. Many experienced iPhone programmers hang out here and answer questions.

Blogs

If you still haven't found a solution to your coding dilemma, you might want to read these blogs:

http://theocacao.com — This blog is maintained by Scott Stevenson, an experienced Cocoa programmer.

http://www.wilshipley.com/blog/ — Wil Shipley is one of the most experienced Objective-C programmers on the planet. His Pimp My Code series of blog postings should be required reading for any Objective-C programmer.

http://rentzsch.com — Wolf Rentzsch is an experienced, independent Cocoa programmer and the founder of the C4 independent developers' conference.

http://eschatologist.net/blog/ — Chris Hanson works at Apple on the Xcode team, and his blog is filled with great insight and information about Xcode and related topics.

http://cocoacast.com/ — A blog and podcast about various Cocoa programming topics, available in both English and French.

Dave and Jeff Blogs and Twitter

Dave and Jeff are both active Twitter users. You can follow them via http://twitter.com/davemark and http://twitter.com/jeff_lamarche. Dave and Jeff have blogs, too:

http://iphonedevelopment.blogspot.com — This is Jeff's iPhone development blog. It contains lots of great technical material. Be sure to check out the ongoing series on OpenGL ES.

http://www.davemark.com — This is Dave's little slice of everything under the sun. There's some technical material, but mostly just stuff that catches his attention.

More iPhone 3 Development

If you're serious about diving more deeply into the iPhone SDK, especially if you're interested in all the great new functionality introduced with the iPhone 3 SDK, of which we only scratched the surface in this book, you should check out More iPhone 3 Development, also by Dave Mark and Jeff LaMarche (Apress, 2009).

And If All Else Fails...

Drop Dave and Jeff an e-mail at . This is the perfect place to send e-mails about typos in the book or bugs in our code. We can't promise to respond to every e-mail, but we will read all of them. Be sure to read the errata before clicking send. And please do write and tell us about the cool applications you develop.

Farewell

We sure are glad you came along on this journey with us. We wish you the best of luck and hope that you enjoy programming the iPhone as much as we do.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.187.79