Hacker News new | past | comments | ask | show | jobs | submit login

I like the analogy to music, but honestly, I think programming itself, divorced from knowledge of operating systems, theoretical computer science, mathematics, web design, or other complementary skills, is not on the same level of technical difficulty as music. You don't need to start as a child to become sufficiently competent to become a computing professional. You do need practice, though, and that is what is sorely lacking in the curriculum. His concern about the lack of sufficiently engaging practice problems is spot on. When all the programming assignments are about CS topics, they're trying to teach CS and get programming as a freebie, instead of teaching programming as a skill in itself.

I agree with you about teaching programming in high school and lower grades. Programming would be much more beneficial for most kids than advanced algebra, trigonometry, and calculus. Average people today need to understand their computers, their taxes, their employers' benefits policies, and other logical and algorithmic systems much more than they need to understand radio waves, flow rates in pipes, or falling objects. The standard curriculum should include some programming at the expense of sequences and series, trigonometric identities, possibly any math beyond geometry, basic algebra, and using a calculator's sine and cosine functions to compute the sides of a triangle.

(Actually, I would be hesitant to suggest such a thing because many college-bound kids need as much math as is currently offered and more. If a kid is going to take freshman calculus in college anyway, you might as well teach him some programming in high school instead of pushing all the way through a math class he's going to retake in college. On the other hand, every high school needs to offer a complete calculus course for kids who will be able to ace the Advanced Placement test and skip calculus in college. There are so many ways for educational reform to go wrong, and I have so little faith in the people who would carry it out, that sometimes I'm glad the system is unlikely to change significantly any time soon.)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact