Steve Jobs talks about
PPCToolbox over TCP

When Lefty, my manager, and Steve Glass, vice president of Mac OS Engineering, came to me in May 1999 and asked if I could make the Program-to-Program Communication Toolbox (aka Program Linking, aka network AppleScript) work over TCP/IP, it wasn't something that I was terribly excited about. I've hardly ever used AppleScript, and I generally believe that programmers do their best work when they're working on something they actually use themselves and care about. It was already six weeks past the cutoff date when Mac OS 9 was supposed to be 'feature-complete', so it seemed like the project was set up for failure before I even started.

However, it was impressed upon me that it was a very high priority for the company, so I put in two hard weeks of working evenings and weekends, to write the new TCP/IP version and get it finished in time for the 'alpha 5' build of Mac OS 9. The one incidental attraction for me that made it a slightly more interesting challenge was that PPCToolbox on AppleTalk runs over the AppleTalk Data Stream Protocol (ADSP). ADSP is a message-stream protocol — it preserves message boundaries in the transmitted data. TCP is a byte-stream protocol — boundaries between logical message blocks are not preserved, and the data arrives at the other end as a big undifferentiated stream, like bytes in a file on disk. This means that PPCToolbox over TCP was going to need a framing protocol to recover message boundaries from the byte-stream, and message framing is something I happen to know about. In fact, I had a particular framing protocol in mind that would be just perfect for this job — Consistent Overhead Byte Stuffing (COBS).

After the work was finished, I more-or-less forgot about it as I got back to concentrating on more interesting networking problems, until I heard all the fuss surrounding Steve Jobs's keynote speech three months later at Seybold in San Francisco in August. It turns out that Steve Jobs presented nine highlights of Mac OS 9, and one of them, one he described as "a biggie", was PPCToolbox over TCP. Here's a video clip showing edited highlights of the keynote speech. It was especially rewarding to hear the applause, before Steve Jobs even had the chance to finish his sentence, when the audience saw the words "AppleScript over TCP/IP" appear on the screen. The thought had crossed my mind, when I was working late nights alone in the office, that no one would really care about this new feature. I was very glad to see that Apple management had been right when they said that this was something our customers really wanted.

The video clip is about four minutes long and 9MB in size. If you have a network connection at 300kb/s or higher it will play live. With slower connections you will have to wait for it download a bit before it can start playing. Click the play button when you're ready to start watching.

Page maintained by Stuart Cheshire
(Check out my latest construction project: Swimming pool by Swan Pools)