I'm a little late for #throwbackthursday in my timezone, but it's still Thursday west of here, so...

Here's the cover of the instruction set manual for the first microprocessor I learned to program. In hand-assembled binary. From code written on column-grid paper.

("Kids today! We used to have to carve our programs into stone tablets! And all we had were tall and short ones because zero wasn't invented yet!")

@syscrusher I had to make my first steps into the world of microcontroller programming with #8051 in the mid 2000s. After this semester writing assembly programs for the 8051, I really learned to value higher languages like C or C++.

@mmeese The #8051 was popular even when I interned at Intel in the 1980s. My boss told me that although the spiffy new 80286 was making headlines, the company's real bread and butter was the humble, field-proven 8051.

I'm pretty sure the 8051 core is still widely used today, as a component in FPGAs and SoC designs. It may be old tech, but just how smart or fast do you need a CPU to be for a kitchen appliance?

I, too, learned the value of compilers by coding without them. That said, I think learning how computers work BEFORE learning how to program them is STILL the best way. If you understand the hardware, you'll never be apprehensive about learning a new coding language. Pointers are not mysterious or scary if you've wrangled RAM addresses in CPU registers with assembly language.

@syscrusher „Pointers are not mysterious or scary if you've wrangled RAM addresses in CPU registers with assembly language.“ Absolutely! We started with C and I hated pointers and I didn’t really understood them until I had to use assembly. After that, it was like a revelation. Before that I knew how to use them but I didn’t understood them completely. The 8051 is rock solid and proofen. And I think modern variants have much more included into their package to simplify wiring.
@mmeese Indeed. I remember when programmable logic arrays (PLAs) first emerged, and then field programmable gate arrays (FPGAs), and now there are complex chips -- up to and including whole microprocessors like the 8051 -- that are available as libraries for custom system-on-chip (SoC) designs.