Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

So teach them the importance of testing, code review, and design documents. As someone who graduated 15 years ago, I feel like the only two truly useful things I got out of my CS degree were 1) lots of practice writing code and 2) my algorithms and data structures class. The latter was useful in exactly the way you hope for, but it was the only such class.


I often find it fascinating how worthless new grads view their university educations. We'd be vastly more underequipped to analyze and solve even the most basic problems without the rigid time pressure allowances university grants us. As a corollary, (and albeit rare), would you rather be pulled over by a police officer with an undergrad in law or one with three months of boot camp training?


I learned unit testing early at UCDavis. My professor would take in assignments via ssh, run them, if it failed, it would "echo F" for grade.


That's how I do it, too. I give students a script which compiles their code with the test code (which is provided to them, if they want to look at it) and then runs it inside GDB (in case it segfaults or throws an exception). All of the tests are documented and, on failure, print an error message describing what was expected, what was actually returned, and include a URL linking to a fuller description of what might be going on.

In the future I'm hoping to run their tests inside Valgrind to check for memory leaks, enable the various sanitizers, etc., and I also need to figure out a way to check for conformance with my code formatting standard, but for right now it gives students perfect knowledge of what their grade will be when they submit.


I’m a student and in our CS department professors can test our code with valgrind and for formatting with Gradescope. I’m not sure how it works in practice but it’s an option if you are interested.


I thought my CS education at UC Davis was pretty worthwhile. Just learning C and C++ in those two intro courses was really useful for understanding everything built on top of those in a modern stack. The seams show all the time.

That said, I spent a lot of time building extracurricular websites in my spare time, which was also a huge leg up in my future career.


These were all taught at my uni, along with a course that paired student teams up with companies to develop for them.

It's still not what's most important at uni, imho. You have 5 years at uni, many decades at your job.


Thanks for the comment. I'm always hoping to learn about these kinds of experiences on HN threads like this.




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

Search: