I've always felt that teaching programming at school is systemically broken and backwards. I have finally found someone who put my feeling into words. Watch this youtube video for 30 seconds and you will get the gist of the 51 minutes that came before it.

I'm an older guy. I learned programming on a commodore 64 using Basic and machine code. I started learning when I was 8. By the time I finished highschool I was writing very "complex" applications for PC (win95 and linux at the time).

By the time I took my first real computer course in college "Intro to computer science", I probably had hundreds of thousands of lines of code under my belt in a half dozen languages.

I was so excited to start college for computer science/software engineering.

It really was depressing though. The teacher, female, made us memorize computer science concepts. Like "Please state the definition of a 'while' loop". This was the test and you had to accurately write the technical definition from the course book. It was very odd. If you explained it in your own words or though code example, you had points taken off.

We also had to write an article on Bill Gates and his life and his work in the computer industry. I got an F for grammar and spelling. She said I didn't "emotionally connect" the audience with Mr. Gates. I was really confused and pissed off on what this had to do with computer science or software development.

She had us do public speaking, lots of group work and interpersonal team building exercises since she wanted us to be "well rounded". It was very strange.

I dropped out of school after that class and worked a shitty job in retail. In my free time I still continue to program and learn on my own.

I'm retired now, I programmed for 20 years and then "hit it big" (I made some money on programs I wrote as a side project, plus saved a lot of my "big" corporate pay checks). I don't have a degree, but I have read (and even written!) a lot of computer science and software development books. I still program for fun.

I guess the moral of the story here (at least for me), is that people suck and you should just go learn on your own.

I had some mentors during my working days - a lot of them taught me a lot. A lot of that teaching was either by just working on the same code base as them (and seeing how they would do things) or them throwing an "angry nerd rant" when I did something dumb.

/r/programming Thread Link - youtube.com