Slashdot Mirror


Constructing a New College IT Curriculum?

slonkak asks: "For extra credit in my Management & Information Systems we were asked to redevelop the IT curriculum. Interning at a government organization for the past 5 years, I have a good idea of what I'd like to know graduating from college. Here are the two tracks I came up with. Does anyone have any suggestions on how to improve this curriculum? I would like more experience members of the Slashdot community to give their input on what they would like to see new hires have a good understanding of." Yes, this one may sound like Slashdot-Do-My-Homework, but the underlying question is still worthwhile. For you IT Managers out there, what do you expect someone with a college degree to know? For you prospective CS Students who might be reading, what would you like to learn while obtaining that degree?

6 of 127 comments (clear)

  1. I Disagree by rmohr02 · · Score: 2, Interesting

    First and foremost, make those classes more than 3 credits. It's hard to fill a quarter/semester when all your major courses have so few credits.

    I don't like the class on basic HTML--if you can't pick that up on your own, you're in the wrong major. In fact, I was flat out told that by a professor in one of my first CIS classes.

    Finally, I don't see any reason to spend time learning basics about one application (like Exchange or Visual C++) when I can learn the basics of those quickly enough on my own after learning general concepts about software engineering. Also, the Windows Server 2003 class will most certainly be outdated in 2-3 years.

  2. Theory by Ouroboro · · Score: 3, Interesting

    I can't speak to your network engineering curriculum, but the curriculum for developer is woefully lacking in any theory. What you have designed here is a curriculum that will produce individuals that are capable of producing software that conforms to a specification, but have not been prepared to create a specification.

    There needs to be courses in data structures, algorithm analysis and operating system theory. I would concern myself less with teaching someone how to be a Java programmer, or a .net programmer, and more with what skills are required to be a good X programmer, where X is whatever language/technology that he or she is presented with. This means that the curriculum and your student aren't obsolete when there is a technology du jour.

    I will say that the one thing that the CS curriculum that I was involved in didn't prepare me effectively for was, documentation. I think that it would have been nice to have been required to produce more in the way documentation for the projects that I was involved in.

    --
    When I want your opinion I will beat it out of you.
  3. Re:You mean IT? by (trb001) · · Score: 2, Interesting

    Yeah, this is practically a Management Information Systems (MIS) program that's a little heavy on the networking side. MIS is typically taught out of the business school and became popular during the dot-com boom for people who wanted to make money and realized that having computer programming knowledge was a good way to do it&lt/opinion>. I had a roommate and a work partner who both did this, and neither were terribly competant in CS...they just didn't know the theory. They were missing the love for CS that a lot of us have, and only saw CS as a way to make $.

    --trb

  4. Re:CS, or IT? by Austin+Milbarge · · Score: 3, Interesting

    I totally agree with you. I taught at two colleges in New York and let me tell you, who ever makes up these curriculums are really doing the students a disservice. I found it very frustrating because these students were pushed along with high level concepts and buzz words. Dont get me wrong. Technologies like COM, ActiveX, .NET, JNI, J2EE, XML, JavaScript, ASP, Applets, CGI, VRML, etc, etc, etc... are all useful and great. But they come and go almost everyday! Whereas basic concepts like pointers, stack frames, dynamic memory allocation, linked lists, hash tables, trees, file mapping and virtual memory are the foundation of all computing and are ingnored or barely mentioned in schools anymore.

    Why? Because learning this stuff is downright difficult. But this is where the science is. Most colleges and certification courses who promise big $$$ to it's students who graudate, don't have the time and resources to teach students the basic building blocks, which is why I feel we (America) are losing our grip in IT on a global scale.

    Another piece of the spoiled pie is that these students are taught about technology mostly through Microsoft products and Microsoft's marketing and never understand how makefiles or compiler switches work. I can't begin to tell you how many companies I've worked for that hire button clickers and mouse draggers only to find out they are paying BIG $$$ for a guy who can barely solve a problem without looking through his Microsoft technet CD or worse yet, re-installing Windows! We really need to get back to the basics and teach computer science and NOT some company's marketing campaign.

  5. I'd like to see more business by nelsonal · · Score: 2, Interesting

    It seesm like a ton of Information Resources are utilized at businesses, and as the resident business geek, I get tons of questions regarding how some accounting proceedures work (journaling, account closing, payroll). So I'd suggest that technical IT curriculum, not those who will be doing research into CS theory but those who will be the day to day practitioners of it, get a few accounting classes. For starters I think the average IT student would benefit from a Principles of Accounting (100 level class) and a managerial finance (how to use accounting to make business decisions type of 200 level class) almost all colleges and technical schools offer them and they would probably do more than any other thing to improve the productivity of a graduate than anything else I can imagine. As a bonus it would be quite useful for anyone planning to start a business. Finally, the thinking behind accounting is very similar to the data manipulation that I've seen in beginning programming classes. Later, a personal finance class and principles of economics class would be more marginal improvments.

    --
    Degaussing scares the bad magnetism out of the monitor and fills it with good karma.
  6. This comment is gold by FortKnox · · Score: 2, Interesting

    Since I've been out of school, I've had to learn 4 different computer languages. But that was no problem, because I had the theory and background in my (computer engineering) coursework and degree.

    Honestly, computer languages just come down to syntax[1]. If you have the theory and background to know the "ways to code" (not just "coding in C++"), then languages are just about learning syntax.

    Coding in the real work is 30% design, 10% implementation (coding), 10% fixing bugs, and 50% maintainability. If you just know different computer languages, you can handle 10% (even 20%) of the job (implementation and fixing bugs). You need a good theory basis for a good design, and a really good design for good maintainability.


    [1] Well, functional, object oriented, and procedural languages types, then syntax. Writing an app in lisp, java, and C are all different style of coding altogether, but you still need to know how to use the theory with these language types.

    --
    Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!