Insider stuff for other programmers

Computers used to be huge, expensive monsters that needed a room full of air conditioning equipment just to keep from burning up. You had to be a government, a large corporation, or a university just to own or have access to one. The Personal Computer Revolution people sometimes talk about actually got started when ordinary people who weren't corporations or governments started building computers of their own. These early computers were hand-made collections of various parts that were "personal" simply because real people managed to hack them together out of memory boards, power supplies, computer processor chips, and other stuff. They usually consumed most of a desktop (a real desktop, not the Windows screen that came much later) and also consumed enormous amounts of time. I remember spending quite a few days just getting my first computer to talk to the Teletype terminal that I had to use because computer keyboards hadn't been invented yet.

In those days, anybody who could hack together a personal computer that actually worked -- a computer that you could really program to do anything at all -- was something of a hero. At least we all thought so. Building the hardware was only the first step, and soon a "good hack" also referred to to writing a clever piece of computer code. So the name "hacker" was synonymous with building and programming your own personal computer system. We liked being called hackers because it meant that we knew something about computers and that we were not the "computer professionals" who wore suits and ties, and ran the corporate computers that were nothing but huge business machines for cranking out bills and printing checks.

It wasn't long before companies like Apple and Radio Shack saw the potential for "fun size" computers that individuals could own. As soon as personal computers were something you could just buy -- instead of something you had to build from scratch -- writing software became the hacker's focus. It also became possible to actually write and sell software because there were enough personal computers to provide a market for your work. My first commercial program was written on a Bally computer. It was 4,000 bytes (2 K) long and was distributed on audio cassettes. When the first floppy disks appeared I was able to create much larger programs, including the first Typing Tutor which was distributed by Microsoft and later IBM.

Today, building your own computer in order to write software would be like building your own car in order to drive to MacDonalds. In other words, don't bother. The Gateway computer now sitting on my desk is more powerful than any of those corporate computers that existed just a few years ago. Writing programs is also a great deal easier. Instead of figuring out machine instructions, programming today is like having interesting "discussions" with your computer, using languages like Visual Basic or C++ to convey your ideas and manifest your creations. And the potential market for distributing your writing via CD's and the Internet is both vast and viable.

Instead of creating software that's interesting and valuable to others, some people would rather create mischief. Hacking a computer network in a classroom and replacing the screen saver with a porno image, or writing a virus that messes up thousands of computers, or breaking into a commercial network and reading other people's files is hard to do. And anything that's difficult and also forbidden by law or by good taste has a certain appeal. It's unfortunate, I think, that the name "hacker" that I and others were proud of in the past has come to also mean a person who uses programming skills to do stuff like this.
If you're interested in doing something cool with computers, check out the Computer Seminar. If you're a beginner, then the Seminar can get you off to a good start. And if you're more experienced, tell me what you think and offer any suggestions you have for improving later versions. In any event, after you've looked at the text and the programs, drop me a note. I don't have time to debug your code or spend time working with your projects, but I always have a few minutes to read your ideas and suggestions. And I have a few questions of my own…

- Does the Seminar really work for people who want to learn about programming?
- Would you do the Seminar differently? How?
- What about the examples? Are they too simple? Too complex? To dull? What?
- What subjects would you like me to explore in future versions?
- What interests you the most about computers?

To me, the most challenging thing I can think of is coming up with software that is really interesting and helpful. And that's a lot more difficult than just breaking into a system and causing a mess. Although, to be completely honest, I did have something to do with a long-ago Christmas day when all the computers in a very large international network started playing Jingle Bells on their printers. But that's another story…

Dick Ainsworth
ainsworth@qwerty.com