The Hacker Window

There has been a narrow time window during which people became hackers, and it has closed. This was, approximately, when it made sense to write code in assembly language, and so have access to the bare metal of the machine, and when machine memory and time were scarce resources, and therefore valued much more than they are today.

In the early days (from the 1950s to the mid-1970s), access to computers was available only to an elite few. These often had to book time on them. Worse, many of the programmers were using a batch processing system, writing programs on paper, from which punched cards were prepared. They didn't even see the computer their programs were running on. This was the sole reserve of The Priesthood who operated the computers.

During the late 1970s and early 1980s, the typical personal computer came with no software except a simple monitor in place of an operating system, and a Basic interpreter, so the the owner had to write his own. Computers then were (with the notable exception of a few machines like the ZX-81) more expensive than today's PCs, and because of this, and because they were difficult to use, they were only bought by people who really wanted to learn about computers.

You could, of course, have used much more powerful computers -- even mainframes -- by getting a job as a programmer. Back then, there were fewer programmers, but more system programming jobs (largely because of more software diversity), than there are today. Those who worked on systems programming acquired more sophisticated skill such as operating system and compiler development.

Programming on earlier machines was made more challenging by the scarcity of memory -- early PCs had a few kilobytes (Intel 8080), later the limit was 64k (Z80, 6502), then 640k (Intel 8086). Larger machines such as the PDP-10 had a maximum of 256k of 36 bit words, still very small compared to the standards of today's PCs. They were also slow -- 4MHz for the Z80, with a minimum of 4 clock cycles per instruction. So programmers valued their resources (otherwise they would not have been able to write anything worthwhile at all), and bummed their code.

For many years now, PCs have had more processing power and memory than the mainframes of old, so the sort of programming skills needed to make the best use of the limited resources of, for example, a Z80, have not been perceived to be necessary. Furthermore, nowadays PC software is readily available without the PC owner having to write it himself. This means that PC owners generally don't write their own software, and even when they do, they don't worry about resources. Computers for them have become little more than Expensive Typewriters and arcade machines without coin slots.

Worse still, The Priesthood is back, not in the form of people, but in the form of the operating systems through which most people interact with computers. You can just about access the bare metal if you hack a Unix kernel, but that is all.

The result of this abundance of computing resources is that those most interested in making a career out of programming, i.e. computer science students, no longer value access to computers, because they are no longer a scarce resource -- in fact they are now cheap enough for most people to buy, so they no longer value time on them; because they come with software which does most of what they want, so they no longer need to hack their own, and because they come with more processing power and memory than they (but not the off-the-shelf software that they run) need, so even if they do write their own software, they no longer need to bum it to get it to fit in memory, or run fast enough. In short, they no longer value computers as a resource.

It is time the hacker window was reopened. Anything which makes people more aware of what is going on inside their computers would be helpful in this regard.

This page was linked to from

© Copyright Donald Fisk 2003