If you want a career in OS X development, you’ll need to understand the Cocoa frameworks1 so you can build desktop applications for Mac. If you’re more interested in iOS development, Cocoa Touch2 will be crucial if you want to create fun and innovative iPhone apps. Either way, we suggest you start by learning Objective-C and/or Xcode before tackling Cocoa or Cocoa Touch (if you haven’t done so already). You’ll need to download Xcode in order to use Cocoa or Cocoa Touch and Objective-C is essential because it is the language that Cocoa is implemented in. Objective-C, Cocoa/Cocoa Touch, and Xcode are the trifecta of skills that will open the gate to a rewarding career as an OS X or iOS Developer where you can make a median salary of $81,000/year3. If you want an efficient and relatively inexpensive way to gain the skills for these careers, try starting with online courses.
Cocoa Essential Training – Lynda.com
Over the course of 5 hours, instructor Simon Allardice will teach you the basics of Cocoa by helping you explore its frameworks and design patterns. This particular set of frameworks will be for OS X Lion so make sure you are interested in developing for that platform. In this course, you can practice building apps along the way as you journey from installing basic tools like Xcode to arranging complex user interfaces.
Learn Cocoa Programming from Scratch – Skillfeed
[cm:20150313114827] As with many Cocoa and iOS courses, make sure you have Xcode before you start this. Then you’ll be ready to dive into a course that Skillfeed recommends for beginner or intermediate level developers. You’ll get almost 5 hours of content here with lessons more specific than most other courses. For example, there are 3 segments on the NSTableView alone. Take the course if have no idea what that is and want to learn!
Cocoa Fast Track Bootcamp – Big Nerd Ranch
Despite its funny name, Big Nerd Ranch has a serious reputation as one of the best (and sadly one of the only) places to get an excellent education in Cocoa. This bootcamp offers intensives several times each year where you get away to Georgia and do nothing but code…on an actual ranch. At $3,700, it’s not the cheapest way to learn Cocoa but it’s actually still less expensive than most bootcamps. Unfortunately, it does not run nearly as long as a normal bootcamp so one could argue that the price is proportional to the time spent.
iOS Development – Bloc.io
After speaking with reps from Bloc, we confirmed that their iOS Development Online Bootcamp teaches Cocoa Touch along with Swift and Objective-C. We featured Bloc in a previous article on Online Bootcamps so check it out if you want to learn more. For $5,000 over the span of 12-36 weeks depending on your preference, Bloc is designed to open the gateway to a programming career.
How to Create a Framework for iOS – Ray Wenderlich
As usual, people recommend Ray Wenderlich’s site as a free way to learn new coding skills. Cocoa is no exception. We recommend this for people already familiar with Objective-C. There aren’t videos so a do-it-yourself attitude will help you a lot. You’ll need Objective-C and Xcode for both types of frameworks but remember that Cocoa Touch and iOS are a different game than Cocoa and OS X.
This training package has exercises and quizzes at the end of each chapter so you can practice as you go. It also alerts you of problems you may encounter constructing Cocoa Touch frameworks and then tells you how to avoid such problems. If you can complete each session in an hour or less, you’ll have learned Cocoa in only 24 hours.
Taking On One Skill at a Time or the Trifecta at Once
If you search for Cocoa and/or Cocoa Touch courses and tutorials on the web, you’ll find lots of results but most of them will be low quality. Trust us on this one. We already scoured the Internet and were pretty disappointed by the low number of quality resources that focused purely on Cocoa and Cocoa Touch. There are a few books and training bundles but most of them are terribly out of date and don’t offer the same experience as a course or bootcamp. The reason for this is the tendency to bundle Objective-C/Swift, Cocoa/Cocoa Touch, and Xcode together into OS X or iOS tracks. Xcode has the same problem as Cocoa although to a lesser extent. Objective-C is really the only member of the trio that has a wealth of quality courses and tutorials offered (although Swift is also growing its learning resources rapidly).
Ultimately, you’ll have to make a choice. Do you want to take individual courses on the three skills or try taking OS X, iOS courses, or online bootcamps that cover all three? If you go with the former, you’ll get more thorough training on each skill but it will take more time and you might have trouble finding quality Cocoa Touch resources other than the ones we listed. With the latter, your education will cover all three skills in less time but will not guide you through many specifics of these skills. You’ll have more responsibility to practice the skills on your own. Either way, we hope you’ll succeed in these careers and be able to learn the skills that go with them.Footnotes