I recently was asked (along with others), “What language a budding computer scientist should try to study in school?
Fundamentally, it’s the wrong question. This will sound harsh, but alas, it is only reality. Or, if you like quotes:
“I never did give anybody hell. I just told the truth and they thought it was hell.”
Harry S. Truman
The language doesn’t matter, and no self-respecting computer science curriculum should be letting you choose languages. They may expose you to a variety, but you’re not there to learn computer languages.
Real developers are born and not made, no matter what the quality of the curriculum. You can’t teach it, you can only help it to blossom. If you’re one of these people, you’ll learn many languages quickly as you become interested in whatever requires a particular language. If you’re not, you can still have a fine career in IT or Prof Svcs. Most of the people who are really going to get it were programming before they set foot in a University. In fact, a really good one will be tempted to skip school if you’re not careful. Computers call to them with a Siren’s Song that cannot be ignored.
Find a person like this a quality program, preferably one that is under the Math Science moreso than Engineering auspices. The abstract and theoretical sides will be more nurtured there and it’s harder to pick them up by osmosis.
If you wonder whether your child has this talent, Python is a great place to start. Get them a book called Python Programming for the Absolute Beginner and see what they can do. If you’re one of these people, don’t push your child to it. Watch from afar. Be interested, and responsive, but don’t force it, and whatever you do, don’t make it a competition.
Like all careers, you have to love it to be really good at it.