童年计算机编程
Childhood Computing

原始链接: https://susam.net/childhood-computing.html

在这篇回顾性文章中,Susam Pal 讲述了他 20 世纪 90 年代初在工业城镇接触计算的成长经历。由于每人每月只有两小时在基础 IBM PC 上的上机时间,Pal 和同学们需要进行从软盘启动 MS-DOS、编写 LOGO 程序等“仪式”。由于机器没有硬盘,数据存储非常短暂;Pal 经常在家里的方格纸上调试代码,然后再输入电脑。 这些限制培育了一种独特的分享文化——即开源软件的雏形,同学们在笔记本上手动抄写并修改彼此的代码。除了编程之外,Pal 还回忆起玩《Moon Bugs》和《Grand Prix Circuit》等早期游戏时的惊奇感,后者激发了他对“二维代码如何渲染三维世界”的终身痴迷。几十年后,Pal 依然珍视这些记忆,他提到计算机实验室里的感官细节——机器的嗡嗡声、哔哔声和独特的气味——依然是他那段点燃科技激情的时光中鲜活的象征,并最终引导他实现了儿时开发自己游戏的梦想。

这篇 Hacker News 的讨论凸显了对童年早期计算机经历的怀旧之情及其深远影响。许多参与者分享了对 20 世纪 80 和 90 年代机器(如 Commodore 64、Apple II 和早期个人电脑)的生动回忆,特别提到了“发热电路板的气味”、手动加载磁带的挑战,以及输入 BASIC 代码时的兴奋感。 参与者强调,这些早期系统具有独特的“可折腾性”。与现代受限的设备不同,这些计算机提供了透明的底层访问权限,使孩子们能够进行实验、操作硬件并构建自己的程序。这种自主权往往成为了他们终身投身软件开发和技术事业的催化剂。 尽管有些人担心现代技术变得过于标准化、商业化和抽象化,使其失去了直接操作硬件时代的那种“魔力”,但也有人认为,现代工具(如开源软件和树莓派等平台)依然为探索提供了途径。归根结底,这个讨论串是对早期亲身接触技术如何培养创造性解决问题能力,以及对数字世界运作方式产生持久好奇心的一次集体反思。
相关文章

原文

By Susam Pal on 24 May 2026

I recently stumbled upon a nice blog post titled Childhood Computing. It made me think about my own childhood computing experience. I am much older than the author of the aforementioned post but like them, I love computers too. I have for most of my life.

In the early 1990s, when I was about eight years old, my parents decided to transfer me to a new school because of its curriculum. They did not know it then, and it probably did not even matter to them, but this new school had a computer lab. That was quite remarkable for its time. I grew up in a very tiny industrial town. The computers in the lab were hand-me-downs from the silica factory around which the town was built. We got only about two hours of time per month in the computer lab but the little time I got there opened up a whole new world for me.

Before entering the lab, we had to leave our shoes at the door. 'These are expensive machines. We must keep them free of dust', our teacher would say. It was a ritual. The computers were very old IBM PC compatible machines, mostly with monochrome cathode-ray tube (CRT) monitors. They had no hard disks at all. They had a few hundred kilobytes of RAM. Every time, we performed the same ritual. Insert a 5¼-inch floppy disk to load MS-DOS into memory. Then insert another disk to load LOGO. Then write small LOGO programs and watch the turtle move. I have written more about that early LOGO programming experience here: FD 100. Further, since there were no hard disks and storage was at a premium, nothing was ever saved. The moment you turned off the computer, all your work vanished. So saving a program meant literally writing the program down in a physical notebook.

Since I got so little time with an actual computer, most of my Logo programming happened with pen and paper at home. I would 'test' my programs by tracing the results on graph paper. Eventually, I would get about thirty minutes of actual computer time in the lab to run them for real. One particular Logo program I still remember very well drew a house with animated dashed lines, where the dashes moved around the outline of the house. Everyone around me loved it, copied it and tweaked it to change the colours, alter the details and add their own little touches. That must have been my first 'free and open source software'. The 'licence' was 'do whatever you want but show me if you make any interesting modifications'. The distribution system was entirely analogue: classmates copied the code into their notebooks with pencils, then went back to their machines in the lab and typed it back into the computer.

Occasionally, when we successfully completed the Logo programming exercises our teacher set us as challenges, he would let us play computer games too. The first computer game I ever played was Moon Bugs. Space Invaders, Bricks, Dangerous Dave and others were some of my other favourites. Space Invaders inspired me to write my own game but the little GW-BASIC programming I knew back then and the very limited access to computers I had then were insufficient to write anything more sophisticated than simple text-based input/output programs. But eventually, as an adult, I did manage to write an invaders-like game, which you can find here: Andromeda Invaders. Writing this game fulfilled a childhood dream!

One of my buddies liked the game called Digger developed by Windmill Software. It soon became my favourite as well. The game came in a self-booting disk, so we did not have to go through the elaborate ritual of first inserting a floppy disk to load DOS. We could insert the Digger floppy disk directly and the computer would boot and start the game immediately.

Another computer game I remember fondly was Grand Prix Circuit by Accolade. I really loved typing the command GPEGA to launch the game, knowing that in a moment I will be greeted with its excellent opening music. Grand Prix Circuit blew my mind. As a child who only knew how to draw basic two-dimensional geometrical shapes with Logo and GW-BASIC, I found it astounding that a computer program could create a projection of a three-dimensional fictional world that you could navigate with keyboard inputs. How was it even possible, I wondered.

It has been over 30 years since then, but the memories and the feelings still remain fresh in my mind. There are times when I can close my eyes and recall the buzzing sound of the dozen or so computers running in the lab, the beeps from the power-on self-tests (POST) and the distinctive, strangely pleasant smell of the closed, air-conditioned room. For some reason, that smell is one of the strongest memories I have from those days. I have never been able to describe it well, but once in a while I encounter it in very unexpected places, like a corridor somewhere, or a store, and it takes me right back to those early days of childhood computing. Those childhood computing experiences form some of my strongest and most vivid memories. They were such magical experiences, full of wonder and exploration.

联系我们 contact @ memedata.com