Slashdot Mirror


Getting the Most Out of a CS Curriculum?

Henry asks: "In September I start on a CS-type degree course. I am probably a fairly typical newbie programmer, in that most of my knowledge centers around scripting and high to very high level programming. There's much to choose from: languages, concepts, mathematics, and so on. From previous stories, I know that many readers have strong opinions on the failings and weaknesses of university courses and students. Apart from all of the coding that I will do, what can I do in the coming months to maximize what I get out of this? "

4 of 124 comments (clear)

  1. Start an OSS project by tomstdenis · · Score: 2, Interesting

    Find a problem that isn't adequately solved and do it. Nothing says serious developer more than someone who can develop, maintain, document, and support a useful OSS project. Bonus points: Your future employer may be a user (worked out for me :-)).

    People who coast through uni without really taking the initiative are a dime a dozen. If you want to stand out you have to get yourself organized and build a portfolio of public projects that demonstrate you're a competent fellow.

    Tom

    --
    Someday, I'll have a real sig.
  2. Re:CS-type degree course? by TheRaven64 · · Score: 2, Interesting

    Computer science is no more about computers than astronomy is about telescopes. --Edsger Dijkstra I think you are reading this quote the wrong way. How many of the famous astronomers from history didn't build their own telescopes? Very few. Even these days, astronomers have to know a lot about telescopes; how they work, how they are built, how to effectively use them. I learned most of the optics I know via astronomy.

    Computers are not the be-all and end-all of computer science, but they are the basic, fundamental tool. If you can't write software, then you are as much use as a computer scientist as an astronomer who couldn't build their own telescope. Even if you don't actually end up writing software (or building telescopes), the ability to is still important.

    --
    I am TheRaven on Soylent News
  3. Re:CS-type degree course? by honkycat · · Score: 2, Interesting

    I think the solution then is to not offer what you types call a "pure" comp.sci degree. Because no other science is purely book work.
    Almost any science program focuses on the science itself, not the huge variety of practical engineering-type yak-shaving techniques that you may end up spending most of your time actually doing. There's so much actual science to be learned that you just can't fit in specific classes to cover all the practical details you may need experience in. I don't see that computer science needs to be treated differently in this regard.

    For example, even a physics undergrad degree program doesn't typically include the engineering training that you'd need to design a cryostat or a particle detector. It includes the background science on these, but when it comes time in your career to actually do this, there's still a lot of specifics left to learn. There are so many different specifics that you may need, depending on what area of physics you go into, it's just not reasonable to include them in the degree.

    What you get instead are lab classes and undergraduate thesis projects. The former expose you to a random smattering of specific techniques, but typically no actual instrument design. These usually try to cover a broad range of techniques, but there's still only time to do a few. Your undergrad thesis project probably concerns an area you're likely to go into, so it's a good opportunity to learn some specific techniques in more depth, but even that is usually a very limited project.

    I don't see why "computer science" should be treated much differently from other sciences. It has the same issue with squeezing both the theoretical background and practical issues into a reasonable program. There is such a huge number of technologies / languages / code management tools / etc out there, that no matter what subset they choose, it's going to be the wrong set for a large number of graduates.

    I agree with whoever it was who suggested having separate degrees for CS and software engineering. What's the problem with a computer science degree aimed at those who really want the background and a software engineering degree that offers a mix of computer science courses and specific practical issues? The world needs both programmers and computer scientists, and they have pretty different educational needs.
  4. Some general advice by Anonymous+Brave+Guy · · Score: 2, Interesting

    I wrote a post in a recent Slashdot discussion on computer science that might be of interest. Short version: read around your subject, try to gain a breadth of experience using the resources available at your university, and never stop learning. The linked post is the long version with specific examples. HTH...

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.