My first computer came in Christmas 1991. I was very lucky to have received a Tandy Color Computer 3. It would shape my thinking and interests for the next 26 years.
When powered on, the user was greeted with the green screen shown above in the photo. In many ways, it was (and still is) an optimal environment for learning programming. Press the power button and get started. No waiting, no clicking. Start coding! Almost all retro computers greeted you with some type of BASIC.
BASIC has a problem today. The general industry labels it as out-of-date. “Real professionals” do not use it because it is “too easy” to use. There is a stigma around it, so we have chosen to needlessly reinvent the wheel when it comes to education.
I deployed two commercial programs in BASIC at the age of 16. More recently, I used BASIC to address several business and engineering challenges at a Fortune 100 company. My Jade simulator is written in a low-level flavor of BASIC.
If it isn’t broken …
Seven reasons for retro
I am going to endorse that 32 year old Color Computer 3 as a better tool for learning programming than what is on the market today. Let’s quantify this rationale.
1. Choices. When your child is first learning to paint, do you give them thousands of colors? Of course not – the child would be overwhelmed with so many choices. When learning programming, the best choice is a computer that is built for that purpose. Power on, start coding one second later. No “apps” or distractions. No hundreds of pre-made examples to sift through.
2. Haptics. Children are hardwired to develop with a hand-eye-mind feedback loop. The tactile “clicky” feel of most old computer keyboards demands presence and invites the child. The membrane-keyboard in your laptop does not. Touchscreens on phones and tablets are at the wrong end of this spectrum; they distort the loop by giving too much feedback to the eye and not enough to the hand.
3. Latency. Similar to the above, humans love physical hobbies for a very simple reason: the feedback is immediate. Start playing a piano and the sound is instant; there is no latency from key press to music. Every modern gadget that is software powered has latency. Humans are very sensitive to this, subconsciously processing events in as little as 13ms. Guess which computers have the least latency and are therefore the most likely to be perceived by the brain as a physical tool to master? The old ones.
4. Purpose. BASIC is very forgiving and is also well-aligned to how computers work at the lowest level. Line numbers provide clear markers for children. A drag-and-drop language such as Scratch or Blockly has the basic constructs, but the experience does not resemble the real world. If I told you that I have expert knife skills in the kitchen because I have played a virtual cooking game on my computer, you would ridicule me. However, we are quick to proclaim that our children are preparing for the future when they have mastered the drag-and-drop.
5. Less Waste. It is not explicitly an educational advantage, but picking up a retro BASIC computer from a thrift store helps curb the sale of new [disposable] devices. These new gadgets are fragile or meet an early end through artificial obsolescence. On the contrary, retro computers can be repaired with a basic soldering iron and a steady hand if you know where to source the parts.
6. Restrictions. Every computing cycle and byte of memory counts on an old machine. They are slow. This encourages creative solutions when writing programs. Although some computers have been out of production for 30 years, new software is being developed for these machines that push them way beyond what the manufacturer envisioned. Restricting the environment develops creativity.
7. Personality and Scarcity. In many ways, the flavor of BASIC on a computer gave it personality. The industry now strives for uniformity and standardization, aka sterility. The drag-and-drop language on your phone, meant for teaching children, must be identical in your tablet and computer as well. Although suitable for industry, it is a terrible approach for learning. This disembodiment of language from machine subconsciously affects how we perceive the machine: we unknowingly treat it as less important since the language is no longer “scarce.”
But make no mistake: a child will protest and resist using such a computer after having been exposed to modern devices. It is a hard shift from external stimulation to internal motivation, much like the change from sitting in the audience to acting on the stage. It is moving from a room full of toys to an empty one where the imagination must be exercised.
Inspiration for Jade
The seven points I have mentioned above are baked into Jade. Jade is built from the ground up because the existing state-of-the-art software ecosystem is sorely incompatible with all of these.
One industry mantra states that computers are never fast enough. Software complexity is always increasing – more complex software requires a faster machine to give the user the same experience. And so we trade in our two year old laptop for a new model, ad nauseum.
This is not a sustainable trajectory.
Jade is for learning: students will discover how to write software for a sustainable future.