Slashdot Mirror


The Death Of CS In Education?

JohnnyKimble writes "A provocatively titled article recently appeared in the 'Future of Computing' section of the British Computer Society website. 'The Death Of Computing' was written by a lecturer at De Montfort University in the UK, and considers the problem of falling interest in computer science courses in the UK and what needs to be done to encourage more students to take the courses." This ties in well with our discussion last night about Why Software is Hard.

12 of 521 comments (clear)

  1. Re:good by Shados · · Score: 4, Interesting

    Bingo. CS is dying because of the lack of software engineering classes. There -is- a definite need for computer scientists. However, its totally crazy that 90% of computer related programs in college are CS, when the need for software developers, analysts, software architects and software engineers trump it 10:1. So you have a ton of people who end up taking a CS degree, and because of the market's needs, work as software engineers or whatsnot, thus inevitably ending in a "Wow, what I learnt in school is useless!" (when its not, its just that the 1794012740912709124 people who have more experience got the interesting CS jobs first...), and thus, interests die.

    If the people who want to do software developement had more options in college, and could go in that direction, there would actualy be some room left for CS...

  2. Re:If their CS programs are like ours... by pw700z · · Score: 3, Interesting

    No discrete math? Isn't that more like a degree "about" computer science, than a degree "in" computer science?

  3. British Computer Society is a joke by Crosma · · Score: 3, Interesting

    I studied at Cardiff University. The British Computer Society pushed so much unnecessary crap onto us (Accounting, Business skills, Information Systems, Distributed Systems, Information Management) that there was not enough room left for a hearty course. I've never heard so much bollocks. Things like compiler theory, functional programming and logical programming were optional due to lack of space. It's pressure from the BCS that's made the Computer Science degree a waste of time in the UK. Plenty (read: most) Computer Science graduates with first class degrees got them by being good at the bollocks, and mediocre (or useless) at anything useful. Of course, I'm bitter because I was never any good at the bollocks, so I got a crappy degree.

  4. Re:Grand theft auto vs. circles by julesh · · Score: 5, Interesting

    That's not a generation gap talking. That's the fact that less than one person in a hundred actually finds this stuff interesting.

    This is how it was, and how it is. In the middle, there was a spike of people looking at lists of well-paid jobs and industry articles complaining about a shortage of people with the skills to fill them, and seeing those three-stage plans without the missing step. Most of those are gone, now. We're back to just the enthusiasts.

  5. Re:It's the $$$ Stupid by xeoron · · Score: 4, Interesting

    I know that at my school there has been a massive drop in students from out of the country-- mainly Japan, China, India, Asia, etc. I wonder if it has anything to do with outsourcing, cheaper degrees elsewhere, or a shift in what people prefer to major in.

  6. Re:If their CS programs are like ours... by Anonymous Coward · · Score: 4, Interesting

    What I have noticed as a employer of about 30 programmers is that the students that have business degrees and a background in computers really know more about programming than CS majors. When I want someone to do what they are teaching today in CS classes I will contract a electrical engineer. From my experience CS classes are teaching way too much theory. I have all kinds of kids that are applying for jobs that know tons of theory, but can't apply the shit. CS professors need to get their heads out of the clouds and teach something that the students will really be able to use.

  7. Re:If their CS programs are like ours... by bmajik · · Score: 4, Interesting

    Computer Science was originally applied mathematics.

    Computer Science is roughly, the study of what sorts of problems you can solve with a computer, and how to make them do so.

    Just like Mathematics is the study of what sorts of problems you can solve with Mathematics, and how to solve them :)

    The applied mathematics legacy of computer science is thankfully wearing off more and more - we're now thinking about algorithms from a discrete, slow-convergent, approximative perspective -- thing's you'd never do if you started on paper or if computation time were prohibative (i.e. limited by human protein instead of teraflops silicon).

    Web development is no more a computer science degree than sabarnes oxley compliance is economics or accounting. The former is the specialization of a topic made relevant by the latter, a specialization that will be gone in a few short years. Just last week we had the article about the "death of the webmaster". I eaglerly await the "death of the web developer". We will either transcend the web, or publishing content to the web will become so commonplace and pervasive that it hardly seems worth calling a specialty.

    No offense to your or your career choice intended, but hopefully the work you do today sets the stage for tomorrow. You and the world will move on to better things.

    One thing will be invariant, through all of this, however. There will be problems to solve, and people will want to know if computers can solve them effectively. That is what computer science is and should remain. New problems will arise, and new general solutions will emerge, each becoming an area of further research or career specialization.

    --
    My opinions are my own, and do not necessarily represent those of my employer.
  8. Re:If their CS programs are like ours... by Hott+of+the+World · · Score: 4, Interesting

    I'm interested in what you see your CS grads doing that you'd call the responsibility of an electrical engineer. I mean, Computer Engineers would definitely fall under a "confused major" listing, but as far as my experiences, we stayed pretty far away from the EEs at our school.

    I'd also like to hear what kind of work you're doing that business majors would grasp it easier than CS majors.

    --
    | - | - |
  9. Re:If their CS programs are like ours... by compupc1 · · Score: 3, Interesting

    The thing is, the term "computer science" is so broad. People view it as being any one of the following four areas of study. I like to think of them as all coming under the umbrella of computer science.

    1) The formal methods that study the mathematics of computability and computation.
    2) The study of how computers themselves actually work -- the CPU, the OS, compilers, etc.
    3) An engineering discipline -- software engineering, computer (hardware) engineering, etc. For instance, in the case of software, we're talking the analysis, design, and implementation.
    4) A foundation upon which to study specific subfields, like AI or robotics, or data visualization, 3D graphics, etc.

    Obviously there are common skills shared between all four. For instance, programming is a tool used for empirical verification of results in #1, it's the product of the work done in #2, it's an entry-level skill upon which much of #3 is based, and it's necessary for experimentation with #4. The problem, as I see it, is that too may schools focus too much on #1. I do think there is value in understanding complexity theory and things like that, but the reality is that for 90% of the jobs out there, those sorts of skills are of secondary importance to #3, and to soft skills like verbal/written communication, project management, etc. If you look at all the lists of the top growing jobs, software engineering is always near the top of the list. There is a need for computer scientists, particularly those focused on software engineering.

    My school focused on #3 -- software engineering in particular. We had the algorithms, data structures, discrete structures, CPU organization, OS, etc. All the basics. But for the upper level classes, instead of making us take a year of complexity theory or something like that, we studied data modeling, object-oriented design patterns, technical communication, software development methodologies, etc. Sure, you could take your theory of computation or #4 topics as electives if you wanted, but it wasn't the core focus. And with a background like that, there were far more job offers out there than graduates. And when you started, you started way above the entry-level position.

    So no, computer science is not going away. It's just that the emphasis needs to shift towards a more engineering-oriented approach. We'll always still need some folks who really understand the theory, who understand the details of compilers, and the CPU designers. But the vast majority of people instead need to be effective software engineers. And educational institutions need to realize that and alter the emphasis of their curriculums to accommodate that trend. Those that don't will simply become irrelevant.

    --
    -James
  10. Re:If their CS programs are like ours... by reset_button · · Score: 3, Interesting

    That was exactly my point! Computer science is not programming. There are so many aspects to computer science, and programming is just one of them. Theory is a huge part of computer SCIENCE. I think the problem might be that the field is so broad that many students that graduate with a bachelors degree only get a taste of each part. I believe that no student (who isn't also self-taught) becomes an expert in any field after graduating with a bachelors degree. I took one database course as an undergrad - would you hire me to do database work? Or my one networking course? Or one graphics course? Or one architecture course? (Catching my drift here?)

  11. Re:Computer science is a branch of mathematics. by arivanov · · Score: 4, Interesting

    My observations are completely opposite. CS courses are getting more applied, not less.

    As far as the decline in CS it is due to other reasons. It is a logical combination of the steady decline of math in schools in Western Europe (and especially English speaking) combined with systematic stampout of the freedom to tinker. It is the same in CS, physics and chemistry.

    • In chemistry the kids are no longer interested because the lessons are terminally dull and no "bum-bum" is ever allowed to happen.
    • In physics it is a combination of "no sparks allowed" and not enough math.
    • In CS the primary underlying reason is that the Educational establishment firmly associates computer literacy with Microsoft Word literacy and nothing else. Not suprising as they are by majority literate at just that level (and nothing more). So the students are hardly ever taught how to write two lines of code or how to produce something working. God forbid that they open the computer to see what makes it tick. And Oh horror of horrors - hacking the classroom system - that is a definitive expulsion.

    As a result the kids that come out of the UK and US educational system are damaged beyond repair. The few that have not lost their interest cannot compete versus kids from the mainland Europe, Eastern Europe, Far East or even India. I am not surprised that they chose not to enter CS, physics or chemistry degrees. With the average education level provided by British and US schools facing a class (or even worse competition for jobs) versus what is produced by education systems elsewhere is a very dawnting perspective.

    --
    Baker's Law: Misery no longer loves company. Nowadays it insists on it
    http://www.sigsegv.cx/
  12. Not surprising by leabre · · Score: 4, Interesting

    The type of work I do, knowledge of data structures and algorithms isn't essential but useful. Those who are familiar with the fundamentals generally write better code (optimized and not resource-hungry). I interview people that have multiple degrees and Masters and sometimes a PH.D. that have difficulty answering questions and vectors and bubble sorts. Further, when new employees come in whom I didn't interview sometime we "chit-chat" and talk about algorithms and more often than not they don't have a clue despite their Master's degrees in computer science (I've never been able to explain why but isn't always the case but is more often than naught -- in my experience, of course, YMMV). We have had a few mathemeticians that are absolutely steller at all things math, computer science, and physics but having a "chance" mathemetician start in this company (in my 4 years there) is quite rare.

    Anyway, I don't even have a degree or certification but I do have 10 years professional experience and I very much am familiar with algorithms and data structures and can even conjure up mathematical proofs of some of them (with complete understanding). I'm just a self-study, is all. I started to get a degree in comp. sci. since I was practicing it for many years but got sick of earning crappy crades because I didn't follow things step-by-step as per the textbook but actually optimized or found more efficient ways of achieving the same -- getting ahead of the class mostly. I'm not really cut out to be a robot.

    These days I do a lot of research in things like autonomic computing (self-healing software) and nueral networks and genetic algorithms (which really are just another type of algorithm and data structure in my opinion, nothing magical). Trying to get learning into my business services and elements of healing and user-usage pattern recognition. In the self-healing and learning erea, I mostly have to decipher various doctoral theses and other scholastic publications to get any useful information; not an easy task for someone who at most has about 2 semesters of college edumacation and no industry certs (but well over 800 software programming & related book on my shelf that each have been read cover to cover mostly).

    Computer Science is often misunderstood, too, by everyone in the employment chain. Computer Science is more about research and in a sense, pioneering, and coming up with better ways to solve problems or even identifying new problems to solve at a fundamental level. Comp. Scientists will even offer "proofs" of various solutions and so on and present initial implementations.

    I view Software Engineering more as "vocational". Not necessarily research and acedemics, but more or less puting well-known practice and knowledge into implementation; designing architectures and frameworks and such. I'm not sure where the overlap is, if any. I don't picture computer scientists really creating business applications and data entry programs but I do view them creating something like photoshop and flash and operatins systems, for example. There's much research and fundatmentals in those things. I don't view software engineers proper as doing fundamental research but I woudln't rule out them doing research and coming up with creative ways to solve problems that might interfere with the duties of a scientist if requirements dictate.

    My point in all this is that most employers want programmers, coders, or developers (whatever you want to call it) but actually try to hire scientists when comp. sci. isn't about programming as much as it is about research. Most companies don't want researchers, they want people that can take known research and knowledge and put it into practice for the company.

    Most people that want to be software developers don't necessarily want to be scientists; computer science is the wrong field of study for them. MIS or Soft. Eng. is better for them. Though I agree that all programmer types should be familiar with the basics, there's a difference with being