This is definitely true and also why flashing an LED is so satisfying the first time around. At the same time, if those who aspire to more cannot because the first programming language they mastered is not sufficiently general, then the current fashion of learning to code may again get the reputation as being a bit useless.
You mean like maths education is something most people think they have no use for.
The difficulty, as I see it, is that people designing educational materials don't understand the degree to which people get stuck using the first language they learn. As a result they promote languages for teaching which do not wear well as the student becomes more experienced.
I have been wondering about this.
Back in school, from the age of 11 upwards we had "metal work" classes. In the more senior years known as "Engineering Workshop Theory and Practice". The thing about my metal work classes was that from that tender age we built things, of increasing complexity and difficulty, in a fully equipped shop. We had two full size industrial strength lathes, a milling machine, a shaper, a furnace for melting aluminium, a forge. From the get go we used real tools, hack saws, files, drill presses etc.
You have to realize that this was in the late 1960's/early 1970's, that we could still leave school at 14 if we wished, that the expectations were that we would end up working in the local coal mines or factories. As such, all this real metal work stuff was preparing us for the real world of work.
Now, coming forward in time til today, it seems they want to teach kids to program at school. To prepare them for a life in the software mines and factories of the future. I argue then that kids should not be treated with, err, kid gloves, and given safe, plastic, child friendly programming languages like Scratch to start with. No, start them of with real, dangerous languages, teach them skills that are real and relevant.
I don't believe that 11 years old's cannot handle C for example. In fact we know they can, many kids use Arduinos which are programmed in C++.
The Fibonacci challenge is a measure of how expressive a programming language is for coding complicated algorithms. In my opinion, an equally valid metric would be how expressive a language is for coding video games.
Sounds like you are making the same argument.
This is why I suggested a graphical networked version of the classic multiplayer game Star Trader as a follow-up challenge.
Go ahead. Make the challenge. I have no idea what Star Trader is but it sounds like a lot of work for a coding challenge. How would you specify it rigorously? Who would bother to take the time to do it?
What programmer, having an hundred Fibonacci programs, if he or she lose one of them, doth not write the ninety and nine on the backup tape, and search the Why Avoid Basic thread on the Raspberry Pi forum for that which is lost, until he or she finds it?
I'm not sure what you are getting at there. I have all Fibo Challenge entries in git repos and github. Have done for a long while now. https://github.com/ZiCog/fibo_4784969
Is there a lost Fibo sheep somewhere back along the way?
Memory in C++ is a leaky abstraction .