Tuesday, July 20, 2010

Those Were the Days…

The Computer History Museum has recently posted the original source code for MacPaint and QuickDraw! Apple has given them permission to publish them both, and they're well worth taking a look at if for no other reason than to realize just how good we programmers have it today.

The source code is a combination of 68k assembly, resource files, and Pascal, and all of the code was written by the incomparable Bill Atkinson, one of the early heroes of Mac programming and author of Hypercard (among many other things).

As an interesting aside, Bill stopped programming several years ago to focus on photography, but started programming again after the iPhone SDK came out so that he could create PhotoCard.

If you're not really familiar with who Bill is, you might want to read some of the stories on Folklore.org, but be warned, it's easy to lose track of time at that site if you have any interest in Apple history.

Note: One question that occurred to me looking at this source code was "how could Bill could have coded this back then?" These were written before the Mac shipped, and the Mac shipped with only 128k of RAM, which is smaller than the MacPaint Pascal source. You couldn't have opened some of these source code files on an early Mac due to their size. The answer appears to be that they were written on a Lisa, which shipped with a meg of RAM. That was some crazy amount of memory for the day and part of the reason the Lisa cost $9,999 (somewhere between $19k and $40k in today's dollars. I do seem to recall reading, though, that the early versions of QuickDraw (aka LisaGraf) were written on some model of Apple 2, though.



9 comments:

Chintan Patel said...

Totally agree about folklore.org. So addictive if you are a fanboy. Just wish Steve Jobs would have personally contributed to it like others.

David said...

Is that a copy of Beginning iPhone Development I see on Bill's shelf in his demo video of PhotoCard? :-O

NeptuneNancy said...

Thanks, Jeff, for the link to the Computer History Museum. I was unaware of it, but I've spent the last two hours reading their online exhibits for the history of the Internet and computers. It was fun thinking about what I was studying in college (electrical engineering) at various points on the Internet timeline, such as my networks class, and the fact that some of these milestones were not quite-distant-history at the time!

I remember when our computing center (mainframes for CS classes, but no punch cards, thankfully - missed those by only a year!) added Apple Macintoshes. No more typing term papers!

Jeff LaMarche said...

David:

It is indeed. I was bummed, Bill actually wanted to meet me at the last iDev 360, but I wasn't able to attend that one, and then I missed hooking up with him at WWDC this year.

When I heard that he had used our book, it was pretty awesome. Bill's a bit of a hero of mine, so getting a nice e-mail from him thanking me for the book was one of the best things about having written a book.

Neptune Nancy:

If you're ever in Mountain View, you should visit the actual museum. It's a great place, though I haven't been there for years myself since I no longer live out there.

margh said...

nice postings..give a link to me http://hstreet.blogspot.com/

J Bondo said...

I’m old enough to remember Bill from his active days at Apple. He’s a remarkable person. So it came to my great surprise when he was standing next to me in line for the (no beer) bash wrist band at this year’s WWDC. My friend took our picture.

琬安琬安 said...

GOOD POST~~~~~~~~~~~~Support!!!!............................................................

Jeff said...

Great post! I got MacPaint working, using MinivMac. Will post a how-to soon.
http://pics.brizzly.com/33WK.jpg

Honey said...

Dear Sir,
Can you please let us know the way we can produce bouncing effect with the opengl es sphere and how can we import objects from maya or 3d max

Please do help.