Steve Jobs and the History of Cocoa
lopati writes "O'Reilly Network is running the first of a two part series about the intertwined histories of Apple and NeXT, and more specifically NeXTSTEP and the foundations of Cocoa. Nothing really new, but a nice overview of Mac OS X and a quick rundown of how old missteps (no pun intended :) evolved into the present product and company. I thought this was an interesting tidbit: 'But NeXT wasn't just a software company -- Jobs was also obsessed with building hardware. And this proved to be the company's downfall.' Ironic, because this has been Apple's salvation, or portentous, because history is doomed to repeat itself? You be the judge!"
Not a bad overview, although there are a few factual errors. For example, the article presents the development of the Macintosh as something which started in the wake of the failure of the Lisa in the market. This was not the case. There was actually considerable overlap in the development of the Lisa and the Macintosh.
Also, the article states, "NeXT solved this problem by basing its computer on Unix, the most reliable operating system that had ever been created." That sentence would be far more accurate if the word "desktop" were inserted in front of "operating system," as there are several server operating systems that are at least an order of magnitude more stable than any flavor of Unix, including IBM's VM and MVS systems, and Compaq's OpenVMS and NonStop NSK (originally from DIGITAL and Tandem respectively).
Apple was going to release a version of Cocoa for Windows called Yellowbox that would be free. That way developers could write Cocoa apps and be assured of a large target market by bundling Yellowbox for Windows customers. When the iMac started selling gangbusters, Apple quietly killed Yellowbox for marketing purposes.
Lies about crimes
Too late, the current Apple mouse is called the "Apple Pro Mouse". ;-) It's been called that ever since they went optical.
Myself, I've been using four button mice on my Macs for the last 4 years. I do think that a two button mouse + scroll wheel would be just fine(since the third or fourth buttons do completely different things in different programs, I'm sure they'd stay away from three).
"Common Sense Ain't" -Unknown
After about 4 chapters into the book, after the random calculator and the associated framework I was ready to tear stuff up. I came back a few times as a reference, using the Preferences frameworks in my own application.
Really good stuff, good concepts and understanding and solid examples. His writing style makes learning Cocoa exciting. When I wanted to learn OS X programming, I started with Carbon thinking more resources are available and it would be easier. After seeing the power of Cocoa, and how little GUI code you have to write - it's incredible. You can spend 5 minutes doing GUI work and layout and spend most of your time just working on what you want it to do.
Anyhow, enough of that. Aaron's book rocks. Buy it.
-Pat