Slashdot Mirror


Overspecialization in the Computer Field?

The Mainframe asks: "I visited a nameless college campus recently and was shocked at the degree of specialization within the student body. Of the many CS and other IT-related majors that I talked to, not a single one had any real breadth of experience. Web developers knew Perl, but couldn't tell Apache from MySQL. C++ coders knew their language, as long as it was presented in Microsoft Visual C++. I suspect if I'd asked them to use G++ they would have said 'bless you'. Essentially, I'm worried. I plan to do some very interesting things in the next few years, but I'm not going to be able to pull it off if I have to wade through 100 narrow-minded people for every 1 useful human being. Is this something that other employers and co-workers have been having a lot of problems with? Is the whole world having to show its database developers how to use a copying machine?"

6 of 120 comments (clear)

  1. Learning Never Taught . . . by Dausha · · Score: 4, Insightful

    This only goes to show that college is no excuse for experience. I approached the field from the reverse direction--studying on my own then working in the field before I sought my degree. I feel that I am, in general, better rounded than the average bear accordingly.

    More to the point, many of the students I encountered were much the same level of clueless. They were in the field because they saw the pot of gold at the end of it, not because they enjoyed the technology or were necessarily adept at it.

    But, if there's one thing I've found out in life--it's that learning never taught me nothin'. And books is the worst.

    --
    What those who want activist courts fear is rule by the people.
  2. Not the task of a university by Kj0n · · Score: 5, Insightful

    I have been working at a university for a couple of years and have noticed there that it is impossible to teach students about every product (commercial or open source) that is available. Instead it is better to give them a broad basis (showing them types of products: a database, an IDE, a web server, ...), instead of giving a course on the difference between Oracle and MySQL. When this broad basis is given in the correct way, they will later be able to use new products when they are presented with them.

    To improve their ability to adjust themselves to a different software environment, a number of assignments can be given in which they have to build some software solution using the tools given to them. This will also teach them that in some situations they cannot choose what to use. Maybe this type of assignment is not yet given enough to students. However, I don't believe the rest of the teaching methodology should be changed.

    1. Re:Not the task of a university by Twylite · · Score: 4, Insightful

      This is very true. To teach a strong theoretical grounding there is little time to study multiple implementations of the theory. Instead, you concentrate on one implementation as an example of the theory.

      In languages for example, you will study the concepts, but pick one (say C++) for practical work. You will look at what C++ has and doesn't have relative to the theoretical model, and (as text book study) relative to other languages such as Java and Smalltalk.

      In my experience, students who have a good theoretical grounding and some practical experience with a single product can easily learn to apply the theory to other products. This is especially true for languages and common office products (word processors, spreadsheets, etc); but conversion becomes more difficult when dealing with specific applications (even IIS vs Apache configuration).

      Specialisation during learning is a good thing. Leave it to on-the-job experience for the development of diversification. Having said that, I think there should be some teaching dedicated to knowing ABOUT the alternatives (but not necessarily how to use them): you are hamstrung if you only know one language, and can't made a knowledgable and objective choice of languages and deployment environments. A comparitive study of languages, operating systems, and common software products, drawing attention to strong cases for use, would be beneficial.

      --
      i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
  3. It's the people by Inominate · · Score: 5, Insightful

    It's the kind of people now taking these jobs, who got out of a university with some know-how, but little real interest. They're not hackers or geeks, it's thier job, they don't really care to 'waste' time learning things that aren't thier job, they lack the insatiable interest of the earlier crop of geeks.

    Instead of seeing something new and wanting to try it out, learn it, figure out how it works, many now simply ignore it, and stay with what they're familiar with.

    It's just the ordinary person replacing the hacker.

  4. What did you expect? by sql*kitten · · Score: 5, Insightful

    I visited a nameless college campus recently and was shocked at the degree of specialization within the student body. Of the many CS and other IT-related majors that I talked to, not a single one had any real breadth of experience.

    They're undergrads. They have no experience, and they aren't expected to have any experience. You don't do a CS degree to learn specific languages and applications, you do it to learn about algorithms and data structures and discrete math.

    No-one expects a fresh CS graduate to be immediately capable of writing production quality code, that's why major firms have graduate training programmes to teach them how to put the theory they've learnt into practice. That's also why starting salaries are usually quite low, but pick up quickly after a few years and the 2nd job - because now the raw recruit can actually do something useful without constant supervision.

    What you're saying is like someone walking into a Civil Engineering department and being horrified that none of the students had ever built a real bridge!

  5. Students & Employers getting what they want by duffbeer703 · · Score: 4, Insightful

    I went to a university that refused to teach product specific stuff. We we were taught to code C on sunos and solaris with gcc in the intro classes.

    Later, we were expected to code competently in any number of languages with mimimal tutoring.

    Most people complained and bitched at this policy, since at the time, (1997) you could get a $50k/year job after studying two weeks for an MCSE.

    Students wanted to learn VC++ and Java. Most employers, even the morons who came on campus, didn't care if you could implement a unix TCP/IP stack -- they wanted to know if you knew how to use VB or were intimate with MFC.

    It sounds like many students are getting their wish -- and finding that they get a shitty, proprietary education.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK