Slashdot Mirror


Ivy League Computer Science Curricula Exposed

Doug Treadwell writes "Many people have wondered what the difference is between the Computer Science education given in the average public university versus one given in an Ivy League university (or a top level public university). There have also been discussions here on Slashdot about whether any Computer Science curriculum gives students the knowledge they need for the working world. As a computer science student both questions are very important to me, so I decided to answer them for myself and build a website to share what I found. I was able to find the required reading for hundreds of courses at Stanford, Princeton, Carnegie Mellon, and Berkeley; along with some other institutions. This should also help answer some of those 'What should I read?' questions."

7 of 312 comments (clear)

  1. Interesting project but...do students use books? by Anonymous Coward · · Score: 5, Insightful

    Personally I am an Electrical Engineering student at a top-5 public university in the country. Our selection of required course materials in no way reflects the quality/content of our courses, in general.

  2. Why "need for the working world"? by Kupfernigk · · Score: 5, Insightful

    To become a professional you do a theoretical degree to give you a toolkit and learn how to find stuff out, then you do your professional training. Works for physicians, lawyers, engineers, accountants. You end up with two or more sets of postnominal letters, one of which is vocational. Why not software designers?

    --
    From scarped cliff or quarried stone she cries "A thousand types are gone, I care for nothing, no not one."
  3. Give me a break by Anonymous Coward · · Score: 5, Insightful

    This is ridiculously spammy, and I don't know how this got to the front page. This dude just went to the online course catalogs for these universities and copied the course descriptions and text books, and then put them up with amazon referral links. There is no insight, no comparison between universities, no analysis of difficulty level, no breakdown between theory and software development, and no firsthand accounts. Just lists of textbooks.

  4. Pathetic Ham by shaitand · · Score: 5, Insightful

    This site is nothing more than a list of recommended list of books with a pointer to them on amazon using his affiliate link!

    I can't believe slashdot posted this. I like robots,

  5. The Ivy League by coaxial · · Score: 5, Insightful

    I've met several CS grads and grad students from the Ivy League, and have to say I'm not impressed. For all the hooplah around the Ivy League, there isn't a bit a difference between them and any other CS department.

    The Ivy League is just a brand, and a brand that is much more valuable in the liberal arts, not the sciences.

    Same thing pretty much is tru

  6. First line gives it all away by devnullkac · · Score: 5, Insightful

    Discover what many people have spent tens of thousands of dollars to learn, FREE!

    Any time any web site claims to save you money using the word "free" in all caps, run!

    --
    What do you mean they cut the power? How can they cut the power, man? They're animals!
  7. The achievement of computer science by Animats · · Score: 5, Insightful

    I've been fortunate enough to work on most of the big problems in computer science at one time or another. CPU scheduling. Network congestion. Compiler optimization. Proof of correctness. Secure operating systems. Image processing. Mobile robotics. Game physics. I've done very well financially. I have an advanced degree from one of the big-name schools. So I can't complain personally. Going into computer science worked out very well for me.

    But I'm from the previous generation of programmers. Programming today is mostly about dealing with yet another API with another thousand or so interfaces, some of which work. By the time you're dealing with the fifteenth system for putting widgets on a screen and processing incoming events, you get fed up. Especially since you can see all the ways in which the new ones got something wrong that was a solved problem a decade or two ago.

    Most of the basic algorithmic problems have been solved. Not only have they been solved, the solutions have been packaged up so that you don't have to look at them. How often do you really need to open Knuth any more?

    Computing is the "stationary engineering" of today. About a century ago, stationary engineering, the work of, literally, keeping the wheels of industry turning, reached this point. In 1870 or so, stationary engineering was a growth job that needed smart people who understood the details of engines, generators, and steam. The basics of the field were still being figured out. Counterflow boilers and carbon commutator brushes were hot R&D topics. Just getting the machinery to work at all was tough, and there were serious reliability problems. By 1910 or so, most of the hard problems had been solved; big steam turbines and generators were working reliably, and plant operation didn't require much innovative thinking. Today, stationary engineering is a union job that few people even realize exists.

    Computing is now about where stationary engineering was in 1910. Everything pretty much works, and most of what's going on is not that innovative. We're now dealing with scaling issues, which is where electric power was in 1910.

    There's interesting stuff going on in robotics, parts of AI, statistical methods, and the handling of very large databases. We need small numbers of smart people to push that forward. There are areas of software engineering that need real engineering talent, like video compression and graphics, although such narrow, well-bounded problems tend to move into hardware. But we no longer need computer scientists just to run a data center or to set up business applications and web sites. Just careful, well-trained technicians.

    That's what employers want, and that's what most of the students want. Most of the schools are willing to accommodate them.