Live data from Hacker News

Go To University, Not For CS

sheddingbikes.com

91–100 of 152 posts

Re: Go To University, Not For CS

#91
post #22
post #12

It was a great post right up until the part where he started talking about computer science. It left me with the feeling that either Zed did not study computer science, and is just talking out of his ass, or went through a very bad computer science program and has generalized that all of them must be that bad. How arrogant can you be? There's nothing for you to learn from 100 years of algorithms, complexity theory, l…

The termination with extreme prejudice of 6.001 suggests that some people mostly agree ( http://www.wisdomandwonder.com/link/2110/why-mit-switched-fr... ). Certainly there's an ever increasing role for people pasting together big libraries and frameworks without a deep understanding of what goes on behind the curtains....

I think characterizing the courses that replaced 6.001 as exercises in "pasting libraries together" is unfair. The new introductory courses 6.01 and 6.02, are focused on introducing fundamental EECS design principles, in the context of mobile robotics and digital communication systems, respectively.

Having just taken 6.01 and 6.02, I have mixed feelings. One the one hand, you had to write relatively little code within some larger skeleton that had been written for you. But the code you had to write emphasized important engineering design principles without making you write an entire mobile robotics system from scratch (which is not the point of the class).

On the other hand, the problems were somewhat contrived, and didn't allow much room for creativity. There was only really one way to fill in the blank code. This required understanding the structure of the rest of the code to figure out exactly the way in which the professors might want you to write the missing code. The intention seems to be that this is a valuable skill, but for me it was at the cost of stifling any creativity.

Time and again, I would be partnered with someone (we had randomized partners for 6.01) and I would say "this is interesting, maybe we can solve it like this" (and I would start proposing some ideas), and my partners would say something like "I don't think that's how they want us to do it." A lot of times, they were right --- and this was a successful strategy for the class. Ultimately, the final robot did cool things, but I didn't feel like I made a creative contribution to those cool things in any way.

Re: Go To University, Not For CS

#92
post #22
post #12

It was a great post right up until the part where he started talking about computer science. It left me with the feeling that either Zed did not study computer science, and is just talking out of his ass, or went through a very bad computer science program and has generalized that all of them must be that bad. How arrogant can you be? There's nothing for you to learn from 100 years of algorithms, complexity theory, l…

The termination with extreme prejudice of 6.001 suggests that some people mostly agree ( http://www.wisdomandwonder.com/link/2110/why-mit-switched-fr... ). Certainly there's an ever increasing role for people pasting together big libraries and frameworks without a deep understanding of what goes on behind the curtains....

Eliminating 6.001 also seems to me a part of a trend to allow more freedom in the EECS curriculum. Aside from eliminating 6.001 (which is the most talked about change), computer science students now have more freedom to take computer science courses (rather than certain required electrical engineering courses) and vice versa. For example, in the old curriculum, electrical engineers had to take 6.001 and computer scientists had to take 6.003 (signals and systems).

IMHO, the more freedom, the better. If you are concerned about having a well rounded education in EECS, then you can sit down with your advisor, or talk to your friends, and ultimately decide to take the old curriculum anyway. On that note, it would have been nice if they kept 6.001 for those who still wanted to take it.

Re: Go To University, Not For CS

#93

Zed, unfortunately or fortunately there are good and bad universities (in terms of CS). If you are in a good university, a lot of professors will teach you lessons which will last a lifetime. You must go check the video lectures on youtube by UC Berkley, MIT and Stanford. They will teach you the most important lesson, time and again, till it becomes a habit for you - its all about the fundamentals. They will teach yo…

And about culture: if you question what culture is and what culture gives you, you will figure, that it has a lot to do with habits. And in universities, you definitely get a chance to pick up some awesome habits which will last a lifetime. In good universities, the process is easier & the habits have a wider range (not just discipline etc which are forced by the administration), because your peer group is a lot more determined to attempt leading a meaningful life.

Re: Go To University, Not For CS

#94
post #12

It was a great post right up until the part where he started talking about computer science. It left me with the feeling that either Zed did not study computer science, and is just talking out of his ass, or went through a very bad computer science program and has generalized that all of them must be that bad. How arrogant can you be? There's nothing for you to learn from 100 years of algorithms, complexity theory, l…

Well, I agree with his first part; and here is why.

I've employed a goodly few programmers - invariably the least good are CS majors, the best are usually engineers or physicists.

The reason is that CS is a theoretical degree, and far too many people do it assuming they will become a "programmer of value", rather than a potentially important CS researcher. I've had applicants bore be with details of compiler theory they learned, or algorithm programming they worked on and so forth. All interesting stuff I admit - but the question of "can you write a program" is skipped around :)

Compare that with a degree like engineering (any engineering really). They have learned one skill, that is driven home over and over: how to solve problems. The actual knowledge from their degree is irrelevant (you don't generally learn all that much at university) it is their analytical and solution skills that are key.

There is nothing wrong with this setup. The problem is that CS is treated like an Engineering degree rather than a Mathematics major. Really it should be the latter; if you wish to do research in CS, teach it, work in sort of related fields (CS Majors make good traders, for example, like mathematicians) then CS is the way forward. If you want to be an industry programmer it isn't.

What we need is an intermediary; an Engineering degree that hands you some basics of CS and a whole lot of critical thinking. The whole aim of a degree like that is to point you in the right direction and let your interests develop into a career. This needs to replace CS as the majors for most people - and I think, actually, it would make them happy :)

Hackers are an odd exception; personally I think a good hacker would get much from any of the degrees - theoretical or not - though it is worth remembering that a good hacker will generally be a good programmer anyway because they can hack around, and solve, problems.

(Just to point out: I disagree with all of what Zed has to say about CS itself - clearly there is a lot to learn there, if you go for the right reasons)

University is a great choice for someone to further their education; not because it will teach you much (if you expect university to be the peak, or even the start, of your education you've failed already :P). But because it teaches you the ability to learn for yourself, think critically, break the discipline cycle that school drilled into you, get drunk, make important friends, find people to bounce ideas off.. the list goes on. Somewhere down the bottom is "sit in lectures and learn stuff". Learning is easy; the rest is far more important! :)

Re: Go To University, Not For CS

#95
post #12

It was a great post right up until the part where he started talking about computer science. It left me with the feeling that either Zed did not study computer science, and is just talking out of his ass, or went through a very bad computer science program and has generalized that all of them must be that bad. How arrogant can you be? There's nothing for you to learn from 100 years of algorithms, complexity theory, l…

What if all but about a dozen with a great reputations (MIT and others, as he said) and about a dozen hidden gems have the problems Zed describes? Or do you have a solid argument against it?

Also, the dozen hidden gems don't do the people asking Zed for help any good, because they're hidden. They're great for the people that happen to be going to them, but if an outsider thinks one might be a hidden gem, it's not a great risk.

My computer science education at a small state university exhibited all the problems Zed describes, and more. For all classes, except those taught by two or three of the instructors, there was very little culture. We were taught what was a subset of what was in the books, designed to help mediocre students pass. Learning extra was not encouraged. How the knowledge came about, or is used practically, is glossed over. Half of my classes were Computer Science, but what I remember is mostly from non-CS courses. And on top of it, a lot of teachers gave me pointless exercises and confusing tests and some had grading that wasn't at all straightforward. Less dedicated students who knew how to game the system did much better than me, grade-wise.

Re: Go To University, Not For CS

#96
post #4

It's difficult to take this person's point seriously when he claims >Another way to explain the shallowness of Computer Science is that it's the only discipline that eschews paradox. Even mathematics has reams of unanswered questions and potential paradox in its core philosophy. In Computer Science, there's none. No unanswered questions? Rubbish, 'P=NP' anyone? Correctness of the assumption of the Church-Turing hypot…

If that's counterintuitive, than the most basic physics already teaches you that many things are counterintuive. The 3-body problem does not have an analytical solution. We can't even properly simulate the solar system a couple of thousands of years ahead. Nearly everything in physics is numerical approximation, despite what theory would lead you to believe. After that, the halting problem is far from surprising.

Re: Go To University, Not For CS

#97

> Another way to explain the shallowness of Computer Science > is that it's the only discipline that eschews paradox. > Even mathematics has reams of unanswered questions and > potential paradox in its core philosophy. In Computer > Science, there's none. It's assumed that all of it is > pretty much solved and your job as an undergraduate is > to just learn to get a job in this totally solved area > of expertise. Zed…

Abso-blooming-lutely. Whatever happened to NP-Complete as an icky problem nobody can solve? That's exclusive to computer science right there.

Re: Go To University, Not For CS

#98
post #65

If all you really want to do is code, my guess is all the art history and romantic literature classes in the world won't result in a necessarily cultured person. Culture doesn't just come from exposure, it comes from receptiveness. As Dorothy Parker said "You can lead a whore to culture, but you can't make her think" I think this post would be much more accurate if Zed had chosen a more fitting marquis word. There's…

learning to write, no matter where you do it, is an extremely valuable thing to do.

Judging from the output I have seen, though, I'm not sure college is the best place for that.

Re: Go To University, Not For CS

#99

Earlier quoted context omitted.

What BigCos don't hire without degrees? I know people at Google and Microsoft without a degree. I work for a giant corporation, without a degree.

That brings up the question; when did they get into the industry? Back when there was no such thing as a Computer Science degree, you of course didn't need one to get a job as a programmer I'm sure there are some people still who get into Google and Microsoft with no work experience or degree, but I suspect that number was higher when these things were new and all. I also suspect a good number of the people you were…

you need work experience /or/ a degree. If you have neither, you must first do the job you want for the pay you are qualified for. I spent several years doing computer work while earning a McDonalds wage. (I got lucky, and was able to dramatically shorten this period of time because, well, it was dot-com time, and I could spell C.)

As far as I can tell, though, requirements for degrees at BigCo type jobs are becoming less stringent, not more stringent. (again, I emphasize, this is only for people with work experience. BigCo is usually not the place to do the skilled work at unskilled wages.)

My understanding is that in my father's day, it was /much/ more difficult to get in without a degree. Sure, the degree was in math or business (my stepfather has a degree that sounds like a business degree but that actually was one of the early computer degrees.) or something other than computer science, but my understanding was that degrees were more required then than they are now.

Re: Go To University, Not For CS

#100
post #4

It's difficult to take this person's point seriously when he claims >Another way to explain the shallowness of Computer Science is that it's the only discipline that eschews paradox. Even mathematics has reams of unanswered questions and potential paradox in its core philosophy. In Computer Science, there's none. No unanswered questions? Rubbish, 'P=NP' anyone? Correctness of the assumption of the Church-Turing hypot…

If that's counterintuitive, than the most basic physics already teaches you that many things are counterintuive. The 3-body problem does not have an analytical solution. We can't even properly simulate the solar system a couple of thousands of years ahead. Nearly everything in physics is numerical approximation, despite what theory would lead you to believe. After that, the halting problem is far from surprising.

There's a significant difference between "Nobody can solve this problem, despite it having a well defined answer, regardless of the power of the computer and the time given to solve it, no matter how clever you are" and "I can only get an approximation to the solution, but the error will always be well defined, so I can get arbitrarily accurate solutions, say within a nanometer given a few billion years or so."
Post reply on HN