Preface

I first encountered Cocoa as a college student in about 1989. Of course, that was before the iPhone, before Mac OS X, and before it was even called Cocoa. Back then, the seed of today’s Cocoa was a part of NeXTStep, the OS that was the core of the NeXT computers. NeXTStep was years ahead of its time, and while the lab full of NeXT workstations was woefully underused in the computer science courses, my student sysadmin job had me using them daily. As a user, I was hooked. I won’t dwell on the NeXT user experience here, but I’ll just state that many of the best features of Mac OS X come not so much from the Mac of old as from NeXTStep.

At that time, there was no www, not much of a NeXTStep developer community, and very little written about the development environment apart from the impenetrable tomes that NeXT shipped with its earliest machines. I tried to wrap my head around Objective-C and the AppKit from time to time, but without any nearby experts or much example code to look at (not to mention my actual studies, which sometimes distracted me from playing with fun projects), I was basically stumped.

After college, something completely unexpected happened. A friend pointed me in the direction of a consulting firm in my city that was building custom NeXTStep apps for some pretty big customers, and I had the good fortune to come onboard. Suddenly, I had a group of colleagues who had not only been programming in NeXTStep for a while, some of them had even worked at NeXT! And one of them was Peter Clark. All it took was a bit of their expert help to get me started, and the things that had seemed so mysterious for years suddenly made sense. Within a few weeks I learned so much that I was able to start leading some training and mentoring efforts in NeXTStep development.

The point here isn’t that I’m a genius or a quick study. It’s that the set of technologies we now call Cocoa is really powerful—and quite easy to learn and put to good use—but you’re likely to need some help along the way. I’m hoping that this book will help nudge you in the right direction and help you learn the essence of Cocoa programming, so that by the time you’re finished reading it, you’ll have enough knowledge of Cocoa to be able to propel yourself forward and write the Mac applications of your dreams. In short, the kind of book I wish I’d been able to find 20 years ago.

—Jack Nutting

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

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