2 ms·
This blocked me from understanding computer programming for 3 years. I thought of 'variables' as immutable and the fact that they were not didn't really click a
by jacquesm 1y ago
This blocked me from understanding computer programming for 3 years. I thought of 'variables' as immutable and the fact that they were not didn't really click at all. Once I mentally transitioned from 'it's a label attached to a value' to 'it's a named box which holds a value' life got a lot easier. I was 15 when it finally clicked (on a TI programmable calculator...).
- galangalalgol 1y agoI wonder if haskell would have made more sense to you at the time with everything being immutable.
- jimbokun 1y agoOr maybe Erlang.
- jacquesm 1y agoThe answer to that is surprisingly simple: no. Because Haskell didn't exist at the time. Neither did Erlang. But LISP did, but was just too expensive and memory hungry for mere mortals such as me. I had to learn all this on a shoestring budget working an 8 hour job and barely having left over enough money for food after rent, taxes and insurance. It took a long time before I was able to afford a floppy drive, much less a half decent computer, one that would be able to run LISP. And those language packs weren't cheap either and open source wasn't really a thing yet (but shareware actually was).
- lysace 1y agoThat is fascinating. I guess I got through that when I was 7 on a pass-me-down ZX81 from a relative who just had upgraded to a Spectrum (I assume). I mentally called bull when reading boragonul's story because: a) BASIC has a REPL b) Kids back then had near infinite patience/time. c) These computers came with pretty good manuals explaining BASIC There was very little external stimuli. As an example: TV broadcasters in Europe were literally mostly shut off during the day to save power. Radio was on all day, but it was 99% boring adult stuff.
- jacquesm 1y agoI learned to program in the 8 bit era, initially in BASIC on the TRS 80, then later assembly on the KIM-1 and then the 6809 based Dragon 32 (CoCo clone), which for the first time felt like a real computer. After that the BBC Micro and then the ARM, and eventually PCs. Those first years were a real slog. I wanted to understand this stuff so much but it just did not click. I actually remember when it did, it was like a lightbulb going on and I went from 'this sucks, I can't hack it' to 'this is my future' overnight. The I read a book by Niklaus Wirth and it opened my eyes to structured programming and various data structures (beyond variables and arrays). It's funny because even though I've read a mountain of books on computer programming by now that is still the one that gave me the most practical day-to-day knowledge which comes in handy every day.
- lysace 1y agoBoy can I confirm that happening to find the right book back then was absolute key. And they were so expensive! Never really bought one. These days it's almost painful to come across great books that would have been so awesome to have in like 1984.
- jacquesm 1y agoAnother series that really helped me was Leventhal's assembly language series. The problems in the books were relatively simple but they gave you a hold on one CPU if you already knew something about another and they served as instruction set reference as well (which were ridiculously hard to get here in Europe, and I don't mean those little cards but the full data sheets). Between that and a book on parsing I managed to cobble together an assembler and an editor together with a friend. Oh, and in the list of machines I forgot the ST, the first machine that I had with a megabyte of RAM.