In middle school I was in the most advanced computer class offered. It involved lots and lots of typing practice and basically just doing office-work projects in random Mac programs. My biggest regret was that the promised "programming" lessons consisted of typing printed Java code from a piece of paper and into a text file. No explanation of what the symbols were, what Java was, nothing. I was pissed. I failed that module. I felt so misled that I flat out refused to do the assignments.
From then on I resolved to teach myself. I somehow convinced my mom to buy us a computer. Once we got dial-up, I struggled with VBA, Flash Actionscript, C++, Tcl, Python and on and on. None of it had a manageable learning curve for me.
One day, I discovered Game Maker. The day Mark Overmars introduced the C++/JS mash-up that is Game Maker Language changed my life. I learned how to plan projects, how to invoke spells of hyperfocus, how to read technical documentation and on and on. It taught me algebra concepts way before I knew what algebra even was. That was all possible because I could type some stuff into the editor, and within a few minutes, actually see sprites move around and respond to my input.
Damn. It's been 20 years. I feel like I should be a coding God now. It's funny because I don't expect myself to be Shakespeare just because I've been writing words my whole life... Anyways, my mind wanders.
Oh, tutors. I never had a tutor. If you want to make your kid a genius, get them a 1:1 tutor. That provides social modeling, mentorship, immediate feedback and personalized lessons. I would venture to say that tutors may still be valuable, even to adults...
Thats actually a good point, why do we have this assumption in tech?
In writing this comment, I think doing a short code review of what I produced in the last session might make sense. The more quickly I advance at some skill, the more quickly I can add/tweak my code review.
From my understanding and experience, that sort of reflection on each output of skillful work turbo charges improvement. I did it at a phone center job, where I kept a spreadsheet with a prediction of what service rating the customer would give me, and a short blurb of what I did well and what I could improve. That seriously blasted me to the top. This also worked when I was in a band. When rehearsing, we would play through our set in full while recording, then afterwards we would immediately run to the computer to listen back and discuss what to work on. Within weeks we were able to meet our goal of playing with our main influence, a band called Protomartyr.
In the US there's definitely a big effort to have CS/programming courses in high schools but the big problem is finding qualified teachers. Since teachers in the US tend to get paid much less than even low-end software developer jobs in the same city, most people with any CS skill tend to go into the software industry instead of teaching.
I would take a pay cut to work as a teacher, especially for the ~70 working days off, which is about triple what I have now. A 50% cut isn't feasible though.
Depending on what "as a kid" means and your age, did you not try to find such people on internet forums dedicated to (for example) C? I also wanted to learn C when I was a child and did so with those resources (as well as books, which were as impenetrable back then as you already indicated).
I’ve found that somewhat liberating as a parent. We should all embrace and encourage that if we can find it for our kids.
I get it. Bad stuff happens sometimes. The message is clear though that (especially as a male), I’m not trusted around kids until confirmed and on record to be safe.
That’s not conducive to natural relationships with kids - you’re constantly on guard and cognizant of the fact that you’re a perceived threat.
edit: That was a little negative. I should add that it's still worth doing. There's no way to change that perception other than by doing good and reassuring people. More importantly, kids having good experiences because people make the time for them matters more than resenting being perceived as a creep all the time. Yeah, it's a drag, but mostly I ignore it and hike with the kids, teach them knots, or whatever. It's fine.
There is an old saying: it takes a village to raise a child. So I am looking forward for the villages to revitalize with smart people ..
Anyway, I think that many, perhaps most kids need mentors/coaches. Parents can only do so much, and teenagers don’t want to listen to their parents anyway. Gifted learners surely aren’t any different. The ‘content’ problem seems solved - there is just so much interesting stuff out there, and so many great resources. The guidance and encouragement and diversity of influences is what is missing. This seems very hard or impossible to scale up.