Because there's three trillion ways you can write a program and all of them seem to come with dozens of READMEs and what-to-do and what-not-to-do and very opinionated maintainers, the creative minds of today might just create their games within Roblox or get to know Javascript by making mods for a browser game, or learn to use DAWs to make cool-sounding EDM, etc. This was already a thing in "our" time with Flash and Adobe's software, but now that's the norm.
Effectively those minds have migrated over generations from the pure hardware to progressively thicker layers of software, which makes sense to me since that's how all human progress basically does with any other field too.
I think for anyone who has a kid, the best way to get them interested in this stuff is to have a bad computer, or at least one that primarily uses the shell (not that those computers are bad, I use one myself).
I got deeply interested in technology the opposite way. I got an iPod touch as a kid, and I was amazed by how well designed it was. The thing felt completely delightful to use compared to the Windows XP/Vista systems that were around in the day. I immediately had dreams of writing apps for the iPod that were every bit as amazing as the rest of the system. It didn't take me long after unboxing that iPod touch for me to boot up an old Mac to start on my programming journey.
And to this day, creating great user experiences is what drives my interest in software above all else.
My dad would tell me stories of copying code from magazines by hand and how little memory they had.
Today, memory and CPU speed is basically a non-factor; it's assumed to be infinite or at least extremely high for many applications.
Funnily enough though, memory constraints were still relevant for me and some of my friends - since Ti-83 calculators were the first exposure to programming for many of us. It helped that we were all required to buy them, so we could collaborate and copy over programs to each other. I would write programs so I wouldn't have to memorize chemistry stuff in HS. The teachers back then never checked, and they expected us to use calculators for normal calculations anyhow.
By the time I was using real code in college though - I agree. Performance optimization like that was taught as more of a "nice to have", and the only classes where it really mattered were assembly, and one elective I took on game engine development.
Because this a really broad extrapolation.
A lot of my peers were starting to use them, but just like kids today, they didn't really look into how things worked, they weren't really curious about them, they didn't really tinker with them.
They wouldn't go and update / rollback a driver. They would just complain if things didn't work, and maybe asked a "geek" friend for help.
Today, if a random game doesn't work, people will just try the next one.
So if people are curious, it's much easier to get their hands on a computer, and there's less risk.
When I was growing up, a PC was a fairly consequential purchase for my family, and they couldn't afford to buy a new one very often. There was a lot of pressure to "not break it". Of course, looking things up a bit and getting help from my father and friends, I was able to figure out that "messing with drivers" would likely not break it physically. But I understand this could have been limiting for people not having someone to guide them.
There's also the fact that today much more people have access to "computing", so if the part of the population interested in tinkering is roughly the same in absolute terms, the ratio between those who tinker and those who don't is skewed in favor of those who don't.
btw there is no such thing as techie anymore - everyone is into tech, there are very very few luddites left. There's a tendency of UI designers to infantilize their designs , but i m not sure that's based on actual measurable improvement or a certain "contempt" for the end user.
and macbooks. Totally opaque systems that you d rather replace than upgrade. That's OK -- it would happen inevitably, as it did with cars. The problem is that this culture has extended to software, where it is normalized that any technology must be offered through frameworks, APIs and prepackaged cloud solutions
Modern docs, youtube tutorials, and high quality free courses are much more conducive to learning than the forums, mailing lists, and library books of yore.
Meanwhile, my early-teen step-siblings have very similar interests to what I had back in the day (they enjoy playing games like roblox/minecraft on the computer, and FPS on consoles) - but are way less comfortable messing with the OS to troubleshoot vs what I was doing at their age. They were raised with tablets, where things just kind of work. When they do want to learn something, they pretty much always go to youtube first - and I'm not really sure if that's more effective or less effective than what we used to do, or if means they will have a harder time parsing technical docs later on in life.
They've expressed interested in computer science fields, and I do think they'll be able to learn it just fine. In some ways, maybe the exposure to more polished UX will make their bar for those experiences higher than what my generation would accept.