16 ms·
I think "most of what I learned is inapplicable to my job" is kind of inevitable in any CS program that tries to expose students to a breadth of topics before t
by koreth1 3y ago
I think "most of what I learned is inapplicable to my job" is kind of inevitable in any CS program that tries to expose students to a breadth of topics before they graduate and get hired into specialized jobs. The trick is that the "most" will vary from person to person.
As a fellow 1980s CS person, I too got a lot of DSA coverage, but I ended up using a respectable amount of it when I was working at low-level systems programming jobs. I have never used what I learned in my computer graphics class. But I had classmates who went into animation and used that stuff every day.
Agreed about the lack of any education about the "engineering" side of the work, though. One challenge is that engineering is mostly a group activity but education is focused on individual learning. With some exceptions, you don't get a group grades in classes, and usually, collaborating with other students on your homework or your tests is considered "cheating" rather than "teamwork." Professors aren't in the habit of repeatedly changing the assignment out from under you while you're halfway finished, but dealing well with unpredictably shifting requirements is a huge part of the job.
- SoftTalker 3y ago> Professors aren't in the habit of repeatedly changing the assignment out from under you while you're halfway finished That would be quite interesting in terms of "real world" education. The unfortunate thing is that most terms/semesters are only a few months long and so work has to be very explicitly defined and scoped to be achievable in that time with the expectation of the student spending maybe 10 hours a week on any one class, tops.
- gonzo41 3y agoI'd love to see that. Give everyone an assignment on day one. Nice and easy and due in 10 days. Then in 9 days extend the project scope. Require collaboration and then set the due date +10 again. Just keep repeating until the final submission when you programmatically test and grade every assignment in front of the whole class with a "big bang" style "deployment" I think it would be too real for the kids.
- koreth1 3y agoAnother unfortunate thing in this context is that coursework is almost always greenfield development of small projects. Coming up to speed on a large existing code base of inconsistent quality and style is another enormously important job skill, as is writing code that can be maintained by the person who has to come up to speed on your code a year later, but you'll never get those skills from writing small precisely-specified programs from scratch.