Tom Pittman on HyperCard, Programming, and Operating Systems
- 2007.10.04
Low End Mac Reader Specials
TypeStyler For Mac OS X is Now Shipping! Download The Free Fully Functional 60 Day Tryout at www.typestyler.com
OWC: Get the Right Memory / Ram for your Mac. Top Quality, Competitive Prices, Lifetime Warranty. Expert Support and Video Installation Guidies too! 4.0GB Matched Sets from $87.99, Options up to 32GB. Click here
Don't install Parallels to play poker online! Poker Mac will show you how
to download and install a native Mac poker application such as Full
Tilt Poker Mac.
Laptop Hardware Provided by TechRestore - Overnight Mac & iPod Repairs.
Compare products like desktop computers, apple laptops, apple macs, and LCD Monitors side by side! All the information and reviews to make the best purchasing decision for new mobile phones, sat nav systems, or MP3 players. The Ciao online shopping community makes searching products easy for you.
Welcome to the first in a hopefully long and entertaining series with some of the wizards of the Macintosh programming world. Although the Mac may be the world's easiest computer for the rest of us, it has not traditionally been the easiest system to develop on. We all owe a debt to those pioneering programmers who used their time and skills to provide us with the Mac OS and so much wonderful software to run on it.
Today's interview is with Tom Pittman. Tom has a long history in the microcomputer industry. He is the co-author of a well respected text on compiler design called, appropriately enough, The Art of Compiler Design. He has taught Computer Science at Kansas State and Southwest Baptist University. In the Mac world, he is best known as the author of "CompileIt", an amazing program that allowed compilation of HyperCard scripts into super-fast machine code.
Tom's website has his bio as well as many interesting links:
Comment from Tom: "I think the Mac is great to develop on; it's just hard to develop for. What I call the 'Conservation of Complexity': If a program is easy for the user, it's hard for the programmer, and vice-versa."
Rick Lawson: Tom, thanks for agreeing to this interview. Would you please tell us how you became interested in programming?
Tom Pittman: In high school, I wanted my own computer. I collected electronic parts - 200 triode vacuum tubes - to build a computer. I didn't have a clue. I was a math major in college - that was before they had such a thing as "computer science" - but all the proofs were getting to be a drag.
The math major included one lab course in programming. I loved it. That summer I went to interview for a tech writer job in a local government laboratory; they had already hired somebody else, but they had an opening for a "mathematician". I told them that was my major, and they hired me. They really wanted a computer tech, but the pay was better for a mathematician.
Rick: What specifically what drew you to the Mac?
Tom: In grad school I was learning about operating systems and windowing environments. I even started to write my own windowing OS. To do my thesis, I needed some special arrow characters not in a daisywheel printer, but the Mac had just come out, and I knew it had software fonts, so I could create my own.
My prof told me I should try it before spending any money and loaned me his. He never got it back. It was everything I wanted in a computer. I wrote my own native-code Pascal compiler. That was when everybody else was buying a $10K Lisa to program for the Mac. I was going to write programs for the Mac, but for two years I didn't need to, because everything I wanted already existed on it.
Rick: HyperCard was really a groundbreaking program in opening up software development to the masses. On the limited hardware of the time, HyperCard was criticized as being too slow. CompileIt directly addressed this issue, as well as providing access to low level Mac ROM routines from HyperCard.
Please tell us how you conceived of CompileIt and some of its history?
Tom: My specialty is compilers. When HyperCard came out, Bill Atkinson said there would never be a HyperCard compiler. Strictly, he was right, because you can write self-modifying scripts in HyperCard, and that just can't be compiled in any reasonable way. But I figured that most of what people do can be compiled, and I could punt the rest. Besides, it would be fun to prove Atkinson wrong.
Pundits were also saying that HyperCard was too limited to do useful things. I decided to prove them wrong at the same time by writing my compiler entirely in HyperCard. I did that. I never used any other programming tool besides ResEdit (and a text editor) for any version of CompileIt, not even the first one, which I wrote completely in HyperTalk. It was incredibly slow, but it worked. Then I compiled it in itself, and it got much faster.
Around the time I got the idea of HyperCard compiling HyperCard, Macworld magazine came up with their "SuperStacks" HyperCard programming contest. CompileIt was barely functional when I submitted it, and the philistines in San Francisco didn't give it the attention I thought it deserved. By then I'd put enough effort into it that somebody mentioned me to Brian Molyneaux at Heizer Software, and he immediately saw its advantages and became my publisher. Brian was great at seeing how it could be improved.
Rick: Who were some of the more interesting users of CompileIt? How about unusual or interesting uses?
Tom: I really didn't have that much contact with the users; Brian did all that. I answered questions on the CompuServe HyperCard forum until their system software locked out text-only users like me. I did once go to an Apple Developer's Conference, and over lunch one day I happened to strike up a conversation with one of my users. I didn't know who he was until much later, when I heard of The Hitchhiker's Guide to the Galaxy. Douglas Adams was an avid CompileIt user. I also took apart the Mac version of Myst (the game); it was implemented in HyperCard, and I found one of their XCMDs had been compiled by CompileIt (I can tell from the machine code what language it was written in).
Rick: Did Apple ever approach you about integrating or bundling CompileIt with HyperCard?
Tom: Apple never understood what HyperCard was. Rumor was that they only offered it because Atkinson wanted people to use it, and if Apple didn't agree to ship it free with their computers, he would go somewhere else. They did not want somebody as smart as Atkinson working for a competitor. As soon as their "free" agreement expired, they started charging money for it, and they eventually discontinued it.
Rick: You have some fairly strong opinions on OS X. Please give us your thoughts.
Tom: I spent 20 years vigorously avoiding Unix - and failing often enough to remind me why it was a good thing to avoid. If you must use Unix, Apple's AU/X was arguably the least painful way to do it (much easier to use than OS X), but even AU/X was so bad it didn't last long.
After Apple announced their intention to replace their "aging" 17-year-old Mac OS by a "modern" 35-year-old Unix with a thick layer of pancake makeup, I tried to get some version - any version - of Unix/Linux up on any platform. For over three years I failed utterly to get anything to survive the first reboot. Even OS X crashed "kernel panic" dead on me the first day.
When I got on faculty at the university, there were gurus there who knew the Unix system well enough to get it up for me.
Unix is a system designed by geeks for geeks; it is not a system for real people.
Unix is a system designed by geeks for geeks; it is not a system for real people. The only people recommending OS X are geeks whose paid job already involved using lots of Unix computers before they ever looked at OS X.
Recall that I "are" a geek myself (PhD in computer science). But like the rest of the real world, I want my computer to help me get my job done, rather than forcing me to learn arcane commands that don't do useful things. The Mac OS gave my productivity an order of magnitude boost; everything since then (even Mac OS versions after 6) only goes backwards.
Rick: Do you think programming is an art or a science?
Tom: Some of each. The painter must know his colors and how to make perspective and light sources work; that's science, and he can't really make credible pictures without it. But nobody buys paintings by engineers. You have to be able to visualize a world that doesn't exist and then create it. As some sculptor reportedly said, "You take this block of marble and remove everything that isn't the statue."
I can teach principles of software design, but most people just go through the motions, following the recipe; they don't really get it.
Rick: Now that the software industry has matured, do you feel software can still be a force for change in the world ?
Tom: That question seems to personify software. It's a tool, not a force. People use tools to change the world. Computers - and the software that makes them work - seem pervasive today, but I think we are about where cars were 60 or 75 years ago. There is more change coming, caused by computers, but not so obviously.
Rick: What are you working on now?
Tom: A sort of super-compiler. I'm using compiler technology in natural-language translation. I have it working, sort of, but not as easy to use as HyperCard or CompileIt :-) See http://www.BibleTrans.com/ for details. The first prototype was written in HyperTalk (and compiled in CompileIt), but now I'm trying to get it up on a PC.
In my spare time I also think about finishing that windowing OS I started to write in the early 1980s. I want my Mac back. OS X is not a Mac.
Rick: Any parting thoughts?
Tom: In the spirit of HyperCard/CompileIt (and TinyBASIC before that), I wonder if it might be possible to get a Mac-like (non-Unix) OS up, perhaps building on the open-source Linux kernel but without all the Unix mistakes that make Linux unusable.
Think what would happen to Vista and Linux if that $100 computer they are working on for third-world users was as easy to use as the Mac was. Would some foundation fund development? Once we had version 1.0 working, it would acquire a life of its own. It can be done!
Rick: Tom, thanks so much for your time, and good luck in
your future endeavors.
About the Interviewer
Rick Lawson is a Senior Developer specializing in Web technologies. He lives in South Carolina with his wonderful wife, son, daughter, and three cats. He has been enamored with Macs since coming across a brand new Mac Plus in college almost 20 years ago.
Recent Pioneers in Mac Development Columns
- REALbasic Growing to Include Cocoa, Mobile, and Web Development, 08.18. REALbasic is a cross platform development tool for Mac, Windows, and Linux. The company is working on expanding that to the Web, mobile devices, and the Mac's Cocoa.
- Andrew Barry on Why REALbasic Is a Great Rapid Application Development Tool, 08.04. REALbasic started as a way to give the Classic Mac OS something similar to Visual Basic, but it's grown far beyond that.
- Environmentally responsible retirement for old Macs, 06.13. After you've scavenged what useful parts you can from your old Mac, what's the most environmentally friendly way to dispose of the rest?
- Supporting a classic Mac 'habit' on the cheap, 06.09. Mac nostalgia leads to a year-long rediscovery of the pleasures of old Macs and the classic Mac OS.
- More in the Pioneers in Mac Development index.
Links for the Day
- Mac of the Day: Power Mac 4400, Nov. 1996 - Apple does cheap to compete with clones - and nobody is impressed.
- Group of the Day: Puma List is for anyone using Mac OS X 10.1.
- November 7 in LEM history: 00: PowerBook Lite dreams - Our first Macs - 01: OS 9, OS X, or Linux? - 02: Xserve for the classroom - 03: Panther on slot-loading iMacs - High capacity Lombard/Pismo battery - 05: Clean keyboard residue from laptop screen with ROR - SeaMonkey - 06: Dan Bricklin, inventor of the spreadsheet - Turn any Mac into a gameshow buzzer - 07: The transforming PowerBook 1400 - PowerBook 540 on Compact Flash
- Support Low End Mac
Recent Content on Low End Mac
- Quad-Core CPU Makes Sense in MacBook Pro, OS X 10.6 Causing Overheating, Overseas Power, and More, The 'Book Review, 11.06. Also Late 2009 MacBook reviewed, how to add RAM to new MacBook, 18.4in Acer notebook used Intel i7, and SanDisk SSD chosen for Sony VAIO X.
- Dumping Macs for Google Apps, SSD in iMac, Late 2009 iMac Performance Problems, and More, Mac News Review, 11.06. /newsrev/09mnr/1106.html
- WiFi Paranoia, iMac-O-Lantern, Magic Mouse Does Click, Free Clipboard Managers, and More, Charles W. Moore, Miscellaneous Ramblings, 11.05. Also strange time stamps, problem with ColorIt on Intel Mac, and the story behind OS X 10.5.4 install discs.
- IDE Is Dead; Long Live SATA!, Dan Knight, Mac Musings, 11.04. SATA has displaced parallel ATA. While IDE hard drives haven't disappeared, the best deals are in SATA hard drives.
- QuickTime X in Snow Leopard Imports, Trims, and Publishes Video Quickly and Easily, Alan Zisman, Zis Mac, 11.04. The long, slow process of importing video into iMovie to edit it, then render it to another format, is history as QuickTime X does that much more quickly.
- More links in our archive.
Recent Deals
- Best Mac Pro Deals, 11.03. Used 2.66 GHz 4-core, $1,300; 3.0 8-core. $2,299; refurb 2.66 4-core Nehalem, $2,149; 2.93, $2,549; 2.26 8-core, $2,799; 2.93, $4,999.
- Best iPhone Deals, 11.03. New 8 GB iPhone 3G, $$99; refurb 16 GB 3GS, $149; new, $199; 32 GB, $299.
- Best 12" PowerBook G4 Deals, 11.03. Used 867 MHz SperDrive, $348; 1 GHz, $499; 1.33 Combo, $298; SD, $559; 1.5 Combo, $448; SuperDrive, $589.
- Best Power Mac G3 and PCI Video Card Deals, 11.02. Used beige 300 MHz, $25; G4/366, $49; blue & white 350, $80; 400, $90; 450, $105; PCI video cards from $15; shipping additional.
- Best Power Mac G4 and AGP Video Card Deals, 11.02. Used 400 MHz, $50; 733 MHz, $69; 933 MHz, $209; 1.25 GHz dual, $299.
- Best 15" MacBook Pro Deals, 11.02. Used 2.0 GHz, $800; 2.2, $900; 2.4, $1,000; refurb 2.53, $1,449; 2.66, $1,699; 2.8, $1,949; 3.06, $2,169; new 2.53, $1,579; 2.66, $1,799; more.
- Best Mac mini Deals, 10.30. Used 1.33 GHz G4 mini, $379; 1.42, $389; 1.5, $419; 1.83 GHz Core Duo, $350; Core 2, $439; new 2.26 GHz nVidia, $580; 2.53 GHz, $770; Server, $990.
- Best G4 iBook Deals, 10.30. Used 12" 1.07 GHz Combo, $225; 1.33 GHz, $298; 14" 1 GHz, $349; 1.33 GHz, $398; 1.42 GHz SuperDrive, $498.
- Best Classic Mac OS Deals, 10.30. System 6.0.8 floppies, $10; 7.1, $12; 7.5, $20; 7.5 CD, $4; 7.6 $13; 8.1, $11; 8.5, $20; 8.6, $90; 9.0, $20; 9.2.2, $30.
- More deals in our archive.
About LEM | Support | Usage | Privacy | Contacts
Navigation
Used Mac Dealers
Apple History
Video Cards
Email Lists
Favorite Sites
MacSurfer
MacMinute
MacInTouch
MyAppleMenu
InfoMac
Macs Only!
The Mac Observer
Accelerate Your Mac
RetroMacCast
PB Central
MacWindows
The Vintage Mac
Museum
DealMac
DealsOnTheWeb
Mac2Sell
ramseeker
Mac Driver Museum
JAG's House
System
6 Heaven
System 7 Today
the pickle's Low-End
Mac FAQ
Abandonware
Petition
Mac vs. PC Info
Affiliates
The Apple
Store
Mac
Connection
B&H
MacMall
TechRestore
ExperCom
Crucial
Memory
batteries.com
Advertise
MacMinute
MacInTouch
MyAppleMenu
InfoMac
Macs Only!
The Mac Observer
Accelerate Your Mac
RetroMacCast
PB Central
MacWindows
The Vintage Mac
Museum
DealMac
DealsOnTheWeb
Mac2Sell
ramseeker
Mac Driver Museum
JAG's House
System 6 Heaven
System 7 Today
the pickle's Low-End
Mac FAQ
Abandonware
Petition
Mac vs. PC Info
Mac Connection
B&H
MacMall
TechRestore
ExperCom
Crucial Memory
batteries.com

