I think you have to admit, most people anyways, that you're ignorant of a lot of systems that came before you. If I gave you an IBM 704, would it be "easy" to program? I would not enjoy that, I think we'd all rather write Fortran on a MacBook. (ask yourself why?)
I have replaced an alternator, but I just learned older cars had "generators" and they're quite distinct (though very similar). I don't know much about "points" or distributors, but I've replaced ignition coils & spark plugs, I feel like I basically understand the gist of that. But I don't know what came before it. I wouldn't fault a mechanic for not knowing points, but an automotive engineer should.
To me, this is where perfectly good wrenching (programming, coding, per se) on its own might be unlikely to advance the state of the art (in software/automotive design). Maybe: To be a really good technician, you should focus narrowly on the hardware/software you service, and not necessarily what came before. But to be a really good engineer/developer/designer, you should focus broadly on everything, to as much depth as you can. Ideally, why not both?
I learned HTML in notepad, then looked for game makers, played with Winamp visualization language, anything that was easily programmable. Did y'all just go straight to writing Rust in Vim?