Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Education

Computer Science Curriculum in College 654

Ludwig Feuerbach writes "As it's back to school for university students, including Computer Science undergraduates like myself, I look at my course schedule for this semester and I have courses with titles like: Theory of Computation, Numerical Analysis, Artificial Intelligence, Machine Learning, and History of Economics from Plato to Keynes. The first 4 courses are required in my CS program. I had thought nothing of it until I read an opinion piece by Dan Zambonini, who stresses the type of courses I'm taking are, essentially, useless for getting a job. He lists several CS courses useful for a job. Is he right? I tend to think that an university education should stress scientific topics over vocational ones, but since I'm just planning to get a job after I grad, am I in the right program?"
This discussion has been archived. No new comments can be posted.

Computer Science Curriculum in College

Comments Filter:
  • by Anonymous Coward on Sunday September 11, 2005 @11:51AM (#13531817)
    Agreed 110% - Information Systems work IS the "steady-eddy/bread & butter" end of this field... & there is ALWAYS work in it.

    No two corporate entities structure their data or use EXACTLY the same data (unless part of same company) typically, so custom information systems work (e.g.-> custom databases & such + reporting apps etc./et all) will always need to be designed & redesigned or added onto (or even modded/improved for changing conditions).

    Another REALLY useful (imo) course, is "DataStructures" if it was not included in said list from the URL document: It teaches you a great many things & patterns of thought (such as which types of sorts to use, when, & with what datatypes & sizes of sets to sort thru, as one example of what you acquire/learn from it).

    How much of it do you REALLY use in IS/IT/MIS work? Not much, but it is a GREAT course for anyone into computing imo!

    * :)

    APK

    P.S.=> The reason I agree SO strongly with the init. poster & his comment of:

    "for a job, then go into CIS."

    I assume he meant information systems work/databasing in general (often called "data processing" as well)... I have made more than a decade worth of money from it, for the very reasons I state above:

    Sometimes, there is NO "canned/prebuilt/turnkey" instant solution out there for various enterprises out there or their data - you HAVE to build them, for them! apk
  • by Cerdic ( 904049 ) on Sunday September 11, 2005 @12:14PM (#13531949)
    It's probably more important to be more rounded by taking an occasional class that you don't think you "need" and/or doing a minor or two rather than formulating your degree solely on what you think is good for a job. You might just find that you like another field better than CS. Also, much of what you need for the job is self-taught and learned on the spot anyway.
  • by jfortier ( 141983 ) on Sunday September 11, 2005 @01:08PM (#13532289)

    In Canada, a college is usually what an American would call a "community college", so its primary focus is instruction with a vocational focus. University means just what it means in the US, a higher-education institution that has a strong focus on research (and obviously the extent of that focus varies from place to place). The term college is sometimes also used to refer to the units of a university, such as St. Mike's College at the University of Toronto or St. Paul's College at the University of Manitoba, so you have to get some of the meaning from the context. Without context, the first meaning is usually understood.

    The easiest way to see the difference is that if you tell a Canadian "I'm going to college", he'll probably look at you a second and then either think to himself or say, "Oh, you mean university".

  • by imgumbydammit ( 879859 ) on Sunday September 11, 2005 @01:17PM (#13532339)
    Colleges are primarily technical/vocational schools.

    If you want to become a firefighter, travel agent, surveyer, etc you would go to a college.

    If you want to study english lit. or finance, you go from high school to university...except in Quebec (just to make it confusing), where everyone goes to college (called CEGEP) after high school, and then those who are in the pre-university stream go on to another three years of school in university. Pre-university people spend two years in CEGEP, whereas vocational people spend three years there.

    One view is that universities are where the academic "elite" go. The other view is that colleges are where the people who want useful jobs and useful job training go.
  • Just My Experience (Score:1, Informative)

    by Anonymous Coward on Sunday September 11, 2005 @01:48PM (#13532500)
    Generally, it's easier for an engineering grad (lets say Aerospace ;) to *be* a software engineer than it is for a CS grad to *be* an Aerospace Engineer. My point? It's very possible to get a software job being a self taught programmer without a CS degree.

    I work with a bunch of guys who have CS degrees and I'm just as competitive without a CS degree. Granted, I did spend A LOT of my own time learning to code, but if I get tired of software I have lots of options. Not many CS guys can do that.

    This is not a knock on CS, but I just thought I'd mention one of the alternatives to going strictly CS. I've been in software for nearly 10 years and I would say success is more about motivation than what degree you have. Give yourself as many options as reasonably possible...
  • by fab13n ( 680873 ) on Sunday September 11, 2005 @02:48PM (#13532839)
    You periodically get that kind of guys, on nerd-oriented forums like /., who says "fsck off with maths and theoretical stuff, what I want to learn is LAMP/AJAX hacking or writing big chunks of Java for big chunky compagnies". WRONG.

    First: the school's main purpose is not to teach you your job; it's to teach you the parts of the job you wouldn't be able to learn by yourself. Mastering a couple of languages and patterns is something you'll learn at your first professional position, every code monkey can do that by himself. You'll be allowed to think of yourself as fully trained when applying for your 2nd or 3rd job.

    What you won't be able to learn under the pression of real-job-conditions is more fundamental: it's about having those abstraction capabilities, which allow to understand a problem, turn it into a formal model, find appropriate algorithms to handle this model. That's maths. Indeed, you'll probably never write a computer-vision system or a ray-tracer for a compagny. But by having been drilled on such problems at school, you'll [hopefully] have acquired some skills in complex problem modelisation and solving, that you'll need to write everything but dumb PHP interface to a DB. And you know what? These dumb code monkey jobs are going to become Indian or Chinese long before Duke Nukem Forever is released, so you'd better be able to work on smarter stuff.

    I know, it hurts to admit that mathematical thinking abilities are a must for decent programmers when you're yourself mathematically-challenged. It must be unpleasnt to realize that a lot of tough training is required to acquire these skills. But just translate this attitude to an other field and you'll see how stupid it is: "I want to become a novel writer, so I don't see the point of studying ancient authors: nobody speaks/writes that way these days. I don't want to read war stories or poetry either, as I don't plan to write any. I don't want to hear about mythology, classical litterature theories, or whatever. What I want to be trained at is grammar (spelling is useless now that we have decent spell checkers) and type-writing".

  • by aduzik ( 705453 ) on Sunday September 11, 2005 @05:49PM (#13533646) Homepage
    I read TFA, and I can't believe that this guy is advocating software engineering. I reread an old, but not too old, paper by Edsgar Dijkstra called "On the Cruelty of Really Teaching Computer Science". In it, he refers to software engineering as "how to program if you cannot." That one had me rolling on the floor because, more often than not, it agrees with my own observations and experience.

    Our university teaches software engineering. The professor who teaches most of the software engineering courses is an idiot. For my project, my group and I wrote a pretty kick-ass app with some pretty kick-ass code. How? We snuck in some agile methodology, which just seemed perfect given the size of the group and the size of the project. Even though our project was the best in the class, we got a C because the specifications weren't complete, and she wasn't convinced that our automated tests would really test the code. (The other groups who got A's for testing wrote some very non-specific paragraphs about how they might test their code. None of them actually did any testing)

    What this proves to me is that software engineering is easily the most useless discipline in computer science. I have never had a good experience with it. I've never known anyone who said that software engineering really makes things run smoothly. It's a business-centered/management-centered unrealistic approach to software development. It may make your boss feel all warm and fuzzy, but it won't get the software out the door on time, nor will the developers have any degree of confidence in it.

  • by boomgopher ( 627124 ) on Sunday September 11, 2005 @08:13PM (#13534314) Journal
    I find myself trying to create a data structure/tree like a family tree or a directory structure

    Do you really need to create your own datastructure? The Java Collections framework [sun.com] has a number of good classes and interfaces that are useful. Anytime I've thought I needed to do this from scratch, I was wrong...


The moon is made of green cheese. -- John Heywood

Working...