I agree. However, I'd like to expand a bit...
I think the progression should be something like this:
1- Machine Language
- Yes, flip 1's and 0's and learn raw programming of a microprocessor
- No need to make a career out of it, but it is truly valuable
2- Assembler
- Here exposure to different processor architectures is important
- Harvard vs. Von Neumann are two examples worth understanding
3- Using the above-gained skills, implement FORTH from scratch
4- Using FORTH, implement drivers for various peripherals
- Storage, communications, real time clock, etc.
5- Using FORTH, write a FORTH code editor from scratch
6- C
7- C++
8- LISP, APL
9- Python
My oldest son just finished his BS in Computer Science and is pursuing a his Masters. Sadly, he would not have learned most of what is on this list had I not made it a point to teach him during high school.
His next sibling by age --still in high school-- is now going through MIT's excellent 6.00.1x two course sequence on EDx. This would have been very difficult for him without some of what he learned from me over the last couple of years.
The rest of this is a tangent, you can stop reading here.
Aside from the above sequence, I also got them involved in home remodeling projects, solar array design and installation, manual and CNC machining (on real industrial machines), MIG, TIG and stick welding, woodworking, business, etc. And yes, lots of fun fishing, kayaking, and being kids.
When it comes to education as a general subject, I remain deeply disturbed by the fact that our educational system graduates young adults out of high school without any marketable skills whatsoever. The average high school graduate in the US is barely useful to make coffee and stack boxes in a warehouse, much less anything else. We give our kids to schools for somewhere in the order of a dozen years and what comes out is someone who can't earn a living.
When my oldest son went to college he was able to land jobs making two to three times minimum wage because he had marketable skills to pull from. He added enough value to any business hiring him that they were happy to pay an excellent wage. Many of his college friends were working at coffee shops and amusement parks making minimum wage. By the end of his first year in college he was able to save $25K free and clear. He is on track to graduate from university with well over $100K in the bank as well as multiple degrees.
He was able to do this because he launched out of high school ready for the world, not because of what he was taught in school but rather due to my intervention to fix the severe deficiencies in a system that is most definitely broken.
Educations matters. A lot. And not just math, science and history. Not sure why this mess isn't a conversation at a national level. If we care about elevating people from their station in life the most important factor is launching them into the world with marketable skills.
I see what schools are teaching my kids and can't help but feel something between sadness and anger for what other kids will face out of high school. In some way, the greatest source of inequality are our own schools.
Sorry, that was a bit of a rant.