I'll explain: many piano teachers won't take adult beginners, purely because they have unrealistic ideas of how good they're going to be. They want to play a Chopin Etude or the Goldberg Variations or a Brahms Intermezzo, and don't want to spend time struggling with Clementi.
Well, sorry. You won't be that good for a long, long time, if ever. It could be that some beginning programmers also have wild ideas of doing a game as good as GTA, all by themselves.
If you're picking up basketball at age 30, I hope you know that you're never going to be anywhere nearly as good as Curry, or Lebron. But you can definitely pick up a subject matter and become an expert later in life. Heinrich Schliemann essentially began his archeological career at age 36 and yes, basically excavated Troy in the worst way possible, but managed to actually excavate Troy. That's the difference between an adult piano learner and an adult code learner, I think.
Well, I hope so, too. However, in basketball, the really good players aren't even going to let you play with them, so you're forced to play with people your own level. In music, you're constantly hearing 8-year-olds who are better than you will ever be.
I believe it's the motor skills, and the plasticity of the brain. Personally, I memorize pieces with no effort at all, but sight reading is a bitch for me and always will be.
Lots of parents think it's important for their kids to learn music, actually, with no thought that they'll become professionals. In fact, most of them would be horrified if that happened.
But one time I saw the student list for the kids. Every single one was Chinese.
It's full of PLPs (Pedantic Little People, or you can substitute a different P-word for "people"). And why is it full of PLPs? They get little brownie points for answering, and when you get to certain levels, then you're allowed to do even more! So they compete with each other and downvote your answer for, well, pedantic reasons.
I suppose this site has some of that, but it's not nearly as obnoxious.
Anyhow: I finally found a teacher who played standards, and actually studied with George Shearing! But they're few & far between.
But yeah, conservatories are definitely that. "You, too, can get an expensive education and then struggle to compete with 200 other kids just like you for the the very few paying gigs in classical music!"
And more than that, you need to have a concept of the difficulty of a given problem for a beginner or expert. Obviously a beginner will be wildly off, but probably needs some concept of the level of difficulty.
For example, lots of people have motivation to write a game. But few have the level of obsession to follow through with it. Maybe they should do a basic iPhone convenience app or something first instead.
I thought writing a C++ compiler would be just some new keywords and member functions, and would take 3 months.
10 years later...
If the goal is to release a complete product, then you're right that that's a problem. However, if the goal is learning, half a game is a great way to learn about a variety of systems and how to program for them!
The problem was that about 95% of my students didn't have a program they wanted to create. Some just wanted a hobby. Some wanted a better job. Some wanted to do a startup and manage a team, but they didn't really know what kind of startup to do. One guy joined because he made discord bots and thought node.js was cool, but learning loops started to get boring for him.
But you will do better teaching-wise if you do find something that has intrinsic motivation, not turning it into a chore.
It just might not be the right time! They've basically got until they are 18-20ish to decide to get into it. The programming books my parents gave me after 8th grade never interested me. The 11th grade programming class didn't either. The junior year of college tangentially-related course where I was like "oh I could write a program to help with this homework!" That did the trick for me.
So just keep trying, see if you can find programming-related aspects of other hobbies. And just try to focus on them learning things around those hobbies or obsessions, even if it doesn't seem to have a practical application. Get in the habit of going deep on subjects and practicing learning.
They don't need to start with redstone to learn to code. They should play the game and naturally realize that redstone is a way to solve their problem (like making an automatic sliding 2x2 door) and then solve it.
I feel like those skills will take you much further in life because now you have an extra tool to solve problem no matter what field you end up going into. And since programming is so powerful, it's often one of the best tools for the job so kids will naturally pick it up.
But.... I can finally program.
Do such kids need to start with regular programming languages? Wouldn't visual languages be a simpler starting point for them to get motivated?
This is still how i learn (most effectively) today. If i want to learn a new language or something, i write something that i always wanted to write in it anyways. That way it doesn't get boring.
I think what you're describing might be similar in that canned-data is not interesting.