I started programming in junior high, writing BASIC code on a Commodore 128. At the time the only learning resource I had was the owner's manual and some issues of Compute!'s Gazette, so I was almost completely self-taught. I don't think I had actually heard the words "computer science".
If you've never programmed in BASIC of that era, understand that:
- There were no "functions"; a program consisted of a list of steps, executed linearly, with some control structures sprinkled in and plenty of GOTO jumps
- Variables were all global
- Variable names were limited to two letters
After doing "this programmer thing" for a few years now, I've noticed a pattern in how I acquire skills and techniques. It's surprisingly consistent, and consists of these stages:I thought it was pretty remarkable how consistently I saw the progression from "awareness" to "familiarity" to "functional understanding" to "understanding" to "competence" in myself and in others.
Pretty insightful, huh?
Turns out that pattern is a simplified subset of an educational classification system called Bloom's Taxonomy.
And it was first proposed in 1956.
So, yeah, that insight you thought you just had? It's probably been done.