A Tricycle of the Mind
This Christmas, my daughter and I built a computer. The sheer power of what would be his first computer, compared to the computers I used when I was his age was astounding, as was the software capability at his disposal. However, I can’t help but think that for all that power, kids coming of age today are missing something that I took for granted. That I haven’t even begun to understand that I have.
Steve Jobs described computers as a
bicycle in mind. with
my generation) I believe that these early machines are like the tricycle of the mind – something that we can learn without real supervision or instruction.
The computers I used as a child were ahead of today’s standards. The first computer I remember using was a Apple IIeand the first program I used was a Logo interpreter running on that machine. A few years ago, a friend was given an old man
Apple IIc and we spent hours playing the few games we had and trying to teach ourselves BASIC. (At the time, none of us had access to a BASIC manual, so our efforts were quite limited.) Some friends had
Commodore 64so similar machines. What these machines have in common is that they are dead simple and booted with a BASIC interpreter. As soon as you turn on the computer, you can start entering BASIC instructions. A friend likes to make dungeon-adventure-style games. Another likes to recreate his favorite songs in BASIC. We spend a lot of time just writing short (often seemingly useless) programs. None of the adults around us have any real interest or skills in computing. We are a kind of digital latch key generation. But, the thing is, the machines are simple, and due to the lack of any real networkingsafe enough for us to experiment within our hearts.
Compared to the one I used before, my daughter’s new computer will be networkable, have a bitmapped GUI, access to every compiler and interpreter imaginable for free, will be cheaper (in nominal and inflation-adjusted terms ,) and there are thousands of times in hardware. resources (the place I bought the parts from includes 16GiB of RAM for free – normal price: $50 – to purchase the CPU. That Apple IIe I used first? 64KiB of RAM, or about 250,000 times less. In my
first tech job a decade ago, our main server had 64MiB of RAM, which we thought was something, but still 256 times less than what he would have.) But, for all the power, he has a BICYCLES for his mind. In other words, I will teach him how to use the thing, like I teach him to ride a bicycle. His generation couldn’t teach themselves computing like mine.
As a simple example, you can draw a line between two BASIC instructions on the Apple II:
10 HGR
30 HPLOT 0,0 TO 100,100
If you manage to start a Python REPL – which for most computers is not yet installed (Windows) or it is not clear to beginners how to start (macOS / Linux) – there are no graphics capabilities . Or, other than outputting a terminal bell, any sound capabilities. I think kids can even write their own dungeon adventure games. Of course, there are many modules you can install that will allow you to draw basic shapes, play sounds, etc., but, in that case, that’s kind of the point: the complexity and lack of accessibility of modern machines makes them rare. than the 8 bit micros of the past. As silly as drawing lines and telling the speaker to beep at a certain frequency is, it’s what kept us interested long enough to develop a lifelong love of computing. The easiest analogue of the BASIC code above that I could find in Python looks like this:
import pygame
pygame.init()
screen = pygame.display.set_mode((800, 600))
pygame.draw.line(screen, (255, 0, 0, 0), (0, 0), (100, 100), 5)
pygame.display.flip()
That’s not too complicated, but there is more boilerplate than the BASIC example above and, of course, you need to know a little about the operating system running on your computer, how to install a Python interpreter , how to find and install third parties. modules, etc. On the Apple II, there wasn’t even an “operating system” to get in your way, let alone the concept of installing third-party dependencies to do basic things.
It’s not just the software, either. The hardware is becoming more complex.
If you’ve gotten past the basics (ha!) of BASIC and want to learn more about hardware, there’s not much to do in your way. The number of components is very small, and there aren’t many abstractions to go through. Want to read or write to a memory address? ROOM or POKE only. There is no virtual memory to worry about, no protection rings, the computer just does what you ask it to do. Want to go deeper and understand how the processor reads data from SRAM chips? That, too, is pretty simple, and doesn’t involve integrated or separate memory controllers or anything like that. You can look at a processor’s datasheet and hold all the important details of how it interfaces with SRAM chips in your head in just a few minutes. Reading and writing IO have a similar (lower) level of complexity.
8-bit machines also have fewer interrupts to interfere with machine learning. Games are fun, but not intentionally designed to be addictive (at least, the game designers of the 70’s – 90’s were not as adept at addiction engineering as their modern contemporaries.) The only network access you have CAN have a modem to call your local BBS. I really spent a lot of time playing, and, later, when I managed to install Linux on my computer, I spent a lot of time aimlessly exploring the system, reading man pages (start me on one, then decide to read something from the related section that seems interesting, then something from that person’s related section, and so on until sometimes I forget what it is. originally mine sought after.) I learned a lot that way, but I doubt that will resist the dopamine flood of being lost down a YouTube rabbit hole.
Perhaps none of this matters. There is more published information (on the Internet,) more free software, more resources in general, than ever before. However, I still do not feel comfortable putting my daughter on the Internet, even if it is in the name of learning about computers. It’s not always a friendly place for adults, let alone children. I’m lucky enough to be able to teach him these things (assuming he’s interested,) but I wonder about other kids whose parents aren’t as equipped – do they have the same opportunities I’ve had? Or will they end up on a bike, with no training wheels, and no one around them who cares about bikes?
2024-12-30 18:37:00