3 ms·
> There's no educational institution that produces people with the skills it takes to develop today's web sites. That's quite a charge. CS graduates come out
by aphexairlines 16y ago
> There's no educational institution that produces people with the skills it takes to develop today's web sites.
That's quite a charge. CS graduates come out with at least a grasp on database design, object-oriented design, functional programming, state machines, concurrency, type safety, program evaluation, OS fundamentals, networks, and the software development lifecycle. In addition, the curriculum leaves room for the student to start specializing in a few areas of interest. That's not "a bunch of 20-year old pap about algorithms."
All the little details of CSS and the language or platform of the week shouldn't need to be taught by schools, since the point is to prepare the student to pick them up as they come.
- terra_t 16y agoIt depends on where you go. Jon Kleinberg's class on algorithms (and classes based on his book) is great. I don't think every CS student gets access to that quality of construction As for database design, OO-design or concurrency, my experience is that you've got to spend two years or so building that kind of system before you're an asset instead of a liability. Some students might really get that much work in during their educations, but they won't all entirely. In 1992 I took the only CS course that I've actually taken, and it was a course in comparative programming languages that introduced OO programming through Ada (a thoroughly obsolete form) and spent a lot of time on logic programming with Prolog. Now, I think Prolog is beautiful and my recent work has led me to believe that (20 years later) we're going to have to go more in that direction, the fact is that for practical purposes, Prolog is a dead end. And then at the graduate level it's all about fads. At one top CS school there's nobody interested in the semantic web and description logics because that's all "dead stuff from ten years ago." In the engineering library at that school, I can find five units of modular shelves filled up with conference proceedings that plod endlessly about IP QoS, despite the fact that none of that has ever seen the light of day. Anybody with a pulse can think of ten or twenty other research areas that ought to be vastly more productive, but, somehow, resources never get allocated for them. In terms of the actual needs of the workplace, what it takes to be productive ~is~ detailed knowledge of the details that are relevant now. Why are Facebook and Google having a crazy bidding war for employees (other than the fact that they've got too much capital?) -- it's because they're building stuff on a scale that nobody else is and you can't get experience building at that scale elsewhere.
- yesno 16y agoIs the SDLC that was taught in the universities really that important? I've seen companies dying because there's lack of standard on how to developer software or using a typical university SDLC. How many product-based companies died because their technical debt interest is bigger than they can pay? I've seen hot-shot smart-ass students who just don't like to test their own code. Let's face it, most universities tend to put testing as a footnote in CS studies. I think this is also part of the problem. CS seems too "science-y". Honestly, CS students should go to pursue research-based work.