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

When you look back at school, do wish you'd done things you couldn't do now? Or just more of what you're doing now?

Python? You can learn that over the weekend while you're working an internship. You can learn to engineer real world systems by taking up said internship, or taking part in the school's RoboSoccer team (If you win much at all, you're going to have a giant codebase. When I was at CMU, we had over 200mb of C++ code which was a lot to look at if you were a student).

I'm not a fan of teaching "real-world" systems stuff because it's nonetheless easy to learn incrementally. If it weren't easy to learn incrementally, it wouldn't have become such a mainstream real world tool/system now would it?

It depresses me to say this as engineer but it's true. Real world systems are a pain in the ass, they take a lot of time, patience and experience to manage, but are they mentally challenging in a way like Lisp? Not so much.

Lisp is one of those things with a giant, intimidating barrier to entry-- the sort of things they need to teach in school.




Point well taken: School is a time to learn things that the practical world won't pressure you to learn, and you will learn the practical stuff once you're hired.

But. I have seen so many college graduates, who've spent four years taking classes and passing exams, who still can't program. Programming is a craft. You learn it mostly by writing real code. If you lack the craft knowledge, the deep, theoretical insights are just words.


Having people practice programming in school is well-intentioned, but does it work? I went to CMU, which has a reputation for programming rigor. Just a month ago, a former classmate asked me if adding two doubles would preserve the fractional component.

Now keep in mind that this was someone who had to learn how the IEEE double is actually implemented (i.e. how they represent it in 64 bits), who had once implemented his own network stack --in C. I was surprised because most people I knew who didn't like programming had quit doing it years ago.

See, you don't make good programmers by teaching them python in intro any more than you make good programmers by teaching them how to write their own network stack.


One of the hardest things for a lot of people is learning how to learn things as they go. It's such an essential skill that you take it for granted, but many (most?) people come to university with the assumption that everything they'll need to know will be spoon-fed to them. (This is especially common among students from China, but it's a problem with people from everywhere.)




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: