>>1,6 (and everybody else)
I program to create worlds. I don't care about the hardware my world runs on, only that it runs my world.
On the Commodore 64, I programmed in Basic. I loved it because in my limited way, I could make abstract worlds. I didn't (and to be honest, deep down I still don't) care how it maps down to the level of the machine. If I had the books, I might have learned about Assembly, and built my layers of abstraction from there, but I would consider this work a necessary chore and not the core work of building worlds I'm interested in. I could give less than a shit about exploitable timing glitches in the sound chip or whatever tedious hardware hack. Ultimately, I want to program to make universes, not to piss around with chips. I still prefer to work from a high, interactive level. Knowing what I know now, I am angry that it shipped with Basic instead of Forth or Lisp, especially considering those were well known, well established languages by the time Commodore 64 came out.