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.

426 of 521 comments (clear)

  1. If their CS programs are like ours... by MattyCobb · · Score: 1, Insightful

    then they might be failing because they are more math degrees than what I would consider "computer science". That is why I changed my major to web development here. I didn't want a math degree and that is exactly what I was getting.

    --

    Matt
    You have 1 Moderator Point! Use it or lose it! Is that a threat? -vapid
    1. Re:If their CS programs are like ours... by reset_button · · Score: 5, Insightful

      then they might be failing because they are more math degrees than what I would consider "computer science". That is why I changed my major to web development here. I didn't want a math degree and that is exactly what I was getting. Or maybe you were getting a degree in computer science and wanted a degree in computer programming? Chances are if you took a math course and don't understand how it applied to computer science, you just don't know enough about computer science. I use probability and statistics frequently. Those who work in computer graphics and visualization use linear algebra and calculus daily. Give me a math course, and I'll show you how it applies to computer science.
    2. Re:If their CS programs are like ours... by kfg · · Score: 2, Funny

      Who woulda thunk that "computer" science would have something to do with math.

      KFG

    3. Re:If their CS programs are like ours... by pw700z · · Score: 1

      Computers are giant calculators. So, understanding the science of computers would seem to require a lot of math. The world that allows you to major in "web development" was imagined, designed, and built by the computer scientist types. I suspect the next big post-Internet computer thing, whatever it is, will be, too.

    4. Re:If their CS programs are like ours... by agentker · · Score: 1

      That really depends on where you go. I'm a CS major now and the only math I'm required to take is Calc 1 and 2. They don't even offer Discrete math; I'm going to a local state college to take it this semester.

    5. 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?

    6. Re:If their CS programs are like ours... by Rakishi · · Score: 1

      Exactly, its not CS's fault if you're an idiot who didn't even look at what the major is about or what its for.

    7. Re:If their CS programs are like ours... by High+Hat · · Score: 2, Interesting
      Is it really only math? Of course a solid mathematical foundation is important for understanding algorithms, but what percentage of IT work really requires thinking up clever algorithms to hard problems?

      In my humble opinion, more and more problems in IT today are words problems rather than number problems. Programming is more like writing natural language, not like performing calculus.

      The biggest area for advances in computing is the man-machine interface. Which boils down to language in the end.

      Still, the emphasis in cs courses is mostly on maths. No linguistics, no English or other languages. Why not mix this in with the cs courses? I would have chosen this anytime, but cs + economics, cs + math, cs + engineering? Well, then it's pure cs for me, thank you...

      Gnaa, I think I'm much too tired to coherently get my point across this late...

    8. Re:If their CS programs are like ours... by Cappadonna · · Score: 5, Insightful

      then they might be failing because they are more math degrees than what I would consider "computer science". That is why I changed my major to web development here. I didn't want a math degree and that is exactly what I was getting.

      At its basis, computer science is nothing more than discrete algerbra and graphy theory. It is applied mathemtics, pure and simple. For what you want to do, you're right. You'd better off getting an art degree and picking up a few programming course on the side.

      Actually, I would say that CS programmes need MORE math and theory classes. Sorry, but too many IT people are walking around with little to no understanding of fundamental data structures, calculus or logic. People think that I'm talking in circles at work, and its mainly b/c I have a physics background -- we solve problems with graphs, formulas and rigors that many IT "professionals" fail to grasp. If anything, I'm pursuing a CS masters so I can grasp even more of the high level basis of modern information technology. Its only in seeing the full theorem can you understand how it all fits.

      And in what universe does a CS undergrad not learn how to program? That was a pre-req for majoring in the subject when I was in college -- and I graduate in 2000!! Must be older than I thought.

      Look, you can teach most people how to hack code, troubleshoot a switch, or run a tech support call. But the underlying theorems that glue all of IT together you can only get from a classical Computer Science or engineering education. Its alot easier for a CS, Physics or Math major to switch between a networking job and a programming job, b/c he knows all of the background stuff that makes it all work. An IT-certified pro may struggle a bit, only b/c he's not going to know the basics.

      My big complaint about CS majors is that most HS in the states don't prepare young people for the kind of head-scratching work that the major requires.

    9. Re:If their CS programs are like ours... by metlin · · Score: 5, Informative
      Let's see now:

      • Almost anything in graphics programming is entirely mathematics (or physics, which once again, brings us to math).
      • Networking - network optimization algorithms and the like use queuing theory, routing algorithms, graph theory and related stuff, which is math.
      • Almost everything in quantitative AI is math - machine learning, neural nets and the like.
      • Multimedia - codecs and the like use transforms, compression algorithms etc. which are, once again, math.
      • Cryptography - crypto is almost entirely number theory. Sure, implementation needs coding skills, but the fundamentals of crypto itself is entirely math.
      • Data strutures, compilers and the like are once again discrete math and graph theory, stacks, queues and trees.
      • Information theory is almost entirely applied math.
      • Distributed computing, parallel computing etc. once again use routing mechanisms, load distribution algorithms and other things which are heavily dependent on math.
      • Theoretical computer science by itself is, well, applied math (look at computational complexity).


      If you wanted to do "web development" (heh) you are in the wrong area. Other than parts of systems programming (and even there, paging algorithmsm memory management etc. are mathematical), Computer "Science" is, well, math oriented.
    10. Re:If their CS programs are like ours... by Anonymous Coward · · Score: 3, Insightful

      Computer Science is an academic program in the traditional sense and teach you how to think abstractly about the very basis of an intellectual field. Programming, database management, information services and the like are essentially trade degrees that prepare you to do jobs. Think of the difference between a degree in economics and a degree in business. Or physics vice engineering. One isn't better than another but they are fundamentally different.

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

      "Who woulda thunk that "computer" science would have something to do with math."

      Computer science does have a lot to do with math but is it reasonable to expect 24 hours of math when 36 hours gets you a degree in math? That is exactly what my CS program required. Most (if not all) CS majors here were dual majors because of this.

      It got so bad that my college has since dropped the entire program because of the high drop rate. To put it bluntly, they were taking in 30-40 students a semester and graduating 5-7! Hell of an attrition rate there. And of the 5-7 that graduated ALL had to leave the state to get jobs.

      So yes, math is a big part of CS but there has got to be better ways to handle it.

      B.

      --
      This is a sig. This is only a sig. Had this been an actual sig you would have been informed where to tune for more sigs.
    12. Re:If their CS programs are like ours... by Anonymous Coward · · Score: 4, Insightful

      IT work isn't computer science. Plumbing isn't physics. Programming is perhaps the closest to computer science as you can get as an IT worker (IT means information technology, not information science), because a good programmer who does groundbreaking work often requires knowledge which comes from computer science (and math). Big advances are increasingly happening on the mathematical front, simply because the datasets are becoming much larger as computational capacity increases. Sure, UI is very visible and thus easily recognized as important, but the nicest user interface doesn't create fast search engines, realtime renderers, distributed filesystems, voice recognition software, efficient routing, weather forecasts, encryption software, GPS receivers, etc. Try writing anything in those fields without a background in computer science...

    13. Re:If their CS programs are like ours... by Rakishi · · Score: 2, Informative

      Almost everything in quantitative AI is math - machine learning, neural nets and the like.

      Just a note: There are tons of jobs right now for people who can do machine learning or statistics on very large datasets (ie: the type which you can't load into memory at once and sometimes which are continually being lengthened).

    14. Re:If their CS programs are like ours... by whoever57 · · Score: 4, Insightful

      Computer science does have a lot to do with math but is it reasonable to expect 24 hours of math when 36 hours gets you a degree in math?
      My physics degree (many years ago) required sufficient math to qualify for a math degree.
      --
      The real "Libtards" are the Libertarians!
    15. Re:If their CS programs are like ours... by illuminatedwax · · Score: 5, Insightful

      No. There is no better way to handle it than making you do the work. Basically what I'm hearing is "but math is hard!" Math is not only a big part of CS, it is the foundation for CS, much in the way that physics is the foundation for engineering (but even moreso). Most of the math courses they make you take are most likely going to be directly applicable, as well. Discrete mathematics? Number theory? Linear algebra? Those are all used everyday in computer science. If you really want to do computer science, knowing how to prove things mathematically is going to help you as well.

      Put it this way: why are you in college? Are you there to learn how to make web pages, apps, or video games? You may be wasting your time. Actually, let me put it another way: if you aren't in a CS program because you like learning about computers for the sake of learning about computers, you're in the wrong place. Get out of that degree and apply yourself.

      --
      Did you ever notice that *nix doesn't even cover Linux?
    16. Re:If their CS programs are like ours... by leenks · · Score: 3, Insightful

      So you signed up for the wrong course. Computer Science, or Computing Science, is really Computing / Computational Mathematics. If you didn't research what was involved in computer science then you can't blame the university, only yourself.

      Computer science (and possibly some related disciplines) are dying because there are more and more dumbed down courses which people apply for instead because they are at universities that are more accesisble. People are generally lazy - the explosion in people asking homework questions on programming forums and IRC is testament to that - and if they think they can get away without doing something, generally they will.

      Hard computer science problems require lots of math, you can't escape that, whether it be graphics, artificial intelligence, classification, whatever. The more I work, the more I realise just how much math I really should know, and how little that I do. There are areas of using and designing for computers that don't require math - but these are mainly psychology related. Once you get down to what is going on under the hood, it is math.

      There is a reason that major employers are picky about the grades, courses and universities that they recruit from.

    17. Re:If their CS programs are like ours... by Rakishi · · Score: 1

      Well congratulations on figuring it out, and my apologies. I've seen a lot of people who go into CS or pick a school due to CS who have no idea what CS is.

      Anyway the answer isn't to dumb down CS but to create other majors or cs specialties that fill in the required role. I think my school has a few CS-related departments/programs:
      -Mathematical and Computational Science if you want more mathish applications (with less theory)
      -Symbolic Systems, I think its more computer-human interaction.

      In addition while CS does have some theory/math (not that many, I mean what math classes are you having to take?) they are quite often cs-specific classes (ie: not general math classes) plus there are 9 different specialties you can take with some being quite non-math/non-theoretical.

    18. Re:If their CS programs are like ours... by kfg · · Score: 5, Insightful

      Computer science does have a lot to do with math but is it reasonable to expect 24 hours of math when 36 hours gets you a degree in math?

      Well, let's see, "science" in this context is basically the process of using math to model physical phenomenon and "computing" is using physical phenomena to model math.

      So that would be a "Yes."

      Which also leaves me to wonder which part you didn't understand, the "computer" or the "science"? I'm dead serious.

      Oh, I don't blame you entirely, although one might think you had looked into a field and just what it entailed before signing up for it as a major, but the really troubling part is that you had prior education and career counseling. It was not done with any apparent degree of competence.

      The really, really troubling part is that I would be more surprised if it had been. Such is the state of things today.

      So, don't think I'm really picking on you or anything, I'm just having a bit of a sad giggle to myself in public while banging my head against the wall.

      So yes, math is a big part of CS but there has got to be better ways to handle it.

      No, there do not. Computer science is about math. Because that's what it is about. If you want to be a programmer or a web designer, study those. You seem to have finally found your path. It's merely a shame there was noone about competent enough to steer you toward it in the first place.

      And that's not your fault.

      KFG

    19. Re:If their CS programs are like ours... by pdbaby · · Score: 1

      Certainly "maths" is required (at the very least logic, set theory, lambda calculus, language theory), but I think the problem is that universities and professors expect too much maths from their CS applicants and not enough programming. (disclaimer: I despise formal methods. In the pyramid of programmers, the people who need formal methods are at the top designing reactor control programs)

      It sounds rediculous, but there are a large number of students graduating from Universities who don't really know how to program (or who can cobble together some code but treat a lot of things like magic). Even worse, I'm sure of the people who can, a number of them can only code Java or whatever language they're taught, so they bend problems to their solution.

      --
      Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
    20. Re:If their CS programs are like ours... by penix1 · · Score: 1

      Umm....You are confusing me with the guy who went into "web development"...

      I have my degrees both in math and CS. My argument is the death of CS at least in my University was the math requirement. I plodded on through the math BECAUSE it was a requirement for what I wanted. You still don't address the high attrition rate this program has. I find that telling...

      B.

      --
      This is a sig. This is only a sig. Had this been an actual sig you would have been informed where to tune for more sigs.
    21. 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.

    22. Re:If their CS programs are like ours... by wellingj · · Score: 1

      I had to take only enough math for Diferential and Integral calculus. Very low level (Math 182, where as my Graphics and Networking classes were 400 level, 500+ is graduate) I also had to take Matrix theory. I feel kinda defficient in my Computer Science Degree on the math side and I actualy wish I would have double majored or at least got a minor in math (got a minor in japanese instead). Right now I'm working on some Robotics Controll theory and wish I had put more time into my math education.
      So in my oppinion 3 'real' math classes wasn't enough at my school. Ofcourse I had descrete math (probability, statistics) within the computer science department but I don't feel that they contributed enough to my math understanding. Or maybe I should have studdied harder...who knows.

    23. 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.
    24. 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.

      --
      | - | - |
    25. Re:If their CS programs are like ours... by utopianfiat · · Score: 1

      Whatever, when I get my CS MS, I'll move to UK and enjoy a less saturated job market.

      --
      +5, Truth
    26. 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
    27. Re:If their CS programs are like ours... by coaxial · · Score: 3, Insightful

      then they might be failing because they are more math degrees than what I would consider "computer science". That is why I changed my major to web development here.

      Obviously you don't know what computer science is.

      I didn't want a math degree and that is exactly what I was getting.

      No. You didn't want computer science. You wanted a trade school that would teach you how to use an application.

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

      You are confusing me with the guy who went into "web development"...

      Yes. My attention is not focused here. I apologize.

      You still don't address the high attrition rate this program has.

      Sounds typical for first year calculus alone to me.

      Anyway, I did. The reason for the attrition rate is not the math requirement, the math requirement is a requierment of the field. The attrition rate is because the field is attracting people who do not want that. People who would not, say, sign up as physics majors because they didn't want to do something that math intensive signed up for computer science, something with equal math requirements. 'Cause computers are cool and pay well and science isn't and doesn't or something.

      The attrition rate wasn't too high. The signup rate was.

      I don't know what courses of study your Uni offered. Perhaps they did not understand the difference between studying Computer Science and studying Computer Programming. It happens. If they have a decent programming curriculum you would expect at least 90% of the computer students to sign up for that and only a handful of math geeks to sign up for computer science. If they mistook Computer Science for Computer Programming perhaps they did not have a Computer Programming curriculum at all. It happens.

      Or perhaps they mistook signing up a lot of people with success as a finacial institution. That happens too when the suits with calculators take control, be they of the accounting persuasion or the social engineering persuasion.

      In any case it certainly appears that you went to a Uni that cannot deal with elite students if they have to shut down a whole department just because it only keeps the elite. Back in the day, when they were run by teachers, Unis were proud to have elite departments that only graduated a handful of students. Not by flunking people out in droves, but by making sure only people who had a chance to graduate got in.

      Do they still teach physics there, or is that gone too?

      And computer science just doesn't need all that many people in the field as a specialty; especially as positions for them are declining.

      In any case the one place where blame is not is in requiring a study of math for the study of math. Science is about orginal research in the field, to expand theoretical knowledge and only people interested in such theoretical knowledge should apply.

      Engineering is the practical application of math if that's what people are interested in doing.

      KFG

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

      Actually, I would say that CS programmes need MORE math and theory classes.

      That, I'll agree with. I started my CS degree in 1992. After a lot of delay, real-life job, and life, I finished my degree in 2005. My professors reads like a list of old guard Computer Scientists. Hofstadter and Friedman left an indelible mark on me. Now, the Computer Science department has, for political reasons, merged with the Informatics department. The work now emphasizes boxed solutions and applying CS theory to science. I have mixed emotions about this. On the one hand, I am employed in biotech, mining data and building systems to convert mass spec data into a sell able product. As a professional, I have no problem applying a boxed solution as part of an overall solution. However, the "box" is not opaque to me. I understand exactly how it works and treat it as less code that I have to write. My fear is that in a few years, too many students will be graduated that do not know how to step through levels of abstraction and will simply buy "magic boxes" from whatever bass-ackward country that can provide the solution by leveraging and re-educating their work force. This leads directly to workers that cannot create. This looks a lot like the Eloi vs the Morlocks, with the Western World being the Eloi and the Morlocks eating us for lunch.

    30. Re:If their CS programs are like ours... by Brett+Buck · · Score: 3, Insightful

      I agree with your comment, but, I think this is a symptom of the tendency to treat College like a trade school. Computer science was a trendy major for a while when it looked like everyone might just be the next internet millionaire - not necessarily that a lot of people were really interested in computer science beyond having a career. Heck most people have no idea what computer science is.

              Brett

    31. Re:If their CS programs are like ours... by StikyPad · · Score: 1

      GPS receivers, etc. Try writing anything in those fields without a background in computer science...

      void main() {
      string loc = null;
      TomTom(loc);
      }

    32. 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?)

    33. Re:If their CS programs are like ours... by kestasjk · · Score: 1

      As someone taking a CS degree I can attest to this. We learn some interesting stuff (and lots of boring stuff), but no practical stuff. All the employment I've got has utilized knowledge and experience gained in my spare time.

      I go to uni and learn about Karnaugh maps, the way Linux 2.2 booted, how to write mind-numbingly simple Java programs, and red-black trees, etc, etc.
      In my spare time I learn how to make websites, design and implement large programs with objects, use .NET, administer servers, use SQL, etc, etc.

      I'm just glad I'm doing physics at the same time, or I'd probably have lost heart.

      --
      // MD_Update(&m,buf,j);
    34. Re:If their CS programs are like ours... by cavtroop · · Score: 1

      So, if your CS degree isn't preparing you for the real world, what value is it, unless you are going on to an advanced degree?

    35. Re:If their CS programs are like ours... by mikael · · Score: 1

      My undergraduate Computer Science course placed these areas are under the following titles:

      1) Computer Theory - The formal methods that study the mathematics of computability and computation (Turing machines, State Machines, Prolog/Lisp, Propositional/Temporal Logic)
      2) Hardware Engineering - The study of how computers themselves actually work -- the CPU, (everything from basic logic gates to instruction sequencing)
      3) Software Engineering - the OS, compilers, etc. (semaphores, monitors, threads, processes, scoreboards, scheduling, etc...)

      4) Project Planning - in the case of software, we're talking the analysis, design, and implementation (every type of graph, formal specifications, the contract process)
      5) Specialist Topics - A foundation upon which to study specific subfields, like AI or robotics, or data visualization, 3D graphics, etc.

      Mathematics and Statistics should also be included in this list.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
    36. Re:If their CS programs are like ours... by pete6677 · · Score: 2, Insightful

      There are hardly any employers out there that actually do computer science. Mostly they want someone to get their web front-end connected to their database. Not exactly CS work, but its the kind of programming that pays the bills. For real CS work, you'd pretty much have to stick to research institutions. For-profit corporations don't really do research anymore since it isn't profitable within the next quarter.

    37. Re:If their CS programs are like ours... by aprilsound · · Score: 2, Insightful

      You cannot teach someone to be a good programmer in college. Sure, a lot of the good CS students will code on their own, which will help, but a new graduate simply cannot know what he is doing yet until he has some full-time experience. It just doesn't work that way.

      You can impart the fundamentals, which is what a degree in computer science is supposed to be about. It is proof that you have an understanding of the basics and can apply them. I think the reason you are getting crap programmers out of college is because the focus has shifted *away* from the fundamentals. Too many colleges are hearing that the math is hard and attrition rates are high and thinking that means something is wrong with their programs.

      There isn't. Attrition should be high. If 30-40 freshmen enter a CS program at a university whose program is not extremely competitive, 20-30 just heard it was a good way to make a buck and/or like to play games, and of the 10-20 remaining, 3-5 of them just don't have what it takes it be good programmers. My graduating class had 7 or 8 students with a BSCS, and I know at least 2 of them were crap, just making it because of group projects. My freshmen class had at least 50 declared CS majors. It is supposed to be hard.

    38. Re:If their CS programs are like ours... by reset_button · · Score: 1

      I think they give you a good foundation and good breadth, but not enough depth (since I don't think its possible in that amount of courses). I think a CS degree is definitely a plus, but I would look for other things as well. For example, if I was looking for a programmer, the resumes that would stick out in my mind are those that have worked on (possibly open-source) projects in their spare time. Also, a list of relevant courses in the resumes could help (some students may take only one or two programming courses, some may takes some extra ones).

      But anyway, I believe that CS degrees alone are losing their value (or have already lost it).

    39. Re:If their CS programs are like ours... by JoeShmoe950 · · Score: 1

      Come on good man. At least use "int main()" if not the standard declaration. Include your and use your namespace std. Take some pride in your code.

    40. Re:If their CS programs are like ours... by cuncator · · Score: 1

      Actually, let me put it another way: if you aren't in a CS program because you like learning about computers for the sake of learning about computers, you're in the wrong place. Get out of that degree and apply yourself. Right here I think you may have hit the nail on the head as to the declining interest in CompSci. That is exactly what people are doing, they're getting out of that degree and applying themselves to something they enjoy or feel would serve them well in life. Why would someone stay in CS if all they hear about is being overworked, the possibility of your job being outsourced at any moment and the constant din about DRM, software patents, shady corporate policies, ad inf.?
    41. Re:If their CS programs are like ours... by cfriedel · · Score: 1

      I couldn't agree with this more. Mathematics is the foundation of computer science. Whether in a hardware, network, or software speciality, if you cannot comprehend advanced math, you are in serious trouble. From binary logic for gates to linear algebra for matrix computations to bitwise computations for calculating things like subnets, math is a fundamental part of really understanding how a computer, any computer, works. What the really sad part of this is, is that most professors do not understand this fundamental truth either. They sell their MIS "knowledge" as computer science and we get a generation of windows users who can script, but at the same time can't tell you what their programs are doing are doing inside the CPU. In fact, I would venture that most professors and modern CS graduates couldn't even tell you the main parts of a CPU (That being the control unit, the ALU, and the registers). The only things that really saves us is the fact that there is a contingent out there that is still curious enough to explore these subjects (including the associated math) on their own. These are the people who should be taking computer science tracks in college.

    42. Re:If their CS programs are like ours... by frostoftheblack · · Score: 1

      Still, the emphasis in cs courses is mostly on maths. No linguistics, no English or other languages. Why not mix this in with the cs courses? I would have chosen this anytime, but cs + economics, cs + math, cs + engineering? Well, then it's pure cs for me, thank you...

      I guess you didn't go to liberal arts school? I'm a CS major at one. Sometimes I resent the fact that I can only take a few technical courses my first year, but other times I'm satisfied with the fact that I will graduate with proficiency in foreign language, well-versed in global and historical trends, etc, philosophy, etc. I don't want to graduate knowing that I only know a limited set of techniques for web development, I want to graduate knowing that I know how to think and act in a technical sense that I can adapt to the changing technologies. Just my $0.02. I don't really have anything against a degree in web development, but not a 4-year degree.

      --
      Do not mark in this space. For official office use only.
    43. Re:If their CS programs are like ours... by kuperman · · Score: 1

      Computer science does have a lot to do with math but is it reasonable to expect 24 hours of math when 36 hours gets you a degree in math?
      My physics degree (many years ago) required sufficient math to qualify for a math degree. In a similar vein, friends that were getting physics degrees did harder math than I had to for my Mathematics degree. I had to do more breadth than they did (abstract algebra, group theory, etc.) where they focused on fewer areas like DiffEqs, multi-variable calculus, and matrix mathematics and went much further in applying them.

      It's pretty similar to the difference between a data structures course and writing a large project using multiple, complex data structures. The DS course might cover 10 different structures, but you'll only need 3 of them nested together for the complex structures in the employers project. CS deals with the breadth of topics, not just training you for a job.
    44. Re:If their CS programs are like ours... by Bobzibub · · Score: 3, Insightful

      Try switching languages and you'll see the CS majors (from good schools) shine.
      True, in my school the courses the languages that we wrote in *were* incidental. Above the 200 level there were no "X Language" course. I used to say that the profs announced that "you'll be writing your next assignment in [.. roll the dice..] Java." But most languages are similar and fall into families. Scheme is like Lisp. Assembly is like C. Java is like C# or C++.

      I've had input in hiring people. Personally, I'm not so concerned that someone has the stellar skills in the language of the day. Ability in C language impresses me. Clean code impresses me. Even for web stuff. Most programmers can hack things together on the fly and that impresses the brass; they don't see that this job is also a profession. The world doesn't need more hackers (classical sense of the word) because it causes never ending debugging and refactoring sessions. Nobody wants to spend their career fixing someone's crap. And the explanation that a product that they wanted was so rushed into place that it cannot become something slightly different without major work is painful for everyone. I know. So calculate your ROI over two or three years not just one.
      Not saying that someone w/o a CS degree cannot code well. I'm saying that it is more likely that someone with a CS degree will want to. Unless they're bored out of their skull and then they need to be assigned some other project/language/platform or design work for a challenge.

    45. Re:If their CS programs are like ours... by Axe · · Score: 4, Insightful

      The best preparation for the real world is an ability to learn and ability to think. Any actual trade skills learned in college will not be useful for too long. That is why experimental physics education is one of the best ones you can get for a very large variety of jobs. You learn how to learn.

      --
      <^>_<(ô ô)>_<^>
    46. Re:If their CS programs are like ours... by Mr.Scott88 · · Score: 1

      If one wants to learn computer programming, go to a community college. Having gone through a bachelor's degree recently, they teach the basics. Nothing advanced, no techniques, they do teach a little structured programming but not much. And previously I did go to a community college and did learn computer programming. However I leanred more on the job than in school. Many teachers are out of date. Many colleges teach what is either out of date or what is not in demand. Computer programming takes talent and a desire. In addition it takes a good teacher and time.

    47. Re:If their CS programs are like ours... by CptPicard · · Score: 1

      Actually, I would say that CS programmes need MORE math and theory classes. Sorry, but too many IT people are walking around with little to no understanding of fundamental data structures, calculus or logic. People think that I'm talking in circles at work, and its mainly b/c I have a physics background -- we solve problems with graphs, formulas and rigors that many IT "professionals" fail to grasp. If anything, I'm pursuing a CS masters so I can grasp even more of the high level basis of modern information technology. Its only in seeing the full theorem can you understand how it all fits.

      I've got a fresh CS Master's that I aimed at being on the theory side as that's what I went to university for, and I agree with your basic ideas. CS is mostly discrete mathematics, and you certainly need to know how to construe a mathematical proof even when operating with the more CS-specific entities such as Turing Machines and automata. The rest -- at least up to a classical algorithmics -- is graph theory, set theory and logic, with just a bit of number theory thrown in. However, most of CS math is trivial compared to what Physicists or Engineers need... for example, I've never used calculus, I took a bit of a chicken's way out with it with a "calc lite" class and I can't integrate to save my life beyond polynomials (derivatives are of course just manual labour, and do come in handy in gradient descents)... it didn't stop me. My impression is that you come across with more calculus in applied statistics-style special fields, where most of your computing is number crunching your equations and data anyway, instead of the more classic "write a fancy procedure to perform this in O(n log n) time". It tends to be the analysis and modelling of a specific problem domain where the tougher math comes in (linear algebra in graphics, for example -- transformations and projections are not computer-specific).

      What I'm trying to say that a fundamental working skillset in CS is still rather easy to come by with some work. Even in my algorithmics grad classes, there wasn't that much fancy and tough *math*, but more like fancy and interesting ways at looking at the constraints on a computability of a certain problem or class of problems, relationships between problems and how all sorts of features can be exploited to get to a quicker/better solution. It's more of a mathematical mindset you need to be in, than aiming at a math degree from the outset.

      I am slightly puzzled by your statement I quoted, though... yeah, most IT people, in particular the grunt coders, could use way more understanding of basic concepts such as which data structure to use and when, and why. But I am not really sure if putting them through math classes is going to help much. It's also hard to imagine trying to see how, say, a J2EE enterprise app "fits together" all the way from first principles, derived from a TM.. ;-) modern practical information technology is, in its applications, rather detached from pure CS, and CS simply is not helpful with dealing with what might be called "information systems"... the abstraction of CS is, in some ways, on a lower level, and even of a totally different thing.

      --
      I want to play Free Market with a drowning Libertarian.
    48. Re:If their CS programs are like ours... by WhoBeDaPlaya · · Score: 1

      Math is a horse that engineers and scientists have to ride. I can understand the predicament of those who get bucked off or kicked in the nuts, but not wanting to deal with math at all is kind of like a long distance runner who doesn't want to do calistanics.

    49. Re:If their CS programs are like ours... by abb3w · · Score: 1

      While I agree: there is the usability/interface design aspect, which isn't all that math based yet. Too many ties to CogSci.

      --
      //Information does not want to be free; it wants to breed.
    50. Re:If their CS programs are like ours... by scoot80 · · Score: 2

      Electrical engineers have the understanding of hardware, and software. As an electrical engineer, I do a crapload of hardware design, and probably even more software. Well, to be exact, firmware rather than anything else. And I guess thats probably what the guy above means. I dont know what its like now, but when i did uni, comp sci students programmed C/C++ on unix, while electrical enginners did assembly/C on microcontroller boards.

    51. Re:If their CS programs are like ours... by MetalPhalanx · · Score: 1

      That's exactly why I left university for college. Too much theory, not enough practical. If you can't apply the theory that you learn, what's the point in learning so much of it?

    52. Re:If their CS programs are like ours... by Splab · · Score: 1

      Com on good man. At least use preview and check your <> doesn't get eaten. Take some pride in your posts.

    53. Re:If their CS programs are like ours... by Y0tsuya · · Score: 1

      Well, don't whine later when Google won't hire you. They only want graduates from top engineering schools (think MIT, Stanford, Berkeley). Sit anybody with a desire to program in front of a PC and they can become a code monkey. However, you cannot learn theory just by hacking around your PC. The way Google and other companies see it, if they hire people who already know the theory, they can become productive programmers in time. But the opposite does not happen.

    54. Re:If their CS programs are like ours... by arivanov · · Score: 1

      Math is essential to understanding the fundamentals of CS. I would not hire a software developer if he does not have at least some understanding of the fundamental math involved. Example - a few months ago I had to attend a 3G course. So for an entire day I had some stupid w***er showing me some examples with numbers, adding 1s,2s,3s, etc. I was under some heavy lemsip influence so my brain was not exactly in phase, but at the end of the day it snapped in my head that the idiot spent the entire day showing vector calculus by example and the same stuff he has been explaining can be written as a one line equation on the board and explained in 2 minutes using math. 1 day with half of the course not fully grasping it versus 2 minutes with everyone grasping it provided that they know math.
      And while 3G is possibly the best example as its equations can be expressed in "lamer" first year university math, there are many others.
      Without the knowledge of math (and more specifically probability theory) there is no way to understand complex systems. I have watched people who do not know probability theory trying to deal with a financial transaction problem where one of the steps had a non-0 failure rate. It was not even funny. Same for queueing algorithms and router/internet software development, same for any work related to Quality of Service/Class of Service, same for...
      Frankly, if you cannot handle math you do not belong in CS. In fact, if you are replaced by someone from abroad who does I will not even commiserate.

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    55. Re:If their CS programs are like ours... by misanthrope101 · · Score: 1

      Sadly, not everyone has your aptitude. I certainly don't, which sucks because I am interested in the field. I just don't get it. I lasted a week or two into Calculus I and had to drop it. I was able to memorize a few processes, but I never understood them. At best people like me can use mathematical formulas to find an answer, but that isn't the same as understanding something.

    56. Re:If their CS programs are like ours... by fanatoly · · Score: 1

      Totally agree with most of KFGs comments One correction though: Demand for competent computer scientists is not dwindling. There is no concrete evidence of this at all.

    57. Re:If their CS programs are like ours... by QuantumG · · Score: 1

      To be fair, where can I go get a trade school education for computer programming? Oh, that's right, no-where.

      --
      How we know is more important than what we know.
    58. Re:If their CS programs are like ours... by barrkel · · Score: 2, Interesting

      I disagree with your basic assertion that these things are Mathematics, i.e. the "scary mathematics". I think that's only true if you consider that any discipline that uses any algorithms that are based on knowledge derived from mathematics, that that discipline *is* mathematics. By the same principles, baseball would famously be a mathematical discipline, since much equation solving must be performed to algorithmically catch a ball.

      It's simply not true! Take compilers and data structures. These are two fundamental things that it's hard to get a deep understanding of programming without. But compilers are easy to understand *intuitively*, without any recourse to mathematics - and I should know, I work on a compiler. Similarly, understanding data structures is a requirement of being a competent programmer. The basic techniques, such as lists, trees, graphs, basic sorting, searching and pattern matching, are all intuitively learnable in empirical, practical terms. For example, quicksort is easily understood once you've mastered recursion and how it splits problems into smaller, simpler problems, and similarly all sorts of tree, parsing and pattern-matching problems, and various combinatoric searching solutions build on nothing more than basic recursion.

      My point is that these things can easily be understood, applied and extended without any formal mathematics. I think that labeling these things as "mathematics" is only useful if you're intent on point-scoring in favour of deeper mathematical training.

      This is not to disparage mathematical training, of course. I just wanted to point out that your premises don't support your arguments.

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

      As Knuth said, Computer Science has nothing to do with physical computers. That technology changes all the time, people can't point to computers and say, 'oh, you do them'. Computer Science itself is a complex subject, in my area its heavy with theory.

      I only occasionally use computers when working, most of my time is spent on a whiteboard or walking, figuring algorithms out. Usually by the time I hit the computer, its just to instantiate an algorithm.

      I've been doing this for many years, and I wouldn't have a clue how to fix a computer if it broke, that's hardware, I don't care about that.

    60. Re:If their CS programs are like ours... by Cederic · · Score: 1

      the underlying theorems that glue all of IT together you can only get from a classical Computer Science or engineering education. Its alot easier for a CS, Physics or Math major to switch between a networking job and a programming job, b/c he knows all of the background stuff that makes it all work. An IT-certified pro may struggle a bit, only b/c he's not going to know the basics.

      Thing is, I wont employ someone to do a networking job _and_ a programming job. I'll employ a network engineer to do my networking and a software engineer to do my programming.

      You can teach any computer science student how to program. All the theorems, graphs and formulas on the planet wont teach them how to deliver a software project on time, to budget, under crippling resource constraints, with a constantly changing requirements set. That's what most programmers face, and that's why software engineers don't need computer science.

      Take a degree in something that interests you. Take a job in something you're good at and can enjoy. Don't worry about whether the two match.

    61. Re:If their CS programs are like ours... by r3m0t · · Score: 3, Insightful

      There's still optimisation at Google and other search engines. Speech recognition and synthesis at Microsoft. Handwriting recognition at Microsoft. Noise cancellation at Microsoft. Translation at Google.

      CG at Pixar, Disney, nVidia and ATI. (I'm not sure how much software-based work there is at the last two, though...)

      Plus all the technologies I mentioned are simultaneously being developed by many other companies!

    62. Re:If their CS programs are like ours... by Have+Brain+Will+Rent · · Score: 1

      What exactly do the business majors know "more about programming" than CS majors? What exactly does "know more about programming" even mean? How to program in a clear and concise style? How to comment? Memorizing the entire STL? Because all that is really sbout coding, not programming.

      And if you contract and EE to try to do what is taught in CS you will be disappointed because they won't know it. In fact a so-called "Software Engineer" would likely not know everything taught in a CS degree program. If you want someone to do the things taught in a CS degree program then you should hire someone with a CS degree.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    63. Re:If their CS programs are like ours... by Have+Brain+Will+Rent · · Score: 1

      Where I was an undergrad the CS was a bit lighter on math than that. IIRC by the time I had finished I had taken Calculus (differentiation with one and several variables), Calculus (integration), ODE's, PDE's, Linear Algebra, Linear Programming and Computational Theory. I somehow managed to avoid the stats course.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    64. Re:If their CS programs are like ours... by Have+Brain+Will+Rent · · Score: 1

      The funny thing is that when I started in physics they basically taught you the math they wanted you to know for a particular course within the physics course itself. The math dept courses that were required tended to be taken after they would have been most useful in physics. For example we did kinematics, E&M and optics but the examples were all simple cases where simple 1st and 2nd order equations or approximations would work... after that I took math course in calculus and DiffEQ's and pretty much everything I had learned in physics the year before dropped out as examples in the math courses. I remember it being a very frustrating experience to have wasted so much time on the "simpler" cases instead of learning the general solutions in the first place.

      I found pretty much the same thing when I compared my physics text book to the Feynman lectures. In theory they covered the same material but Feynman basically taught the general case from the get go (assuming that you already had the math you needed) and so covered much more ground much more quickly than the book used at my school.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    65. Re:If their CS programs are like ours... by thetartanavenger · · Score: 1

      This is so right!! I'm currently a CS student at Edinburgh UK, have been for four years now. I managed to fail first year twice, and dya know why? Cus of a mixture of two things. One they couldn't teach for shit and I lost interest!! And two, the material was sooooo boring!! I've been programming bits and pieces since I was twelve so I go to uni to be taught what an integer is, and how to use a for loop. Cmon!! Stupidity. Fair enough some people have not got that experience, and what I say to that is read a book and do the exercises. Take deital and deital for example, read the chapter do the exercises, that gives the fucking lecturers time to introduce us to cool interesting sides of programming instead of all this bollocks theory!! The maths in the course is also far too theoretical. I can start to see how it can be used in real life, but it's taken me a while because they give absolutely no examples whatsoever!! The teachers rattle away about the simplest of concepts in such a complicated manner that it just goes straight over your head. From the boredom I've now switched to a CS & EE joint degree, simply from the boredom of the CS. I need this CS degree because it will get me alot further than not having it, and put simply, they need to get the stick out of their ass and suddenly start teaching us stuff we need to know. And don't get me started on the goddamn lecturers they choose. Some 20 something phd student that didn't find programming entertaining enough to actually go out and do it, and instead chose to do a phd in maths. Yeah, a phd in maths is really going to be good at teaching me to program. And I quote my lecturer as of last week when we all had to point out the error in her code: "Oh I don't really do any programming, I just study maths." This from the woman teaching me how to program!! No thanks!!

      --
      Who need's speling and grammar?
    66. Re:If their CS programs are like ours... by putaro · · Score: 4, Insightful

      Well, as someone with 20 years experience as a software engineering on everything from desktops to supercomputers I will tell you that the math and theory is what separates the men from the boys when it comes to computers. I don't go back to CS theory that often - maybe once or twice a year. However, when I do need to pull that stuff out it is invaluable.

      When I was in college I often lamented the lack of practical experience I was getting. Today I'm glad that I got a solid grounding in the theory of CS rather than a lot of classes about how best to optimize PDP-11 assembly code. Technology and training goes obsolete. A solid theoretical base lets you keep up with the constant change in the computer industry and keep your knowledge of the technology current.

    67. Re:If their CS programs are like ours... by TheRaven64 · · Score: 4, Insightful
      Have you read the article? I started, and by half way thought, I was thinking 'this guy is an idiot, I'm glad he didn't teach me when I got my (first) Computer Science degree.' He was far too vocationally-focussed to be even thinking about teaching Computer Science, and I wondered what university would possibly even consider employing him. Then I got to the end of the article, and found it was 'De Monfort.'

      For Americans, and other aliens, I will now divert into some history. In the UK, we used to have two kinds of higher education establishments; Universities and polytechnics. Universities concentrated on academic courses, while polytechnics taught vocational courses. Then the Conservative government decided that it was discriminatory that not everyone got a 'university degree,' and so turned all of the polytechnics into universities. Now, instead of teaching good vocational courses, they teach bad academic ones. Worse, as appears to be the case with this guy, teach their old vocational course with an academic-sounding name. It sounds like he was teaching an IT course back in the polytechnic days and is now teaching the same course but calling it computer science.

      My course had about a 30-50% attrition rate[1], although most of those who dropped out did so very early on in the first year, once they had realised that they didn't want to be doing Computer Science at all; they wanted to be doing IT, or possibly Software Engineering.

      You can impart the fundamentals, which is what a degree in computer science is supposed to be about. Exactly right. The article said:

      What has changed is the need to know low-level programming or any programming at all. Who needs C when there's Ruby on Rails? A computer scientist doesn't need to know C or Ruby on Rails. A Computer Scientist needs to know about Unlimited Register Machines, Turing Machines and Lambda Calculus. A Computer Scientist needs to know about type theory and graph theory. Once you know these things, C and RoR are just syntax. Someone completing the first year of a Computer Science degree should be able to pick up a new language in a couple of days. Beyond that, being a good programmer is simply a matter of practice. Someone doing an IT degree will get a lot of practice in one or two languages, and so they will probably be a better programmer (in, say, Java or C#) than a fresh Computer Science graduate, but the Computer Science graduate will have the edge when you change the language that you need to use.


      [1] Note: unlike the American system, students in UK universities are enrolled on a particular degree scheme for 3-4 years. If they drop out, then they can not simply change their modules and get a different degree, they have to re-apply the next year to a different department.

      --
      I am TheRaven on Soylent News
    68. Re:If their CS programs are like ours... by TheRaven64 · · Score: 1

      Today I'm glad that I got a solid grounding in the theory of CS rather than a lot of classes about how best to optimize PDP-11 assembly code. Heh. I've had to hack on some code written by someone who really did know how to optimise PDP-11 assembly code. It's a real shame he was writing C code to run on x86 and PowerPC, or it might actually have been fast...
      --
      I am TheRaven on Soylent News
    69. Re:If their CS programs are like ours... by TheRaven64 · · Score: 1

      If you can't apply the theory that you learn, what's the point in learning so much of it? I have applied well over 70% of the theory I learned in my Computer Science degree to practical problems afterwards. If you can't apply the theory you learn to solving practical problems then you might need to consider that the problem is you, not your course.
      --
      I am TheRaven on Soylent News
    70. Re:If their CS programs are like ours... by ScottyH · · Score: 1

      I'm a cs student. At my school we do both.

    71. Re:If their CS programs are like ours... by Money+for+Nothin' · · Score: 1

      Where? I'm in Chicago, and while the data sets I've had to incorporate into my apps (to generate admittedly very simple stats) don't *quite* approach the "very large" size, they're close (they fit in memory, but only barely).

      I haven't been seeing anything on Chicago's Craigslist for AI developers though, and I've been checking daily or almost daily for several months. Are the jobs you're referring to out on the west coast (where I have been seeing jobs more-similar to those you describe, e.g. for Amazon in Seattle)?

    72. Re:If their CS programs are like ours... by LordSkippy · · Score: 1

      I've been programming professionally for over 10 years, and was a computer lab aide before that. I've had to deal with both CS students (of which I have a degree) and MIS (the business school's version of CS) since 1990 (so, 17 years). My experience states the exact opposite of yours.

      Very few of the business focused students, and those I've encountered in professional programming, can program worth their salt. The MIS students first course of action was to try to get a CS student to write their programs. The professional programmers with a MIS background would always take 2 to 3 times as long to write code, and it would be an act of kindness to even call it spaghetti code. Their code also tends to have a higher than average bug count, be filled with code that does do what they think it does, contain lots of kludges to get the results they want, and would basically need to be rewritten due to it being a the programming equivalent of a rat's nest.

      However, I think I know the reason for your point of view. Although I've meet very few MIS people that can really program, I've also meet very few CS people that understand, and are willing to except without lengthy disagreement, the needs of business people. And quite a few that will quite hostile to business needs as well. And it's probably dealing with the arguments of "Why do you even need that?", "Why do we need to do it that way?" or even worse "Why do you pointy haired bosses always ask for the dumbest, most worthless things?" that has tainted your perception. That is why you think they "can't apply the shit." Not because they can't, but because they don't understand why you want what you want. While the MIS guys do understand what you want, but I'll bet dollars to donuts that the code they provide it with is buggy worthless crap code.

      --
      My karma is in a nose dive
    73. Re:If their CS programs are like ours... by Dogtanian · · Score: 1

      unlike the American system, students in UK universities are enrolled on a particular degree scheme for 3-4 years. If they drop out, then they can not simply change their modules and get a different degree, they have to re-apply the next year to a different department. Careful; you talk about "UK universities", but I assume you were thinking of the typical course structure in England and Wales. Scottish universities are different in this respect.

      Scottish degree courses are typically four (instead of three) years long (*), featuring two foundation years where the student studies three different subjects, and the final two years dedicated to the chosen major subject.

      Certainly, you apply with the intention of doing a certain degree, but if you choose your foundation courses appropriately (and pass them), it is often possible to change your degree to something different for the final two years. I don't know how similar this is to the U.S. system.

      (*) Supposedly because the traditional Scottish Higher is a one-year course instead of the two-year English A-Level (though the Higher system offers more breadth, and nowadays the Advanced Higher is available to take things further).
      --
      "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
    74. Re:If their CS programs are like ours... by Dogtanian · · Score: 1

      I managed to fail first year twice, and dya know why? Cus of a mixture of two things. One they couldn't teach for shit and I lost interest!! And two, the material was sooooo boring!! A more likely guess; because you were too fucking immature and lazy.

      University isn't all fun and games; like life, some of it's boring and you just have to plough through it. If you were as smart as you seem to think you are, you should have been able to get through these bits with a bit of self-discipline and have plenty of time left over for hacking about and drinking.

      It's possible that the course wasn't that well taught; I doubt there's any Uni that doesn't have one or two poor and/or boring lecturers. But the University of Edinburgh is supposed to be one of the better Scottish unis for Computer Science (or was when I was looking into courses a few years back).

      Did you consider applying for direct entry to second year? You're so smart, I'm sure they'd have let you in. Assuming you had the qualifications and/or obvious talent; or- let me guess- you didn't work that hard at school and got mediocre qualifications because you considered the work beneath you. Or somesuch excuse...

      You thought university would be an excuse to intellectually self-indulge yourself and you're unhappy because it wasn't. Boo hoo.
      --
      "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
    75. Re:If their CS programs are like ours... by Dogtanian · · Score: 1

      Well, as someone with 20 years experience as a software engineering on everything from desktops to supercomputers I will tell you that the math and theory is what separates the men from the boys when it comes to computers. I don't go back to CS theory that often - maybe once or twice a year. However, when I do need to pull that stuff out it is invaluable. Yep; this is the problem with our self-taught "genius" friend and others like him. They don't like something and don't see the immediate relevance, so they can't be bothered doing it. They're arrogant and can't see the bigger picture, and blame their failure at university level on the course and not their own lack of discipline, or inability to pick up the study skills that would help them pass.

      They probably did quite well at school, until they had to start pushing themselves, spoiled by years of getting good marks without having to do too much. Actually, I've been there myself; I just wasn't childish enough to blame it all on the school/university...
      --
      "Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
    76. Re:If their CS programs are like ours... by CastrTroy · · Score: 1

      One they couldn't teach for shit and I lost interest!!
      So did everyone else fail too? I find this to be a real cop out. I've had some pretty bad teachers in my day, but I don't think i've ever once blamed the teacher for my failing to do well in a course. When it comes to the point that everyone fails, I think the university starts to look into why. The university heads know it doesn't look good when an entire class fails a course. I've taken lots of courses with bad professors, and non-interesting material, and bad professors who make it even less interesting. But I didn't let that stop me from at least getting a passing grade in the course. In the real world, once you start working, you won't always be working on interesting stuff. Taking boring classes with terrible profs is great preparation for real life.
      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    77. Re:If their CS programs are like ours... by squallbsr · · Score: 2, Insightful

      The biggest reason why a person with a Business degree will succeed better than one with a CS degree is that most software is written in a business context. It does you no good knowing your Calculus and Linear Algebra when you are developing an ERP system. Knowing about customer relationship management, marketing, business economics, accounting, etc offers more insight into this business software than the usual Computer Science courses.

      Of course those working at a lower level of software (OS, Kernel, CLib, etc) the Computer Science courses make more sense. An Electrical Engineer will offer a lot of knowledge and succeed better in the realm of hardware and software interfaces (drivers, etc) because it is what they learned in school.

      Bottom line, a Computer Science degree is almost entirely based on theory, which provides a great base to work from, these people missing crucial training that will help them succeed in the world of software. Personally I think that CS + Business (Higher Level Lang based, i.e. Java), or CS + EE (Lower level lang, i.e. ASM, C/C++, etc) hybrids would be much more useful. Both of these programs should be primarily focused on programming in the problems space with healthy doses of EE or Business classes to supplement and tie into the programming classes.

      --
      Sleep: A completely inadequate substitution for Caffeine.
    78. Re:If their CS programs are like ours... by udippel · · Score: 1

      I started, and by half way thought, I was thinking 'this guy is an idiot

      Mod someone this chap up. And give him another mod point for actually reading the article.
      The good prof from Montfort is either a troll, drunk or an idiot.
      You can't possibly compare C to Ruby on Rails. If you have a sense of what you say. He probably hasn't. I rather guess he gave in a long time ago to 'soften' the subject, until a better sales-person creeps out of Montfort; leaving a nice sum of tution fee behind.
      Teaching CS myself, I consider this mixture of a bit of everything, and pleasing the feel-good, of some drap&drop, some multimedia and a grain of business-mindedness a great cheat on the 'customer'.
      To me - and that's what I work for - CS is a lot of thinking abilities; understanding concepts of networking and protocols, as well as the underpinnings of multimedia.
      Neil McBride, the author [not eventually a twin brother of that other McBride ?] starts his epos with dwindling enrolment. Saying, he's scared about his position and salary, and asks: How can we get more students into the subject ? Not by just pleasing them, I'm afraid.

      But the students are not that gullible.

      , so he says. And then:

      Now vastly complex applications for businesses, for science and for leisure can be developed using sophisticated high-level tools and components. Virtual robots - Zooks - can be created by eight-year olds without needing programming, logic or discrete mathematics skills. Web designers build complex business sites, graphic designers build animations, accountants assemble business systems without needing to go object-oriented.

      Kind of contradictory, ain't it !?
      His first sentence already would make me deregister my child from the good prof. He is good in patching buzzwords together; buzzwords he obviously doesn't understand himself. Then he says, an eight-year-old could do that. What does that imply ? He wants to undercut those kids ??
      And I saw a business system 'assembled' (I wonder where he got this term from ??) by an accountant a few months back. It truely didn't 'go object-oriented'. Actually, the system didn't go anywhere.

      At times I really wonder how low those editors go to fill the void. - Oh, I forgot, just reading Slashdot !

    79. Re:If their CS programs are like ours... by computational+super · · Score: 1
      I'd also like to hear what kind of work you're doing that business majors would grasp it easier than CS majors.

      Try not to take the trolls too seriously. Several variants of the "studying computer science makes you dumber - and I know because I'm teh big bo$$" appear underneath every slashdot article whose summary contains the letters "CS". Undoubtedly, this guy was a business major - if you think CS majors are concerned, you should be aware that business majors are terrified. Computer Science, relevant to the practice of computer programming or not, is an extremely difficult degree to attain, whereas business degrees are fairly straightforward to complete (somewhere in between, say, an English Lit or a Communications degree and a Computer Science degree). It's fairly obvious, to most everybody, that somebody who can complete a CS degree can pick up the basics of economics and accounting (which is essentially what a "business degree" is) far easir than a business school drone can pick up (even the) basics of software design. The only reason we haven't started replacing them in droves (yet) is because, at the moment, our current jobs appear far more interesting than theirs. This guy's rant is designed to scare potential CS majors away to business school, to make sure that enough people drink the kool-aid to keep this guy in place until retirement.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    80. Re:If their CS programs are like ours... by Cornflake917 · · Score: 1

      You know, I hear the "you learn how to learn" line all the time when people are talking about college education. It makes sense when given little thought, but really, when do you not learn how to learn? If a college would just focus on teaching you how to be an expert programmer on as many programming languages they could jam down your throat, wouldn't you still learn the processes of learning how to program?

      You can say what you will about the benefits of teaching theory over application, but I just think that arguement is bunk.

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

      This is the TRUTH. In fact I did exactly this. I thought I would try out "business" for something new and hit on a huge gravy train.

      I went from being an average/slightly above average software developer to a superstar business programmer/analyst.

      Svery simple concepts like cron and CVS were unheard of, and by scheduling jobs and automatically sending out reports/trigger based warnings etc.. I'm able to easily appear like I'm doing the work of several other business analysts that still manually enter numbers into Excel reports (OMG!). I try teaching others here, but many people on the business side really just don't get it.

      The biggest problem I have had so far is getting IT to understand that I know what the hell I'm doing and should have access to proper tools (e.g. SAS, SQL+, a UNIX box so I can schedule, and allowing me to run scripts that I've written on my own computer).

      It may not be as challenging as pure software development, but it sure pays a lot more.

      Learning the business is very easy and can be done by paying careful attention in meetings for the first few months on the job. I have great people skills and am very social, so I found this very easy.

    82. Re:If their CS programs are like ours... by sycodon · · Score: 1

      I have been I the computer field since 1986 and my experience is exactly the opposite of yours

      My first job (with my MIS degree) was at an aerospace company filled with computer scientists. Of course being the New Guy I started out by supporting the existing systems written by the Computer Scientists.

      I found that while their code was exceptionally efficient and in most cases elegant, it was totally unsupportable without extensive input from them. No comments, variables named with just numbers and consonants, and even Goto statements. Keep in mind, this was the mid-eighties and the MIS degree was a very new degree option (at least in the states) before that, everyone was a CS major.

      At my school a large part of the MIS degree was emphasis on writing flexible and maintainable code. People come and go and business requirements change.
      CS people seemed more focused on writing code that was small, tight, and fast. Nice if you are writing code to simulate nuclear explosions, sucks if you are writing an inventory system supporting multiple business and manufacturing divisions.

      Is an MIS degree a "vocational" degree? Perhaps, but it is also entails a great deal of analysis. It also involves a great deal of theory.

      From another post: A Computer Scientist needs to know about Unlimited Register Machines, Turing Machines and Lambda Calculus. A Computer Scientist needs to know about type theory and graph theory.

      A business programmer/analyst needs to know about accounting practices and inventory systems and how to structure batch systems with run-control procedures that have the ability to recover from errors, crashes, restarts, etc.

      While a CS major could write a flight control system that absolutely must work or people can die, a business programmer can write a payroll system that absolutely has to work also.

      Just try explaining to a 50,000 employee company why their checks didn't get cut or deposited. Then has a discussion with the unions about covering the costs of overdrafts. Then have a discussion with your VP of info systems, VP of accounting, and the CIO, etc.

      --
      When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    83. Re:If their CS programs are like ours... by computational+super · · Score: 1
      probably dealing with the arguments of "Why do you even need that?"

      Which are perfectly legitimate questions to be asking (in fact, I'd go so far as to say that asking those questions is the reason we ought to be on the payroll in the first place). I rarely encounter requests for features along the lines of, "We need to crebit the general ledger by $5.00 every time somebody incurs a transaction fee" - the need for that is obvious, and I wouldn't argue about that. The requests for "features" I encounter tend to be more along the lines of, "Can we create a table in our Oracle database to store all of the word documents that accounting keeps the general ledger on?" I guess you'd just reflexively say "yes" to avoid being a "roadblock" to the "business needs" - after all, you don't want to refuse to "except (sic) without lengthy disagreement the 'needs' of the business people."

      --
      Proud neuron in the Slashdot hivemind since 2002.
    84. Re:If their CS programs are like ours... by jafac · · Score: 1

      My BFA degree (many years ago) required sufficient Art History to qualify for an Art History degree. The only missing element was a requirement for an additional year of foreign language study.

      --

      These are my friends, See how they glisten. See this one shine, how he smiles in the light.
    85. Re:If their CS programs are like ours... by RoloDMonkey · · Score: 1

      I'm starting to get a little sick of comments like '"web development" (heh)'. Would you laugh, if he had said "software development" or "game programming"? Dismissing a web developer is like saying, "Oh, he wants to be a carpenter." Sure, he could end up being the day laborer who is putting together pre-fabs with a nail gun, but he could also become the guy that hand-crafts beautiful tiled mahogany tables.

      A web developer could easily use any of the mathematics you describe if he is streaming media, load balancing servers, serving secure pages, or optimizing databases. On the other hand, don't dismiss someone who is just creating pretty pages. Graphics can be done badly with "pre-fab" parts, but it is an art form to do them correctly for the web.

      Personally, I frequently, and proudly, describe myself as a developer. For me, it simply means that I work with several facets of computers: graphic design, programming, databases, user interfaces, etc. It should not immediately imply that I do not understand computer science.

      --
      Long live the Speaker Bracelet
      Rolo D. Monkey
    86. Re:If their CS programs are like ours... by Spudds · · Score: 1

      Assembly is like C

      WTF???
      Based on that statement, I wouldn't hire you, nor would I work for you if your job involved anything more technical than "Do this project".

      Please tell me exactly where the similarities between these two programs lie (besides what they actually DO):

      ------ Assembly
      . DATA
      string DB "Hello",13,10,"$"
      . CODE
        mov dx, OFFSET string ;Load location of string
        mov ah, 09h ;call string display function
        int 21h
        mov ax, 4C00h ; call terminate function
        int 21h

      ------ C
      #include
      int main(void){
          printf("Hello\n");
          return 0;
      }

      Although I agree with the gist of your post, it scares me how some people lump things together that aren't even close, like pot and crack or assembly and C.

      Not saying that someone w/o a CS degree cannot code well. I'm saying that it is more likely that someone with a CS degree will want to.

      Actually, in my experience, it's the total opposite. Nearly everyone I've met/hired/worked with over the years that has gone to school for computers turn out to be totally incompetent. From their total lack of understanding of how programming works to complete sytems built on idiotic quick hacks tied together with shoe strings of copy-and-paste code from google, CS majors tend to be like paper MCSE's of the .com boom; They look good on paper but have no clue what they're doing typically because they don't even care about technology, they're just here to make a quick buck.

      My current employer actually hired me because I don't have a CS degree. I'm completely self taught in technology/programming which directly states that I love it enough to learn it and do it during my free time. I actually care about my work and about technology in general.

    87. Re:If their CS programs are like ours... by Cappadonna · · Score: 1

      Take a degree in something that interests you. Take a job in something you're good at and can enjoy. Don't worry about whether the two match.

      On that we agree. I told my kid brother that he could still major in psych, while getting a few internships as a journalist if he wants to be film and video game reviewer.

    88. Re:If their CS programs are like ours... by Analog+Squirrel · · Score: 1

      Yes, I've been of this opinion for... hmmm... I guess it's getting close to a decade now. I started a CS master program in '97-'98 and quickly grew tired of the people who wanted their degree so they could get that kick-ass programming job. Programming? Go get a two-year programming degree at the local community college. You'll spend less time, less money, and be making more soon than if you have the bachelor degree. Of course, the four-year degree is appropriate for someone who is into software engineering (design and architecture) that simple programming.

      --
      I'd rather be flying
    89. Re:If their CS programs are like ours... by xaxa · · Score: 1

      My Computing course is in the Faculty of Engineering, and I'll get a Masters of Engineering degree at the end. It's also ranked the best Computer Science course in Europe, and discussions like this one remind me why this is the case: we do a lot of theory, formal logics and so on, loads of software design (design patters etc, working methods etc [whatever they're called... um...]), actual programming (I'm surprised how little some CS student friends from other Universities do), plus there's some compulsory courses in the Business School -- they aren't as interesting as the computing courses, but I'm assuming there's a very good reason for them being about the only compulsory courses I have this year! What is a shame is seeing over half my class going to work in investment banks in London... the starting salary is double that of an IT company though. I have a 6-month industrial placement starting in April and I've got a job with a big electronics company, earning less than half what the bankers on similar placements will earn! I'm hoping the bankers will all be really bored for 6 months... Getting back to the point, the electrical and electronic engineers can take loads of courses in the computing department if they wish. It's Imperial College if anyone's wondering.

    90. Re:If their CS programs are like ours... by sycodon · · Score: 1

      I guess you'd just reflexively say "yes" to avoid being a "roadblock" to the "business needs" - after all, you don't want to refuse to "except (sic) without lengthy disagreement the 'needs' of the business people.

      Ahem....

      "business needs" are the driving force behind the vast majority of programming. The "needs" of the business people are the reason most programmers exist. Indeed, other than to calculate shell trajectories, these "needs" are why computers were created. Can we say "International Business Machines"?

      Yes, "business people" can be a little pigheaded and unreasonable sometimes, but they are the one's paying the bills and endowing Chairs at the universities.

      If Michael Dell said we need to store word documents in the Oracle database so that the sales people have ready access to their notes and which can be mined in the future for potential leads, then you can bet that the computer scientists at Oracle would happily figure out a way to make it happen.

      --
      When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    91. Re:If their CS programs are like ours... by MattyCobb · · Score: 1

      I didn't intend my post to sound like "well they should change computer science to save it". I can see how people would read it that way and that was my fault. Looking at what all people posted it is obvious that I didn't explain what I was trying to say in enough detail. What I intended to say with my post was maybe it is not dying out, maybe the people who didn't really want that degree just aren't applying anymore and we are now seeing the real numbers. I was using myself as an example. I wasn't really ready for college I don't guess. Why UT? Because my friends were going there and I wouldn't have to leave my hometown. Why computer science? Because I had no idea what I wanted to do, but I always loved programming so why not comp sci? I wouldn't call my choices smart. Because of my switch in majors I am going to graduate a year later than I would have. I was just saying perhaps more people like myself who don't want that degree aren't going for it anymore - that the degree was not right for me, not that the program itself should change.

      --

      Matt
      You have 1 Moderator Point! Use it or lose it! Is that a threat? -vapid
    92. Re:If their CS programs are like ours... by w1ll0w · · Score: 1

      I know in the games industry people out of college are essentially useless for years. The problem we are seeing is that they know java and math and that's about it. A friend of mine finished his cs degree a few years back, he was programming games while doing this, he was amazed at how little the students knew. They couldn't apply anything they learned in college to real world projects. Most didn't even know c. I'm not speaking for all the cs majors out there but it seems the schools have gone soft, probably because too many complained that the courses were too hard. I know some companies that would rather higher a high school drop out who's hacked together a couple of games than a top cs student.

    93. Re:If their CS programs are like ours... by Kelbear · · Score: 1

      I'd have to agree. If math being "too hard" is causing a high wash-out rate, I don't think reducing expectations is an appropriate response. As the parent noted, there's a minimum level of competency required to be successful in this field that can't be filtered away. The school should grade accordingly or else students will just stay and finish a CS degree only to find themselves noncompetitive in that field. This way a student can evaluate their grade; they can work harder to become competitive, or switch out to another major.

      I'll admit it, I'm among the washouts. I changed majors into Economics because I'm not good enough to be a programmer. I packed in the Economics degree requirements into 2 years and graduated on time. My college would have done me a disservice by coddling me until I had made it into a programming job only to find out I wasn't up to snuff.

      Alternative methods to create quality graduates would be welcome though. The assumption that I'm making here is that aptitude for math is indeed a necessary requirement to perform well. If it is possible to implement an integrated approach to the math requirements, I think that'd be fine too. Teach the math concepts with a specific bent towards programming. Of course this would require a sufficient supply of qualified teachers, which is another problem as well. Not just people who are proficient in the field, but true teachers who are also proficient at education and communication.

    94. Re:If their CS programs are like ours... by Just+Some+Guy · · Score: 1

      Note: unlike the American system, students in UK universities are enrolled on a particular degree scheme for 3-4 years. If they drop out, then they can not simply change their modules and get a different degree, they have to re-apply the next year to a different department.

      That's my experience in the US, too. I had to get permission from the Computer Science department head to choose that major. If I'd wanted to switch, then I would have had to get permission from the new department head, and only the classes directly related to the new major would have counted toward earning that degree. Bouncing between CompSci and Math would have been almost trivially easy. Switch from CompSci to something easier like Computer Information Systems (basically, IT) would have meant starting over.

      --
      Dewey, what part of this looks like authorities should be involved?
    95. Re:If their CS programs are like ours... by John+Courtland · · Score: 1

      A bit OT in regards to the "web design major" comment -- I used to make fun of web programmers, a lot... But now that I am one (thank you, karma), I realize it's actually a lot harder than I used to think. Obviously, just setting up a stupid blog or whatever is easy, but running full a ecommerce engine with all sorts of data mining and search capabilities and all the bells and whistles along with it... it's definitely on par with writing an embedded driver that has to fit in 1k of RAM.

      --
      Slashdot is proof that Sturgeon's Law applies to mankind.
    96. Re:If their CS programs are like ours... by illuminatedwax · · Score: 1

      oops, that should be "computing"

      --
      Did you ever notice that *nix doesn't even cover Linux?
    97. Re:If their CS programs are like ours... by rrohbeck · · Score: 1

      students that have business degrees and a background in computers really know more about programming than CS majors. Rightfully so. If you look for a programmer, you don't necessarily want a CS major. I remember a few of my fellow students who were really good with automatons and formal languages (shudder) or computability theory but not really with programming. Not every ME has to be good at fixing cars.
    98. Re:If their CS programs are like ours... by wmspringer · · Score: 1

      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.

      And here I thought the whole point of CS was to avoid learning anything useful....
      But seriously, I'm studying CS because I WANT to do theory. If I wanted to be a programmer, I'd have signed up for CIS or something. But I'm not interested in being able to write a program as quickly as possible; I'm interested in being able to find the best possible solution to a given problem.

    99. Re:If their CS programs are like ours... by wmspringer · · Score: 1

      To be fair, where can I go get a trade school education for computer programming?

      Community college.

    100. Re:If their CS programs are like ours... by anomalous+cohort · · Score: 1

      I have all kinds of kids that are applying for jobs that know tons of theory, but can't apply

      If they can't apply the theory, then they don't know the theory.

    101. Re:If their CS programs are like ours... by Jerim · · Score: 1

      I think the writer of that article is arguing the wrong point. He wants to turn CS programs into IT programs; instead he should just be advocating IT. I would have to agree with him. I am a junior in CS. I picked CS because that is the top of the heap when studying computers. I like the things I have learned. A little programming, a little networking, some electives, a good bit of math etc. CS and IT address two separate problems, and should always be kept separate.

      Now, I know that after I get out I will eventually learn enough to leap over the IT guys. But I have to admit, I don't see how a CS graduate can match up with an IT graduate. Where as I learn theory and have been taught to teach myself, the IT graduate has learned to setup various servers, to program in various languages, and maybe even a good bit about Cisco routers. Most positions want someone who can walk in day one and start working, not someone who takes a week to get caught up.

      You can argue the esoteric virtues of CS all day long. However, there are plenty of days I wonder if I had been better off in IT. Yes, CS is a grander/nobler enterprise, but academia doesn't translate to a paying job. No, a person shouldn't follow the money but you certainly want to make sure that you are going to make a livable wage. You can love many things in life, but none of them will pay the bills. You should never be looking to get rich, but certainly enough to pay rent.

      I agree that an understanding of math is useful, but it is certainly not essential to most of the programming/networking out there. True, it make make the program more efficient. However, it just doesn't matter to most people if that program executes nth nanoseconds faster or if it traverses the array nth nanoseconds faster. I know many successful programmers, none of whom use mathematical principles to program. Your average, everday, 9-5, corporate IT person only needs to know how to fix the problem, quickly and somewhat efficient. You are going to be judged in the marketplace by what you can do, not what you know.

      I am sticking with CS for now, because I personally feel that in the long run it will make me a better programmer. Most of the IT stuff I can pick up on my own, but I don't believe I can pick up CS stuff on my own. That doesn't make CS inherently better and I am not sure I would steer someone toward a CS degree. Even after I graduate, I still have to go back and learn all the stuff the IT guys learned. IT teaches you enough to get a good paying, just not a great paying job. CS will get you the great paying job, but before that, you have to go back and learn all the IT stuff.

    102. Re:If their CS programs are like ours... by SocietyoftheFist · · Score: 1

      Math classes??? What do they think this is? A science degree? Oh you want a Info Systems degree... that is in the business building.

    103. Re:If their CS programs are like ours... by pestilence669 · · Score: 1
      A computer scientist doesn't need to know C or Ruby on Rails. A Computer Scientist needs to know about Unlimited Register Machines..."

      I completely agree, however, isn't learning at least one language necessary? It's very hard to learn these theories without applying them repetitively. Solving graph theory problems with Scheme may not be ideal, but it's good enough, IMO. Even if you're not going into software, some programming is very helpful.

      I think higher level languages are great in education because they offer training wheels (memory management, hardware abstraction, etc.), but it really doesn't matter much. For some reason, people place too much emphasis on the tools rather than the concepts. A proper CS educated individual should be multi-lingual by nature. Like you said, C and RoR are just syntax.

    104. Re:If their CS programs are like ours... by Grishnakh · · Score: 1

      What kind of stupid comment is this?

      Try DeVry, ITT Tech, etc. They've had commercials on TV for probably two decades now advertising themselves.

    105. Re:If their CS programs are like ours... by QuantumG · · Score: 1

      Did you think that maybe, just maybe, I DON'T LIVE IN YOUR COUNTRY! and therefore don't see the same ads as you? Fuckin' stupid arrogant americans.

      --
      How we know is more important than what we know.
    106. Re:If their CS programs are like ours... by Grishnakh · · Score: 1

      You may not see the same ads, but that doesn't make your comment any less stupid. You asked where the trade schools for programming were, after all. You might not have DeVry and ITT Tech in your country, but surely you have the equivalent of our community colleges and other trade schools.

    107. Re:If their CS programs are like ours... by PastaLover · · Score: 1

      Then you probably don't live in western europe either. There's plenty of trade school-like IT educations that I know of around here and in several other countries that I've heard of (including the UK and France).

    108. Re:If their CS programs are like ours... by Haeleth · · Score: 1

      really, when do you not learn how to learn? If a college would just focus on teaching you how to be an expert programmer on as many programming languages they could jam down your throat, wouldn't you still learn the processes of learning how to program?
      No, not really.

      What you're missing is that there's a difference between learning how to learn, and merely learning how to be trained.

      A course such as you propose would be useless. It would effectively teach students that programming languages are difficult things that are all entirely different and all require special training before they can be used. A student coming out of that course, faced with an unknown programming language, would say "sorry, I don't know this language. I need training before I can do this job."

      Computer science, on the other hand, teaches students about what goes on behind the scenes. A student coming out of an abstract and mathematical computer science course understands that programming languages are just layers of abstraction over maths. A smart computer scientist, faced with an unknown programming language, merely says "OK, give me an hour or two to read up on the language and I'll get right on with it."

      The former has been taught to be trained. The latter has been taught to learn. Which do you think is more valuable?
    109. Re:If their CS programs are like ours... by illuminatedwax · · Score: 1

      They both have their benefits. It just depends on what kind of person you are. Are you a Wesley or a Scotty? Obi-wan Kenobi or Han Solo?

      Let me put it another way. Think of CS and IT as Google and MySpace: Google writes a brilliant search algorithm, MySpace slaps together some ColdFusion. Google routinely pushes the envelope of web technology, making stuff like AJAX and web apps look good. Myspace poorly copies other online services.

      They both make billions of dollars.

      --
      Did you ever notice that *nix doesn't even cover Linux?
    110. Re:If their CS programs are like ours... by sethstorm · · Score: 1

      The attrition rate wasn't too high. The signup rate was.
      How is that a problem? Adjusting course structure to weed out people is - it belies the difficulty that really exists.

      In any case it certainly appears that you went to a Uni that cannot deal with elite students if they have to shut down a whole department just because it only keeps the elite. Back in the day, when they were run by teachers, Unis were proud to have elite departments that only graduated a handful of students. Not by flunking people out in droves, but by making sure only people who had a chance to graduate got in.
      That is the problem- limiting access. If you want that, a blueblood-run Ivy will be happy to serve you(or the other way around?). However, you will find yourself increasingly distrusted and eventually find that "prestige built schools" are more of a liability than an asset.

      Guess it's a problem when you have overly selectionist policy towards education and not one that allows citizens of any class receive the best education possible.

      --
      Twitter supports and protects racists - by smearing their critics with the "Hate Speech" label.
    111. Re:If their CS programs are like ours... by ozone_sniffer · · Score: 1

      There's another reason why a person with a businness degree will succeed better than one with a CS degree in a businness environment. Code in comercial applications sucks, for the most part. So, any code writing person with a Businness degree is able to do it. If you don't have good and solid understanding of semantics, algorithm complexity, data structures and the underlying computing model(s), you are a code writing person, no matter how good you claim you are in your pet language. But you are no programmer. I'm not saying that in order to be a programmer you must have written a compiler. But you really should understand how one would be built, and be able to do so, if it be the case.

  2. good by Lord+Ender · · Score: 3, Insightful

    Computer Science needs to die (well, shrink a lot). Industry does not need computer scientists. It needs software engineers, human interface engineers, and programmers.

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
    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:good by megaditto · · Score: 1

      Well, the Stock Market-related activites are great, but if everybody becomes a businessman, who's going to work?

      --
      Obama likes poor people so much, he wants to make more of them.
    3. Re:good by neax · · Score: 1

      I think that this line is blurred. There is not a clear (perceived) distinction between computer science and software engineering or even web design. Younger generations tend to roll the whole lot all into one, without understanding the distinctions. However this is changing. The lack of people taking up computer science, is because people are starting to understand, for example, that they want to work in web design and they realize that they do not need a computer science degree to do this. In the past they may have got a CS degree

      --
      Hard work is just an accumulation of the easy things that you didn't do when you should have.
    4. Re:good by mackyrae · · Score: 1

      Agreed. There's no software engineering degree at my school that I'm aware of, and I don't like math, so a pure CS degree wasn't what I wanted. If I knew I was going into CS when I started, I would've stayed home and applied to CMU, but I'm doing International Affairs in DC instead. Since I want programming, not math, I'm doing CS as a second major. That means less (as in, take calc and discrete math and you're done) math, a lot of software and OS stuff, and some elective 100-level CS classes. That's what I like. If you want to be a programmer, there should be a programming or software engineering degree. If you want to design video cards, there should be a computer circuitry line of study. That kind of thing. The same courses don't prepare you for both of those.

      --
      look! it's a bird, it's a plane, it's....a girl? yes, a girl browsing Slashdot on Linux
    5. Re:good by emilng · · Score: 1

      There is a lack of distinction between cs, software engineering and web design, but I don't think it's an issue with just younger generations. Most people who aren't in any of those professions and unfortunately even some who are, have a hard time telling them apart. One of the issues is even distinguishing web design from web development and even then the lines between web and traditional application development are blurring. I'm a Flash programmer and there is a huge difference between a designer and developer. Like you mentioned I'm one of the people who went into programming with an art degree, but as time goes on, I realize how helpful it would have been for me to have a degree in software engineering. I don't think a cs degree would have been as helpful, but I've been learning discrete math in my own time because I know some of it is still useful.

    6. Re:good by PianoComp81 · · Score: 2, Insightful

      That sounds like Georgia Tech. My schooling there was about half CS-foundation work (math, OS fundamentals, CS theory (which is also math)), while the other half was about software engineering. The whole point was that you take the fundamentals and apply them in real-world situations. You can't teach good software engineering without the students understanding the CS fundamentals. Likewise, you can't have just the CS fundamentals because then there are very few jobs. The two pieces complement each other. It's worked out great for me - there's a lot of software engineering work I need to do to get the project done, but without understanding the fundamentals of CS, I wouldn't be able to do half of what's needed on my current project.

    7. Re:good by geezer+nerd · · Score: 1
      I think this comment is exactly right. From a day-to-day perspective, the specialized topics of computer science just never come into play anymore. I was/am in the "software" business for more than 30 years, and even taught computer science in a large American university. Out in the workaday world, the things that people do in the course of building software applications just don't include most of the topics of computer science.

      In the old days, when I started out, most everything that people created in software was brand new, and the hardware inadequate, so it was always a challenge to analyze and optimize and determine just the right way to accomplish what you needed to do. And there was little ability to share or reuse. In those days, we all had to do our math to get the job done.

      Today, for most situations, there are existing, sharable solutions that are good enough to do the job available for the taking and reuse. Hardware has become so fast, capable, and cheap that much optimization and tuning is not necessary. Don't get me wrong, I think it is great, and the power of the individual to create interesting and useful applications has been magnified orders of magnitude.

      However, I think there are still issues of understanding what the right training and education is needed for what most people want to do. Many probably take CS when they really want to take programming, or web design. Frankly, in my recent years, the young programmers I have known have very often not had university training at all. They look at computer technology and web development and such as "a really easy way to make lots of money -- why do I need to go to university?".

    8. Re:good by Shados · · Score: 1

      You're right, to some extent... _some_ concepts of software engineerings require the fundamentals, I suppose...but the majority of it doesn't require it. Software architecture, for example, has no "CS" in it whatsoever, and its probably the most important part....

    9. Re:good by tallniel · · Score: 1

      Could you expand on this? What elements of a CS curriculum do you find irrelevant to software engineering? What elements do you think are missing? There is very little I learned in my CS degree that I have found to be useless, even if it wasn't immediately obvious how to apply it.

    10. Re:good by gammoth · · Score: 1

      Perplexing. How can you suggest that software engineering, human interface engineering, and programming aren't part of computer science? Are you confusing training with education? Because the same could be said of lawyers and engineers. (Probably not doctors only because the systems are so complex that years of study is required.)

      Just to clarify my position, we need more highly educated people, not less.

    11. Re:good by Darth_Burrito · · Score: 1

      Fairly useless to me: Non deterministic turing machines / provability / halting, low level hardware stuff, programming in assembler, axiomatic semantics, much of the math.

      Missing: Experience working on real world style projects, interface design, usability, a focus on testing and qa, exposure to programming tools and frameworks, good database coursework.

      Good: Anything with hands on programming/team work/projects, data structures & algorithms, various special interest electives like networking/ai/3d graphics, operating systems.

      This baffles me to this day, but in my undergrad curriculum (97-01), I don't think I ever made a single program for school that had anything more than a command line interface (ok, we made some in a 1 credit hour java course). No GUI based applications. No web based applications. Not only did I not know the first thing about good interface design, I lacked that innate appreciation for topics like separation of business logic from presentation logic.

  3. Don't worry about it by Lazerf4rt · · Score: 4, Funny

    More job security for those of us already in CS.

  4. Oh, that's easy. by edunbar93 · · Score: 3, Insightful

    All you have to do is print lots of stories about how people are making hundreds of thousands of dollars a year "just because they can operate this computer". You know, kind of like back when I was a kid. The kind of thing that suckered me into getting into a field that is destroying itself.

    --
    "No problem. I have the capacity to do infinite work so long as you don't mind that my quality approaches zero."-Dilbert
    1. Re:Oh, that's easy. by Anonymous Coward · · Score: 1, Interesting
      All you have to do is print lots of stories about how people are making hundreds of thousands of dollars a year "just because they can operate this computer". You know, kind of like back when I was a kid. The kind of thing that suckered me into getting into a field that is destroying itself.

      Isn't that the way a free market is supposed to operate?

      I don't see anything wrong with it. How many folks got into medicine because they wanted to make a nice living? I personally knew a physician who was also a classical pianist. He made a really hard decision: be struggling artist or make a nice living. He became a doc and enjoyed it - and played his piano on the side. He led a happy life until leukemia took him.

      It would be nice if we all could follow our passions and make a living. And by make a living, I mean paying rent, food, and medical bills. NOT "needing" a Benz, Rolex, etc...! The basics of life which is extremely difficult to have unless you pursue a vocation that society is willing to pay you for - a decent wage.

      I think my point is made.

    2. Re:Oh, that's easy. by CRCulver · · Score: 1

      The point is that the field doesn't really provide a living. You can compete with thousands of other recent graduates for a junior-level job that in a couple of years is going to be outsourced anyway. The hype doesn't reflect the reality.

    3. Re:Oh, that's easy. by misanthrope101 · · Score: 1

      Stories like yours make me glad I wasn't smart enough to hang with CS. I lasted through one week of Calculus I and realized I had to change majors. Math hates me.

  5. no subject by UnixSphere · · Score: 1

    CS is dying because universities and colleges require you to take stupid classes that are completely boring and have nothing to do with CS? That might be it.

    1. Re:no subject by kfg · · Score: 2, Insightful

      Are you refering to the Linear Algebra or the English for Engineers?

      KFG

    2. Re:no subject by CRCulver · · Score: 2, Insightful

      CS is dying because universities and colleges require you to take stupid classes that are completely boring and have nothing to do with CS? That might be it.

      If you don't like being a well-rounded person, there's always ITT Tech or other technical schools that doesn't require any thought or reflection on life or learning skills useful to distinguish yourself in the global market.

    3. Re:no subject by MBCook · · Score: 4, Informative

      That depends. Are you talking about history, which doesn't help you with programming but makes you a more well rounded person; or are you talking about some kind of complex math which you may not see the value of but really does have a ton to do with programming?

      If it's the former, I understand your grief but we all have to go though with it, and you just may discover other subjects you're interested in during the course of taking those courses.

      If it's the later, maybe this isn't the field for you. Maybe you want to do something else related that doesn't require that kind of knowledge, like light system administration, computer repair, or maybe another field entirely. But even if you specialize yourself in computers (like DB training only), you will still need that stuff if you want to be really good at your job.

      Computers, and especially computer science, are NOT for people who don't like Math.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    4. Re:no subject by toddhisattva · · Score: 1

      CS is dying because universities and colleges require you to take stupid classes that are completely boring and have nothing to do with CS? That might be it.
      I went to a tricky school where they had Political Science classes named after programming languages and offered under the Computer Science heading in the course catalog.

      I blame Parnas. Seriously.
    5. Re:no subject by ClosedSource · · Score: 1

      As for the latter, as a guy who has been in industry for many, many years I can tell you that a lot of the advanced math I took was never used by me or any of my colleagues. Depending on the specific course, it might as you say "have a ton to do with programming" and still have nothing to do with the day-to-day work programmers actually do.

      It's also important to realize that colleges and universities don't base the requirements for a particular major solely on the what's good for the student. Many courses (both in humanities and technical areas) are inappropriately required simply because there are aren't enough students who legitimately need the course to justify it's existence.

    6. Re:no subject by Short+Circuit · · Score: 1

      I tutored a student in C++ last week who bragged about his having graduated from ITT Tech.

      He immediately complained that his C++ instructor was training them in methods suited for millions of code, when their assignments never had more than a couple hundred lines.

    7. Re:no subject by Anonymous+Brave+Guy · · Score: 1

      I like to think I'm a reasonably well-rounded person. However, I developed my social skills, presentation and communications skills, organisational skills, time management skills, people management skills and so on outside of my major studies. I learned the basics in a lot of these areas during my degree, but I did it by debating with people, reading around the subject (and reading material of interest but not directly related to my studies), joining and later helping to run student societies, even participating in on-line forums like Slashdot.

      However, my chosen subject is very broad, and I certainly did not invest all that time and money for someone to waffle at me about unrelated material. IMHO, it would be a rare degree course in today's world of falling educational standards that could contain lots of unrelated material, yet still do justice to the subject itself.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    8. Re:no subject by Tragek · · Score: 1

      Here's my question as a current and former student: How good do you have to be at it? How much of it is about correctness, and how much is about understanding of concepts.

      I mean, I took differential calculus in highschool, and I will without ego say that i had a pretty damn deep understanding of it. I couldn't however, for the life of me manage to do well in it. My math skills are hampered by simple errors (easy to catch and fix on a computer ( negatives... the bane of my existance)), but not by understanding.

    9. Re:no subject by DarthMAD · · Score: 1

      I'm a CS major right now. I'll agree with many of the posters who have said that CS should require many classes in math and theory as opposed to strictly training in practical programming without regard to the mathematical basis which underlies it. However, I also think that we are required to take a lot of ridiculous classes as well. Right now, I'm taking "Writing for the Technical Professional-" a class which the university only requires of CS majors. It's all busy work- like I need a class to help me write a resume or business letters. So on the one hand, they set out classes in math and theory in order to give us an academic understanding of computer science, but on the other, they make us take mindless classes like tech writing in order to give us practical skills. This seems somewhat contradictory to me.

    10. Re:no subject by Tragek · · Score: 1

      See, yes, this what I'm finding. I'm taking an integral calculus course, which is standard, but more interesting than my differential course. And then I'm also taking a discreet mathematics course for my CS degree, which I find really interesting. Proofs are interesting in that they have an element of creativity and imagination in them.

  6. Market forces by Colin+Smith · · Score: 2, Interesting

    People aren't interested because the pay is crap compared to a few years ago. Simple. It's not a desirable profession. And the reason the pay is crap is because there is an oversupply of IT services to the market. That oversupply pushes down the salary. The oversupply is typically coming from developing countries; India etc.

    --
    Deleted
    1. Re:Market forces by BOI-Galveston · · Score: 2, Interesting

      This is true. Why would someone get a degree in something that is being outsourced to India or China? Kids today do read about these mass layoffs. My degree is not in CS, but I am working on a degree in information assurance, not programming.

    2. Re:Market forces by megaditto · · Score: 1

      So what's the problem? A decrease in wages will lead to a smaller worker pool, which in turn will lead to an increase in wages, and so on.

      Let the free market handle this.

      --
      Obama likes poor people so much, he wants to make more of them.
    3. Re:Market forces by Colin+Smith · · Score: 1

      So what's the problem? The problem is that we have academics shouting that we need more CS graduates in a time when there's already over supply of CS and IT services. If they keep shouting, the government will step in to "do the right thing" and encourage even more people into the sector.

      --
      Deleted
    4. Re:Market forces by megaditto · · Score: 1

      This isn't a Soviet Union; our government doesn't manage the workforce in this way.

      --
      Obama likes poor people so much, he wants to make more of them.
    5. Re:Market forces by Anonymous Coward · · Score: 1, Interesting

      What really gets me is people like Bill Gates lamenting that not enough people are interested in CS and IT work, when the very same Bill is going gangbusters in setting up IT development in India.
      Case in point- Installing MS development tools such as Visual Studio, the splash screen photos of happy looking developers now feature indian and asian faces exclusively. Now they don't throw those screens together without any thought, they are careully constructed. I look at those people and think "this is the future of my profession - exported to the third world".
      Racist? Those splashscreens are. But if you're on the subcontinent, Bill wants you so you can do a cheaper job for the developed nations.
      Primary industry - sent to second and third worlds.
      Secondary industry - ditto
      Tertiary industry - once we export our knowledge, what do we have left?
      So why would anyone want to get into an IT career when this is our future? I used to sing the praises of IT but not any more.

    6. Re:Market forces by Original+Replica · · Score: 1

      we have academics shouting that we need more CS graduates

      Translation: "I want to keep my postion here at the University. If the College of Fine Arts can churn out degrees into an over saturated market, so can we."

      --
      We are all just people.
    7. Re:Market forces by newt0311 · · Score: 1

      yes it does. It shouldn't... but it does. (I'm talking about the US here). Just look at the farming subsidies. If that isn't workforce management, what is?

    8. Re:Market forces by Anonymous Coward · · Score: 1, Interesting

      Normally I'd agree with you, market forces normally can correct a problem like this. Unfortunatly the exporting of work the developing world is interfering with this correction mechanism. In addition its a shrinking field or at least one that isn't growing very quickly any more.

      I still make a good living in CS, however if I were to do it over again, I would have left it as a hobby and done something else. Its not a profession where you can age well. If some young person were to ask me for advice, I'd say be an lawyer, plumber, electrician, doctor or something where being 40+ and having 20 years experience is a benefit not a detriment.

    9. Re:Market forces by Axe · · Score: 2, Informative

      Then why it is so hard to find somebody half decent for a very competitive salary?

      --
      <^>_<(ô ô)>_<^>
    10. Re:Market forces by HarryCaul · · Score: 1

      Becasue we left the industry years ago, tired of people hiring buzzword checklists instead of the ability to understand what a piece of sftware is really doing, and trying to pay less for more work.

      We code what we want to code, on our own time and without ridiculous "project management" systems that no one even understands, much less implements in a helpful way.

      That's why.

  7. CS-Current Stupidity by Lord+Kano · · Score: 3, Insightful

    I am frustrated at how many people persuing CS degrees don't properly understand basic data structures. Arrays, stacks, queues, vectors binary trees and the like are not really thought about as much as they should be. In too many places CS is becoming increasingly about a little bit of "CS theory" and a lot of "MS Applications".

    Want to save CS? Put "Computer Science" back into it.

    LK

    --
    "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    1. Re:CS-Current Stupidity by megaditto · · Score: 1

      Why do you people wish to "save" CS anyways? If anything, we have too many crappy CS graduates that are driving the wages down for everybody.

      So if anything, we should welcome the fact that fewer MBA types are drawn to CS.

      And after awhile, the worker shortage will result in higher wages and we'll get more kiddies back.

      --
      Obama likes poor people so much, he wants to make more of them.
    2. Re:CS-Current Stupidity by ukatoton · · Score: 2, Interesting

      I agree almost completely, though with a slight difference of opinion. to me, CS == computing, rather than the 'IT' courses, which are; as you say, just how to use MS office.

      I myself (at 17) am currently doing computing AS, and we *are* learning about arrays, stacks, queues, vectors and binary trees. Most people are doing maths AS, but not further maths (modules like decision really help with computing concepts). I doubt most of the class will even remember any of this in 2-3 years time. In the class of around 25, there's only 5 or so people who'll probably even continue any further in a computing career. most people my age can't even et spelling or grammar right. It's saddening.

      Most people don't realise what computing actually is, and seem to think it's all about some magical 'hacking' ability that'll allow them to do anything. They aren't cut out for creating software, as most don't even understand computer hardware at all. Most of what I've learned has been through experimentation with programs, which I doubt any of the others in the class are doing (other than one or two).

      However, (hopefully, in a sense) luckily for me this should leave me in a rather well off position, being one of the few who will likely be in high demand in years to come.

      Apologies for ranting, it seems to happen whenever I write a /. comment

    3. Re:CS-Current Stupidity by Krakhan · · Score: 1

      The job I'm working at uses all kinds of data structures, including queues, stacks, and various synchronization primitives that had to be built in. This is a complicated client/server system, where there's all kinds of system resources and data structures flying around, which is also acting on various parts of the servers and clients. This includes stuff like custom memory allocation algorithms, since some of the devices used are embedded devices where the amount of available memory is limited.

      You are right that lower tier jobs, like a lot of database backend web applications don't require much knowledge of real computer science, which are the main kind of jobs that get outsourced. However, there are plenty of jobs out there where actually using knowledge of data structures, algorithms and mathematics is vital. These are the kinds of jobs you don't see in an arbitrary local job ad though.

    4. Re:CS-Current Stupidity by doktor-hladnjak · · Score: 1

      The fact of the matter is that the market is not oversaturated right now, at least not for entry level positions. The bust in students wanting to do Computer Science that hit a few years ago is now working its way to graduation time. With the economy picking up, there is a growing shortage of qualified candidates. The best and the brightest graduating in the next few years have a lot of very good options for internships right and for full time positions when they finish in a couple years.

    5. Re:CS-Current Stupidity by superpulpsicle · · Score: 1

      It's the other way around. The jobs that require queues and stacks are getting outsourced more than your average web dev jobs. That stuff is considered complicated, and a company would rather throw money at 100 people than 1 person.

    6. Re:CS-Current Stupidity by leabre · · Score: 1

      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

    7. Re:CS-Current Stupidity by Krakhan · · Score: 1

      Oh, and I guess that's places like Google have all of their research and development outsourced to India & China... Sorry, I find that very difficult to believe, unless you give me sources. This sounds a like the companies that fall apart within a few years, since they have no idea how software development actually works. I'll say it again, as has probably been said elsewhere in this discussion: If you have the talent, and you've had experience in the company, the interesting jobs out there are quite within your grasp. But you won't find them in any old local job placement ads.

    8. Re:CS-Current Stupidity by Lord+Kano · · Score: 1

      The best and the brightest graduating in the next few years have a lot of very good options for internships right and for full time positions when they finish in a couple years.

      As an adult I decided to go back to finish the degree that I did not get as a younger man. I now have an internship making about $12k more than I was earning in a regular job before I went back to school. I now am getting paid to do the kind of work that I did as a hobby before.

      The indication is that I'll be offered a sweet position when I finish the BS degree.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
    9. Re:CS-Current Stupidity by Lord+Kano · · Score: 1

      Sure, it's possible to cobble together an app in VB without understanding data structures or execution times, but when the app performs like a dog or is a resource hog don't put all of the blame on the computers.

      My PDA is more powerful than the computers that NASA used to send the Apollo astronauts to the moon. Tight code isn't easy. In fact, it's pretty damned difficult to write. It's as much an art as it is a science to write tight, efficient AND reliable code. Reading the "Macros" chapter in an Excel book isn't going to prepare you to create fast executing code.

      Too many people are going into the field because "teh computars" is where they believe that the money is. You need to actually care about the science portion of Computer Science to be any good at it.

      LK

      --
      "Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
  8. As a UK Student by Tainek · · Score: 1

    I chose between Comp-Sci, and a variety of different courses
    The problem is Comp-Sci is too much maths, and not enough computers for my tastes
    So i chose a buisiness and computing degree, and in my spare time have been learning java for 6 months
    by the time i leave, i'll have a computer degree to get me in the door, and a portfolio of Java projects to show my Java Knowlege

    Heres to hoping it pays off....

    1. Re:As a UK Student by flyingfsck · · Score: 1

      It'll pay off till Java goes out of fashion. So you should be OK for 5 to 10 years...

      --
      Excuse me, but please get off my Pennisetum Clandestinum, eh!
    2. Re:As a UK Student by fabs64 · · Score: 1

      If you don't know the maths behind what you're doing you're going to be a particularly useless programmer for anything non-trivial.

    3. Re:As a UK Student by that+this+is+not+und · · Score: 1

      The key is, though, there are lots and lots of 'trivial' tasks that need to be completed. And there is and always has been a dearth of people who can document projects as well as work on them.

      So, there will always be moderately well-paying positions open to those who can knuckle down and 'get it done' and who are good at communicating/documenting what they do as they do it.

    4. Re:As a UK Student by Cederic · · Score: 1


      If in 5-10 years he's still programming then he's broken the trend for most UK IT workers. Or he's gone contracting, in which case he'll have learned the language du jour and still be in high demand.

      What makes the big difference is getting that first job, and I'd say he's got a good plan there.

  9. Computer science is a branch of mathematics. by Anonymous Coward · · Score: 5, Insightful

    If you didn't know that studying Computer Science was mainly studying a branch of applied mathematics, then you obviously didn't do enough research into the program you applied to.

    And what sort of university offers "Web development" as a major? Web development is the sort of thing you learn at a community college, or on your own time with the help of several books. You don't take three or four years at a university to learn web development.

    1. Re:Computer science is a branch of mathematics. by Anonymous Coward · · Score: 1, Insightful

      Computer science is no more a branch of applied mathematics than architecture is a branch of art. A computer science student should expect a lot of math in his curriculum, because math is an important tool of the trade, but computer science has many aspects beside math, and so does web development, if you do it right. Good web development requires proficiency in design and communication theory, as well as insight into the computational aspects of information systems. If that sounds like a fancy description of Photoshop, Flash and Apache, you have been listening to too many self-taught web monkeys. It's easy to believe that anybody can do it, but it's also quite obvious that there are a lot of bad web sites out there.

    2. Re:Computer science is a branch of mathematics. by sasserstyl · · Score: 1

      You indicate your disapproval of web development as a university major, yet fail to explain why.

      I don't see why web development cannot be run as a full degree course - web development encompasses a multitude of topics from usability to programming, testing and design.

      Traditionalists would argue that you go to university to "learn how to learn". A well thought-out web development course would be a great vehicle for this. Plus such a course would give students some valuable commercially applicable expertise.

      I suspect your elitist and somewhat dismissive remark regarding web development comes from an insecurity on your own part.

      Just because mathematics is seen as being a "tough" subject by most doesn't make it any more valid as a course. It merely requires a different *type* of intelligence and/or personality.

    3. Re:Computer science is a branch of mathematics. by FLAGGR · · Score: 3, Insightful

      Computer science has existed long before computers as you know them. You seem to think computer science is some job, like web development. I'd call that computer engineering, or computer programming. Not science.

    4. Re:Computer science is a branch of mathematics. by dosius · · Score: 1

      I went for Computer Information Services because my college required calculus courses of people taking Computer Science.

      I flunked Basic Calculus in high school :/

      -uso.

      --
      What you hear in the ear, preach from the rooftop Matthew 10.27b
    5. Re:Computer science is a branch of mathematics. by CastrTroy · · Score: 3, Insightful

      I think the reason that you wouldn't expect to see "web development" at a university is that it is entirely too narrow in scope. It would be more the kind of thing that you would see at a community college. Not to say that web development isn't a good discipline, but rather that they don't tend to focus on one area, or at least not in the undergrad degrees. They usually try to teach a more broad subject area so that if the next wave comes along, and all of a sudden web development isn't cool anymore than the students who got the degree can adapt to the changing job market. I took software engineering, and work in web development currently (E-Commerce systems on ASP.Net). But I don't know if I'll be working in web development my entire life. I'm happy that i'm prepared, at least somewhat to work in other disciplines, if web development ever takes a nose dive.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    6. Re:Computer science is a branch of mathematics. by CastrTroy · · Score: 5, Funny

      I took software engineering in university. We used to say, that if you couldn't handle software engineering, you took computer science. If you couldn't handle that, you took Information management systems. If you couldn't handle that, you took Management information systems (yes, there was a differnce), and finally if you couldn't hand that, you took some business administration course.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    7. Re:Computer science is a branch of mathematics. by Krakhan · · Score: 1

      Interesting. Since you appear to be Canadian, may I ask which university this was? That sounds kind of like a similar route that someone would take as you've outlined where I go to school.

    8. Re:Computer science is a branch of mathematics. by sasserstyl · · Score: 1

      I disagree.

      Web development *is* "narrow" in the sense that it is specialisation within a discipline. But the same could be said of Software Engineering (a specialisation of Computing?) or Astro-Physics (a specialisation of Physics?).

      I don't expect most people to agree with me because I recognise that my arguments go against the prevailing wisdom, and that web development is a topic usually associated with Colleges rather than Universities - I am merely making the point that logically, it doesn't (and IMO shouldn't) have to be that way.

    9. Re:Computer science is a branch of mathematics. by Krakhan · · Score: 1

      Well for one thing, that can depend on whether you're talking about Information Theory, Information Science, or Information Technology. These fields have their difference, with lots of overlap in with each other as well.

      As I've mentioned down father in the thread with another poster, one of the challenges that are facing the discipline is coming up with a clean definition of what Computer Science is. Although the name is somewhat of a misnomer, as pointed out by the Djikstra quote, calling it something like "Informatique" would just add to the confusion. "Computing Science" would be an improvement.

    10. Re:Computer science is a branch of mathematics. by CastrTroy · · Score: 1

      University of Ottawa. One of the few schools at the time that actually had an accredited software engineering program. I've taken courses with students from all of those disciplines. That is the exact progression of programmes that will prepare you for software development in the real world. Not that computer science isn't as important as software engineering. They are just different programmes, with different goals. Computer science doesn't really aim to train people in the task of software development of large systems.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    11. Re:Computer science is a branch of mathematics. by Chandon+Seldon · · Score: 1

      because math is an important tool of the trade

      Computer *Science* is not a "trade". Period. Programming can be a trade. Perhaps systems administration. But those are no more computer science than being a mechanic is automotive engineering.

      --
      -- The act of censorship is always worse than whatever is being censored. Always.
    12. Re:Computer science is a branch of mathematics. by CptPicard · · Score: 1

      Sounds slightly familiar, but my impression is the other way around... if you can't handle computer science as in algorithmics, then you'll do information systems and databases. And if you can't handle the theory of that, you'll just slowly sink through the floor more and more towards the bean-counter, project-management style majors until you're in business school half of the time.

      --
      I want to play Free Market with a drowning Libertarian.
    13. Re:Computer science is a branch of mathematics. by Anonymous Coward · · Score: 2, Interesting

      I would definitely agree that Computer Science is a branch of applied mathematics. I've seen many people at my University drop out of the Computer Sci. program simply because they "hate" math. They then proceed to switch to MIS stuff because it's "easier." I think the main reason that Computer Science is falling would be because faculty is forgetting the APPLIED part of the mathematics. I went through a few semesters where I rarely programmed anything because we spent so much time studying theory. I would much prefer learning how to implement difficult algorithms (it's not always as straight forward as pseudocode appears), thereby, gaining an intuitive sense of the performance of it. Instead of learning how to prove what its O-notation class is. I know theory has its place in the sciences, but I'm just wondering why it has to be almost 90% of what we learn. If I can apply a concept, I know it much better than memorizing a bunch of proof rules. Just my $0.02.

    14. Re:Computer science is a branch of mathematics. by DuranDuran · · Score: 1

      > I took software engineering in university. We used to say...

      Let me tell you what we used to say about software engineers. Very bright chaps, most of them. Can't communicate their way out of a paper bag, especially with the opposite sex (that's 'females', by the way), and not too good with problems involving poorly arranged information or indefinite answers. On the whole, probably quite useful people, when you could pry them away from their "Magic: The Gathering" campaign.

      > Information management systems...Management information systems (yes, there was a differnce),

      Not in any of the literature I've ever read. Care to point it out?

      --
      "You can justify anything by putting it in quotes, adding a famous name and making it a sig" - Albert Einstein
    15. Re:Computer science is a branch of mathematics. by Wavicle · · Score: 1

      You indicate your disapproval of web development as a university major, yet fail to explain why.

      I'm curious what about web development you see as making it substantive enough to be a degree which stands on its own. You haven't really mentioned anything that isn't already covered in software engineering. The issues faced with web programming are essentially the same issues we faced with client/server/n-tier architecture, and software engineering is the tool to address those issues. A software engineer should be expected to handle web development, it isn't clear that a web developer should be expected to handle software engineering. As such, "web developer" sounds like a vocational specialization of the formal field of software engineering.

      --
      Education is a better safeguard of liberty than a standing army.
      Edward Everett (1794 - 1865)
    16. Re:Computer science is a branch of mathematics. by WhoBeDaPlaya · · Score: 1

      Sort of agree. I'm a EE who's taken a bunch of VLSI CAD algorithm classes. The devil is always in the details.

    17. Re:Computer science is a branch of mathematics. by AuMatar · · Score: 5, Informative

      Computer engineering is a hybrid EE/CS degree. Please don't put us in the group of ignorants who think CS is useless.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    18. Re:Computer science is a branch of mathematics. by slapys · · Score: 1

      Computer science has existed long before computers as you know them. Alan Turing wrote a program to solve a chess game before computers existed. He simulated it while playing his colleague and won.
    19. Re:Computer science is a branch of mathematics. by Axe · · Score: 1
      Exactly. You are getting a fundamental education to apply it to some buzzword compliant field.

      Quite a difference from learning some buzzwords, and then trying to figure out the next great thing.

      --
      <^>_<(ô ô)>_<^>
    20. Re:Computer science is a branch of mathematics. by dcam · · Score: 1

      Who would have thought that your degree somehow ended up as the hardest one on that list?

      --
      meh
    21. Re:Computer science is a branch of mathematics. by MrAnnoyanceToYou · · Score: 1

      What if you say, "Bugger all this, it's too pragmatic," and finish with a Philosophy degree?

      The problem with creating this hierarchy is that in the end there's someone who's an idiot, when really the problem is more motivational. Neat if you're worried about your penis size, silly if you want to actually function well within the world around you.

    22. 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/
    23. Re:Computer science is a branch of mathematics. by phrogeeb · · Score: 1

      Funny thing, I got a degree business administration, and we used to say the same thing.

      Except that we placed ourselves at the top of that list.

      --

      ------

      "Will the highways on the Internet become more few?" --George W. Bush, in Jan. 2000

    24. Re:Computer science is a branch of mathematics. by Have+Brain+Will+Rent · · Score: 1

      I took software engineering in university.
      Then give it back.

      We used to say, that if you couldn't handle software engineering, you took computer science.

      I'm sure that made you all feel superior. Of course you have to realize that you would have been the only ones saying that.

      I don't think I ever heard CS majors comparing themselves to the "Software Engineers". I guess they had better things to do with their time.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    25. Re:Computer science is a branch of mathematics. by bert.cl · · Score: 1
      According to one of my courses (strategic management) there is difference in that Information Management Systems provide information throughout a company to everyone who needs certain information and that Management Information Systems deliver only information to (upper) management. The next layer would then be Strategic Information Systems which delivers information to top management.

      One could indeed argue that the latter or subsets of the former, but this is how it was presented in my course, so I thought I'd just share the information :).

    26. Re:Computer science is a branch of mathematics. by TheRaven64 · · Score: 1

      I would definitely agree that Computer Science is a branch of applied mathematics. I disagree. Computer Science is the intersection of Mathematics, Electrical Engineering, and Psychology. Different departments tend to sit at different places in this intersection (mine was very much on the Mathematics side when I was an undergraduate, and is now slightly closer to the Psychology side), but don't forget that the rest exists.
      --
      I am TheRaven on Soylent News
    27. Re:Computer science is a branch of mathematics. by CastrTroy · · Score: 1

      We took classes with students from all those disciplines. Let me tell you. As far as real world software design goes, and hard courses go, software engineering was at the top. Just because it was engineering, we had to take a lot of maths and sciences that students in CS and other courses did not. We also had to take a bunch of computer science courses, business courses, and other unrelated courses. We were able to do this because we had 6 courses a semester, while all the other disciplines had 5 courses a semester. I guess it seems kind of elitist that we put ourselves at the top, but after seeing the courses that the other disciplines take, and the amount of actual experience they got, I don't think it was a bad judgement. Case in point. Fourth year project. Software engineering did a year long project in a group of 4-6, for a real company which had to fulfill all the design, development, testing, deployment stages of coding. CS Students had a 1 semester "project" where they had a month to think up what they were doing, and then had to have the project completed 2 weeks before exams, giving them about a month and half to do a project. Oh, and they were only in groups of 2. And they didn't have to be real projects, you could just write a little program, none of the other testing/design/deployment stages were needed.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    28. Re:Computer science is a branch of mathematics. by Jerim · · Score: 1

      I have noticed a good many colleges offering "web development." It is more of a vocational program. If you take into account all the possible web technologies, such as Flash, Javascript, XHTML, PHP, databases, web server administration, graphic imaging, etc., it can take four years.

    29. Re:Computer science is a branch of mathematics. by RoloDMonkey · · Score: 1

      I both agree and disagree with the parent's opinion. On the one hand, in my personal experience what the school is probably offering isn't university level learning, but on the other hand, I think that the poster may not know what goes into modern "web development".

      As for my personal experience, I am one of only a handful of people who graduated from Quinnipiac University with an undergraduate degree in "eMedia", and honestly it was a joke. In the end, I think I only took 3 or 4 classes where I was sitting in front of a computer making interactive or digital media. Everything else was general requirements like Music, mass communications requirements like Journalism, or my minor. The "eMedia" that I was taught could have easily been learned at a technical school.

      However, I realized this quickly, and I went out of my way to make the best of it. I had signed up for a CIS minor, and I made sure that I chose only the programming classes. I even did an independent study where I designed an evolutionary neural network.

      In my eMedia classes I made sure that I got as much as I could out of it. When the class was asked to cut and paste code over and over again onto objects in Director, I made the code better. I created a class to eliminate the redundancy, and changed nested if statements to a switch/case. I cleaned up the logic so that it handled improper input. Sure, I couldn't get a better grade than the A that other students got for doing the minimum, but I did impress the teachers, and they have gladly helped me in my career since then.

      As for a "web development" major, I think the poster may be stereotyping what a "web developer" does. A web developer is no longer somebody hacking together sites alone with Dreamweaver. Nowadays, a developer needs to know graphic design, XHTML, CSS, programming and scripting languages, databases, and server management, just to name a few things. Even if a developer only concentrates on a few of these things there is still enough difficult things to learn to easily fill a university level major. These are the kinds of things that I wish that my education had included and that I have gone out of the way to teach myself.

      --
      Long live the Speaker Bracelet
      Rolo D. Monkey
    30. Re:Computer science is a branch of mathematics. by jafac · · Score: 1

      We used to say, that if you couldn't handle software engineering, you took computer science. If you couldn't handle that, you took Information management systems. If you couldn't handle that, you took Management information systems (yes, there was a differnce), and finally if you couldn't hand that, you took some business administration course.

      . . . and the real travesty, is when you complete your Software Engineering Degree, and start working, those people who took the Business Administration courses will be your boss, and will earn twice as much as you.

      --

      These are my friends, See how they glisten. See this one shine, how he smiles in the light.
    31. Re:Computer science is a branch of mathematics. by sethloco · · Score: 1

      I've always heard a version of this, though Software Engineering was not at the top. But to be fair, it wasn't on the list at all. Though I'm a CS guy, I've heard it as EE->CS->IMS->MIS. The reason is due primarily to the level of expertise in physics and math which (just an opinion) does not come as easily to most of us. Since all engineering uses a body of science, and Software Engineering uses the body of Computer Science, it just wouldn't seem to make sense to say the those who can't do Software Engineering must revert to the science that Software Engineering uses. Similarly, I probably wouldn't claim that those who can't do Electrical Engineering should probably call it quits and try out Physics. Not bashing a Software Engineering degree though, it's a discipline it it's own right.

    32. Re:Computer science is a branch of mathematics. by dcam · · Score: 1

      Sorry that wasn't mean as a really serious comment. More of an obervation that most people who talk about courses being hard tend to talk about theirs being the hardest.

      I also trained as an engineer (Mechatronic) and we looked down on everyone who wasn't an engineer. We also had a similar subject load & difficulty, in general a heavier load than most other courses at the university. The only people we looked up to were the electrical engineers. Actually it was more like pity than looking up to, they had the heaviest workload of all the engineers and the worst teaching staff.

      --
      meh
    33. Re:Computer science is a branch of mathematics. by Chode2235 · · Score: 1

      The primary example that Knuth uses is the electron microscope. Why are there no degree programs in electron microscope science, clearly the electron microscope is an important tool like the computer? When you understand the differences between electron microscope and computers and why one has its own dicipline you can more clearly see the value of CS. Sorry to be so loquacious.

    34. Re:Computer science is a branch of mathematics. by RxScram · · Score: 1

      The few that have not lost their interest cannot compete versus kids from the mainland Europe, Eastern Europe, Far East or even India.

      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.
      Hmm, that's interesting. I wonder if anybody has told that to the 45 or 50 Indian students in the graduate level Algorithm Design course that I am taking. I would say out of the 70 people originally enrolled in the course, there were fewer than 15 who were American citizens. If the U.S. educational system is so horrible, then why do so many international students come here to study?
    35. Re:Computer science is a branch of mathematics. by BetaJim · · Score: 1

      If the U.S. educational system is so horrible, then why do so many international students come here to study?

      The whole educational system isn't horrible; only the secondary schools are. Like you said, the universities are doing just fine.

      --

      "Drug related crime" is a misnomer, "prohibition related crime" is the more accurate and correct phrase.

    36. Re:Computer science is a branch of mathematics. by arivanov · · Score: 1

      There is a very good joke going the rounds nowdays:

      Q: What is a science department in an American University?

      A: This is a place where Russian professors teach Chinese and Indian students in English.

      On a more serious note, while I am not a big fan of the US University education, it is considerably better than the high school one. In fact, it is better to a degree, where science courses have to be backfilled by foreigners as the high schools simply do not produce enough students for those. The few courses like chemistry and biology that get filled up with Americans to a 90%+ level are because of prerequisites for medical school and very few of the students continue past the minimal pre-med requirement.

      Overall, the problem with lack of interest to science and engineering lays with the US and UK high schools. They are going from wrong to wrong.

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    37. Re:Computer science is a branch of mathematics. by PastaLover · · Score: 1

      I think you've got most of it down here. There is somewhat of a problem in computer science courses. For the longest time I didn't know how to apply a lot of the theoretical stuff I had been taught. Although I had had a lot of practical courses as well (the regular introduction to programming, programming, algorithms, datastructures, compilers, databases), some with a very good theoretical foundation, I never really got around to using a lot of the calculus, algebra and logic that was supposedly so important for my degree.

      I think the problems most comp sci degrees are seeing are caused not by being too theoretical or relying on skills that are no longer valid, but by mistakes in teaching students how to evolve and apply the theoretic foundations they've been taught. It's not entirely applied mathematics (there's some engineering influences, and perhaps other things you could think of) but the applied part of those mathematics is often underrepresented.

      Cutting mathematics out of the curriculum won't really help. The curriculum is sound, it's just that mathematics and regular software engineering courses are often taught as if they are something different. This is partly because of historical problems in the way the curriculum is built up, but also because computer science is still evolving, and pretty rapidly at that. Engineering degrees seem to have this all down a lot better than comp sci which is too bad, but maybe a sign of the things to come.

      We're at a point here where major theoretical advances in comp sci (esp. in the formal and mathematical fields) are still possible. It's deplorable that so many schools seem to be restructuring their courses to look more like software engineering, which is more like applied computer science in its own right, instead of focusing on why mathematics are thought of as to be so important and what then is going wrong with the way students are taught those mathematical subjects.

  10. SE by HandsOnFire · · Score: 1
    From TFA:

    "Computer science curricula are old, stale and increasing irrelevant. Curricula needs to be vocational, and divergent, widening the computing student's view of the world, not creating a sterile bubble, closed off from the wider issues in the world, and from the networking, the integration, the global reach of computers."

    I don't know what CS program this guy is talking about, but the software engineering course in my program has been all about this issue. In this class we actually work with people/professors from different faculties and work on a semester long project, going through a software development cycle. The whole point of it is "get out of the closed off bubble you nerds!"

    All forms of education should widen our world view. If it doesn't, you aren't learning anything except how to be dumber.

    1. Re:SE by DelawareBoy · · Score: 1

      Dude,


      Software Engineering is NOT the same as Computer Science. Computer Science is far more theoretical (and in some cases more appealing) than Software Engineering. Software Engineers, to me, are far more practical in their use of computers, such as building enterprise applications. Computer Scientists focus on things like parallelism theories, computer vision, artificial intelligence and the like. Sure, a lot of the stuff done in CS has legitimate business uses, but the SEs are the ones who make it practical.


      I heard of a CS guy who built a web application for a company that used some sort of a finite state machine, with all the logic mapped out on pretty pieces of paper. The app sucked majorly and couldn't scale worth a damn. Engineers routinely think about these issues and plan for them, while CS'ers will come up with the state machine in the first place. Each have their own strengths and weaknesses, but are different.

    2. Re:SE by HandsOnFire · · Score: 1

      oftware Engineering is NOT the same as Computer Science. I know. I'm in a 4 year computer science program, and I have a full year software engineering course within this program. Of the 4 years, over a quarter of my classes deal with algebra, stats, calc, algorithms and plenty of discrete math. What I'm saying is that CS should focus on pure CS, while also going into detail topics of software and systems engineering.
    3. Re:SE by ClosedSource · · Score: 1

      I suspect that SE's have accomplished as much in the area of computer vision as CS's have. Parallelism? I'm not sure. Given the underwhelming accomplishments of AI, I don't think anybody would want to claim that.

      I'll bet a lot of people get a CS degree and then do what you describe as SE work. There's not a lot of profit in strictly theoretical work and where's there's little profit, there are few jobs.

  11. What is CS Anyway? by tymbow · · Score: 1, Informative

    I find many people don't even know what CS is anyway. Most people I meet seem to lump anything do with computers under the CS banner.

    1. Re:What is CS Anyway? by flyingfsck · · Score: 1

      You forgot the most important part of CS - Customer Service: "You want fries with that?".

      --
      Excuse me, but please get off my Pennisetum Clandestinum, eh!
    2. Re:What is CS Anyway? by Krakhan · · Score: 1

      That's very true. A lot of people applying for a degree in Computer Science do not even know what they're getting into. Hence, like the first poster, you'll end up complaining about how much math there is, when really at its core, Computer Science is all about stuff with Logic, Graph Theory, Algorithms, Algebra, Analysis, etc. They seem to be expecting some kind of vocational training from a university, such as how to make web pages with Dreamweaver, when that is not the purpose of a university (That's what (technical) colleges and polytechs are for).

      It doesn't surprise me to see yet another article saying "CS is dying". This seems to crop up every few years or so when not as many people are enrolling in a program where they have no genuine interest in it, again due to misinformation from their teachers, students, etc. Djikstra had interesting things to say about how computer science should be taught

      Personally, I'm fine with this trend, since this just gives me more opportunities and less people to compete with, while also giving me the upper hand against the morons who trudge through their CS degree doing the minimum possible to graduate, hating it along the way. :)

    3. Re:What is CS Anyway? by KIAaze · · Score: 1

      I am one of those people. ^^'
      Or to be more precise, to me it meant something else: CS=Counter-Strike :P
      When I first read the title "The Death Of CS In Education?", I was thinking of the end of Counter-Strike in school computer rooms!
      In my defense, I can say that I do not live in an english speaking country and therefore don't know all "common" english acronyms...

  12. so what? by Bender_ · · Score: 4, Insightful


    Science is hard and not sexy. There are also too few electrical engineers (not VHDL programmers), semiconductor scientists, material scientists, physicists and what not is needed to feed the entire information technology chain.

    On the other hand - the other posts are probably right about the common misconception of computer science and programming.

  13. Grand theft auto vs. circles by viking80 · · Score: 4, Insightful

    A generation ago, back in the 70s, the science department on my highschool got a basic computer . I wrote a program that would show time with analog hands (calculated with sin(t),cos(t)).

    I tried to get my son interested in programming by showing him how to write som simple software that could draw stuff.

    His response was basically: "Why cant we make something like 'Grand theft auto'; This is boring"

    --
    don't cut it off www.mgmbill.org
    1. 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.

    2. Re:Grand theft auto vs. circles by Aladrin · · Score: 1

      2 things:

      1. Times change. Making a machine do something thats definitely NOT the norm was exciting back then. Its exciting now, too, but making an analog clock on a computer is definitely not abnormal.
      2. And not everyone likes the same things. My father is a very good industrial engineer. I have absolutely no interest in that. Instead, Im a computer programmer, and I like to think Im pretty good at it. Every time I explain something thats amazingly cool in computers, he gets the same glazed-eye look that I get when he explains filtration processes. It obviously excites him, but I just dont care. (And vice versa.)
      I know better than to tell you how to raise your son, but maybe cool programs from 30 years ago wont be cool today and another approach is required.
      --
      "If you make people think they're thinking, they'll love you; But if you really make them think, they'll hate you." - DM
    3. Re:Grand theft auto vs. circles by empiretrade · · Score: 1

      well then show your son how to make an analog clock with moving hands (calculated with sin's and cos') that hangs on a building inside GTA, made with perhaps some game mod script ... adapt with the time the level of technical ingenuity would be similar to the old clock of your own. the surrounding resources / infrastructures have advanced to a point, where the know-hows of making a simple clock in, say, DOS or Windows is minimal, below that of your own days.

    4. Re:Grand theft auto vs. circles by Poeir · · Score: 1

      There's a great story about a six-year-old writing his own number guessing video game, with focus on how simple the game is. You might consider a similar strategy.

      --
      Sigs are like bumper stickers.
    5. Re:Grand theft auto vs. circles by syousef · · Score: 1

      Talk about blowing an opportunity. You could have and should have introduced your son to how difficult it is to make the stuff he likes - let him know that it takes years of dedicated work and that for some people writing a game is a full time job for many years. If you let him go around thinking "grand theft auto" can be written in 2 days by one person he's going to be very disillusioned by any work he gets and find it difficult to hold down any job. Anyway how old is your son??? If he's old enough let him go out and find part time work so he has some understanding of how the world works and what he's up for. A gentle slow introduction and an understanding and appreciation of what work is like is something he'll sorely need to succeed.

      --
      These posts express my own personal views, not those of my employer
    6. Re:Grand theft auto vs. circles by Evangelion · · Score: 1


      Off Topic part:

      You know, people mope about not being able to code in an environment that resembles the simple / effective style of Ataris and C64s from our childhood...

      But they forget that they have a complete and flexible language interpreter staring them in the face.

      Install Firebug. It has a nice REPL console. Combine it with a simple text editor[1] and you have a complete programming environment in two windows that is :

            a) Familiar (every kid doing this will be using a web browser anyway)
            b) Relevant and Flashy (being able to do the cool web stuff that's apparently cool now)
            c) Good - Javascript is actually a really nice language (it's been described as Scheme with C/C++ syntax), which is very easy to work with, and nothing other than the web page in the way.
            d) Did I mention Familiar? Web pages are not perceived as complex or threating.

      On Topic part:

      The reason you thought the circle was cool was that a) you came up with it when you were a kid, and b) you understood the math behind it.

      Given that, the goal would be to get your kids interested in the math -- Computer Science is really just a form of math, so if you had been doing math problems, and showed him that if you graphed ( x, y ) = ( r cos t, r sin t ) made a circle, then he might find it interesting. Or he may not, and that's fine too. But I've been doing math with my son in one form or another for two years now, and he's still only 5.

      But really, unless you care, a circle is just boring.

      [1] or Aptana, if you're brave...

    7. Re:Grand theft auto vs. circles by Axe · · Score: 1
      His response was basically: "Why cant we make something like 'Grand theft auto'; This is boring"

      Plenty of games include some fairly sofisticated scripting languages and development kits to create new levels and new mods. Try that with him.

      --
      <^>_<(ô ô)>_<^>
    8. Re:Grand theft auto vs. circles by Anonymous Coward · · Score: 1, Informative

      Speaking as a former professional game developer, and as an active participant in open source 3D engine efforts, I want to point out that powerful 3D game development kits can be downloaded for free, and you can make games with easy scripting languages like Python. Maybe something like Blender or Panda 3D would be good for your case, both of which can be programmed with Python.

      Then, if your son wants to make GTA3, make a simple level file with some buildings and a car model, then tell your son "OK, now make the car move in circles".

      Probably your son wants to see cool graphics first. You can download free high-quality models and textures if you search. For instance, you can get a free car model from http://www.blendernation.com/2006/12/03/using-blen ders-game-engine-for-more-than-just-games/ , and see http://lowpolycoop.com/ for some other high-quality models.

      Show your son the graphics, then show him that HE can control the graphics by programming the scripting language.

      The bar has been raised since we were kids (when we were excited just to control pixels on the screen), but there _are_ tools available that allow fancy graphics to be controlled with simple programs.

      Best of luck.

    9. Re:Grand theft auto vs. circles by gammoth · · Score: 2, Interesting

      This reflects my experience. I enjoy programming and time flies by when I'm doing interesting work. I've tried to share the enthusiam for programming with my two kids, with little success. Most people just aren't in to it, and that's fine.

      Sometimes I wonder how many people get a similar kick out of their profession. Do lawyers thrill with the application of law the same way I love getting threads to cooperate to solve a problem? Or override equals so that a set works as specified?

    10. Re:Grand theft auto vs. circles by DerekLyons · · Score: 1

      This reflects my experience. I enjoy programming and time flies by when I'm doing interesting work. I've tried to share the enthusiam for programming with my two kids, with little success. Most people just aren't in to it, and that's fine.
       
      Sometimes I wonder how many people get a similar kick out of their profession. Do lawyers thrill with the application of law the same way I love getting threads to cooperate to solve a problem? Or override equals so that a set works as specified?

      My wife, a CPA, claims she does. I have no grounds to dispute her.
    11. Re:Grand theft auto vs. circles by gammoth · · Score: 1

      And nor do I!

    12. Re:Grand theft auto vs. circles by Grishnakh · · Score: 1

      Do lawyers thrill with the application of law the same way I love getting threads to cooperate to solve a problem?

      No, lawyers are just people who are very good at lying, and have found a convenient way to leverage this ability to make a lot of money.

  14. 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.

    1. Re:British Computer Society is a joke by flotationIsGroovy · · Score: 2, Insightful

      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. Bullshit. CS grads with first class degrees got them by being good at everything.
    2. Re:British Computer Society is a joke by Crosma · · Score: 2, Informative

      You are right, of course. I'm just bitter. I was one of the more adept programmers (let's say, top 5%) in the year, but my degree does not reflect that, because I sucked at everything else. C'est la vie.

    3. Re:British Computer Society is a joke by flyingfsck · · Score: 1

      "Accounting, Business Skills" - those are the most important part of the course actually. What is the point of knowing how to program a computer if you go bankrupt in the process?

      --
      Excuse me, but please get off my Pennisetum Clandestinum, eh!
    4. Re:British Computer Society is a joke by Anonymous+Brave+Guy · · Score: 2, Informative

      CS grads with first class degrees got them by being good at everything.

      If only that were true.

      And no, that isn't bitterness. I was pretty high up in the year group in my CS studies. But a few years later, I also now mentor new starters at work, and there are plenty of guys out there who got great qualifications but still don't get it.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    5. Re:British Computer Society is a joke by LordLucless · · Score: 1

      Because unless your starting your own business (in which case those skills are good) then there are whole fully-qualified departments in the company you work in to do those things for you. If you've got your CS grad doing your bookkeeping for you, something is screwed up in your company.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
  15. CS is dying because... by Umbral+Blot · · Score: 4, Insightful

    CS is dying because it is several different disciplines wrapped up into one, making it hard for students to get the education they want (or need). Some want to focus on the mathematical and theoretical aspects of computer science. And yes, we need these people because they are the ones who come up with the new encyption methods / exponentially faster alorithems / proofs that one way to route traffic is better than another / and so on. Some want to be software engineers (learning how to program and program in groups). Still others want to focus on user interface design or software design in general, without dealing with all the programming details. And of course there are niche fields like 3D graphics and AI that are important but not really large enough to split off on thier own. In any case the point I am making is that, by cramming all these together under one degree, CS programs tend to suck because you are forced to learn stuff that you don't want to, and so the degree you earn isn't necessarily relevant to what you want to do. Students are catching on to this and are thus migrating away from the standard CS degree, some of them never to come back.

    1. Re:CS is dying because... by slackarse · · Score: 1

      CS is dying because it is several different disciplines wrapped up into one I think the course definitely has it's place, but it should also be complemented by courses specialising in the separate fields.

      The reason I chose CS was because it did offer something from everything. I figured this course would allow me to do anything that I wanted by the end of the degree, being interested in everything to do with computing. By the end of the course, I still wanted to get into web development, 3D graphics or games programming. I ended up in web development after a few opportunities came up, have been here permanently for the last 7 years or so with no regrets.

      I still feel if I wanted to, I could pursue a new career in any of the other fields due to the nature of that course.
      --
      Come to Australia so we can strip search you and rob you of your internets, pr0n, rights and freedoms.
    2. Re:CS is dying because... by Watson+Ladd · · Score: 1

      CS is the math. SE is the engineering. 3D stuff I think would be an art of some sort.

      --
      Inventions have long since reached their limit, and I see no hope for further development.-- Frontinus, 1st cent. AD
    3. Re:CS is dying because... by jbourj · · Score: 1

      the point I am making is that, by cramming all these together under one degree, CS programs tend to suck because you are forced to learn stuff that you don't want to, and so the degree you earn isn't necessarily relevant to what you want to do.
      Is that really all that different from other departments? I got my degrees in physics and mathematics. Physics departments are often an umbrella over atomic physics, condensed matter, particle physics, atmospheric science, astrophysics, engineering, nuclear physics, etc. Yet all these disciplines get the BS degree.

      It is also rather similar in mathematics, where one department houses actuarians, scientists of all disciplines (& CS), engineers, and a few mathematicians.

      I don't think that having a diverse output hurts the number of people who want to major---in fact, I'd argue it is just the opposite.

    4. Re:CS is dying because... by Darth_Burrito · · Score: 1

      I was in the applied software engineering camp and left a master's in CS for similar reasons. It's like the abstract people are from another world sometimes. Classic example, variable naming. In an applied setting, you name a variable like a loop counter something like currentDayIndex. In an abstract setting, you pick a random symbol out of the greek alpahbet.

  16. It is the Jobs stupid... by flyingfsck · · Score: 1

    Once people sense that there actually are jobs available at a living wage, they will start studying Comp Sci again. It is the Free Market at work...

    --
    Excuse me, but please get off my Pennisetum Clandestinum, eh!
  17. The Classics by MBCook · · Score: 4, Insightful

    We've talked about this on /. before. Many of the things I'm about to say will probably be in other comments, or you've seen in the past. I'll try to give a whole picture though. I should also mention where I'm coming from. The article is from the UK, but I'm in the US (almost dead center). I graduated with a degree in CIS (Computer Information Services) around June, and I've had a job as a software engineer for about 6 months now with a great little company.

    Now I'm the kind of person who has always been interested in computers. Like many /.ers, I would probably have pursued this field if it paid next to nothing. While my salary is nothing to sneeze at, it's nothing compared to the 60-70k number people seemed to like to throw around during the bubble.

    When I entered college in 2001, there were TONS of people who were in it for the money. That was clear by what they knew, how hard they tried, etc. There were more who seemed to think it would be interesting but weren't sure they wanted to do computers. There were others like me who breezed through the early programming courses because we were self-taught already in such simple things (basic loops, etc).

    As I went through school, the bubble burst and the idea of instant riches from computers disappeared. Biomed seems to be the new instant riches career.

    The biggest attraction to the field I see now for the average person is games. Everyone wants to make games. You like video games? Why not make them! You can get a CS degree or go to one of the many colleges offering game focused degrees (both accredited and fly-by-night). If you're on Windows, you have no chance at being exposed to programming. When I was younger we had HyperCard on the Mac (fantastic), BASIC on DOS/Windows, and you could learn. Today, Windows doesn't come with anything to learn programming. There is free stuff out there, but it doesn't come on the computer. Combine this with the fact that in the DOS days you could make something decent looking with BASIC or Hypercard that looked somewhat comparable with "real" software. Try that with today with anything. GUIs aren't easy. Even VB requires some rather abstract concepts (like events).

    Some schools are not much better. The school I attended (DeVry) has scraped their computer program (which wasn't bad) and has replaced it with the "tracks" system. Now you don't get a CS degree, you can get a degree that focuses on database programming, or computer forensics ("It's computers, combined with CSI! Fight crime!"), or something else. It is nowhere near as general and well rounded as it was.

    CS degrees seem to be being dumbed down (which seems at least due to trying to attract more people during the bubble). My local state school (which I attended for a while) had a pretty good CS program, but they've were dumbing it down as I left (putting off harder classes, using "easier"/trendier languages, etc.)

    But like the article said. Computers aren't magic boxes any more. They are a normal part of life. They are like cars. Most people don't care how to make a car, only some people will try to do that for a living. We may be near that point with computers. Most of the children I've met in the last few years may use computers a ton, but don't care much about learning how to make stuff for them. They don't even have a passing interest in trying to find out the beginning. I may not know enough to make a car (far from it), but I understand some of the principles behind it. I know about the internal combustion engine.

    I don't expect them to want to know about RCU, radix-trees, elevator schedulers, memory mapping, and other relatively esoteric things. But many don't even know about programs/operating systems/processes, or even really understand the filesystem hierarchy. They can get around quite well, and they've been trained in how to make flashy Powerpoint presentations about pointless things (I can't tell you how great a skill I think that is that the public school taught my 13 year

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    1. Re:The Classics by neax · · Score: 1

      I would disagree with you a little bit (not on everything...because you make a lot of good points.) I actually think that 'computer science' as an education is viewed by youngsters today is irrelevant.

      Why go to university to learn something that they can just muck around on the web or with a good book and learn how to do at home in their spare time. A novice could download visual studio express editions of C# or web and by the end of the week be coding up a basic website that looked great! Do enough of that and they can go get a job as a web designer. Which makes them think..."Who needs the degree?". The CS degree is worth while doing, but to be honest, there is no substitute for experience, and if you can get experience based on correct facts (ie a degree just forces you to do this, but you can do it yourself at home with a good book and/or the web).

      Employers seek competence in people, not just a bit of paper. I my opinion i think we are seeing a shift from a focus on studies, back towards an apprenticeship model, where more people get jobs and learn as they go. Kids these days are loosing faith in the university system...because they are promised mega bucks...so they spend tons of money getting educated and then can't get a job, or they get one that pays them bugger all!

      --
      Hard work is just an accumulation of the easy things that you didn't do when you should have.
    2. Re:The Classics by MBCook · · Score: 1

      That's true. I can see why they think like that. They is a ton more information available today online about programming than just a few years ago. I mostly went to school so I could get my programming skills rubber stamped so I could get a job instead of trying to prove my worth on my own. The benefit to it was not only that I have that proof, but that I learned a ton more and got humbled about how good of a programmer I was and how much I knew/didn't know.

      They may think like that (which may actually be quite true if they just want to design web sites that look nice, or something like that), but there is a lot they would learn whether they know it or not.

      That said, if they are passonite in the field, one of the reasons to go to school is to learn more even if they think they already know enough. That was another of the resons I went, because I knew there would was more for me to learn.

      PS: Yes, I realize the cognitive dissonance of knowing enough to program and being very good so I could get a job while not knowing enough about programming to be good and get a job.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    3. Re:The Classics by mackyrae · · Score: 1

      The US government supports that. People from different gov departments have been known to show up at Black Hat and Defcon recruiting hackers to work for them, no degree required. If you've got the skills, who needs the paper?

      --
      look! it's a bird, it's a plane, it's....a girl? yes, a girl browsing Slashdot on Linux
    4. Re:The Classics by MBCook · · Score: 1

      I'm doing just fine. I'm working for a small company which I liked (that's a small sacrifice compared to a larger company that could afford more), but I think most of it was just the market I'm in (low cost of living). But I also didn't have internships to prove my experience, just my senior project and what I could prove in interviews and through my work as a teacher's assistant. There are also a lot of CS people here because of both enrollment during the bubble, and one of the major tech employers here that hired TONS of programmers downsizing numerous times in recent years, putting experienced people in the market willing to take less to get a job to pay the bills for their families.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    5. Re:The Classics by syousef · · Score: 1

      What you need is rapid development tools and languages. We've moved completely away from Rapid Application Development tools and onto this shitty web paradigm. Without rapid development tools almost no child will put in the effort to see a result worth speaking of. You hit the nail on the head regarding games. If children still had a chance of coding a simple game to a level that could go commercial you'd see much more interest. Who cares if they come with the computer. If your kid can download a ring tone or an mp3 or video, they can download and install an executable. The thing is it would need to be the same technology that the pros use. Therein lies the paradox and the problem. Professional game developers work in teams and are organised by management. Even if a child could get hold of the tools what chance have they got of forming a development team complete with project managers and leadership.

      Also as more people entered the field and more was expected from computer engineers some became consultants and decided to make overly complex frameworks to ensure their job security. The pro tools are complete crud in business programming (J2EE and all the satellite technologies built on it are a god damned joke).

      --
      These posts express my own personal views, not those of my employer
    6. Re:The Classics by doktor-hladnjak · · Score: 1
      While my salary is nothing to sneeze at, it's nothing compared to the 60-70k number people seemed to like to throw around during the bubble.

      Competitive salaries for entry level software developers are in and above that range (depending on where you're located geographically) right now. In fact, the starting salaries at a lot of companies are better now than they were during the bubble because stock options are in practice making up a lot less of employees' compensation these days.

    7. Re:The Classics by CptPicard · · Score: 1

      Uh, no. Please read the other posts in this thread making the point that "a CS degree" != "webpage coding you learn on your own".

      --
      I want to play Free Market with a drowning Libertarian.
    8. Re:The Classics by Dutch+Gun · · Score: 2, Interesting

      Regarding leaning software programming on Windows... Why do you discount products like the recently released XNA game studio? Those tools are extremely cutting edge, and allow some pretty sophisticated game development in a relatively short amount of time. Why are you so concerned about compilers coming pre-installed on computers? Who today gets a computer that isn't connected to the Internet? Free compilers are all over the place - it doesn't exactly take a computer scientist, if you'll pardon the pun, to Google and grab one of them.

      It's funny, you almost sound like users not knowing what "kill the process" means or understanding the intricacies of the file system is a *bad* thing. From my perspective, I say "hooray", it's about time! I'm *glad* that someone who uses a computer doesn't have to geek up enough to become interested in the technological side of the process - maybe they just want to get some work done. That, to me, speaks to me that computer scientists are on the right track.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    9. Re:The Classics by MBCook · · Score: 1

      I had forgotten about XNA. As for the filesystem, it's a good thing users don't need to know all about it. But I run into people who don't even seem to know that it's a hierarchy but use computers quite a bit. That's the kind of thing that I expect they should know. These people are easy to spot, they save everything in My Documents and can't find it if it's not there or someone opens a file somewhere else on their computer so the Open/Save dialogs present a different location by default.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
    10. Re:The Classics by jafac · · Score: 1

      I'm taking a CS degree right now, at University of Maryland, and this program is tracks-based. Mostly a bunch of programming courses, plus a few gen-ed types (tech writing, ethics), there's a Java/OOP/Design track, a Network programming track, a Unix/Perl/Shellscripting/C++ track, a database track - granted, by the requirements, you're supposed to take either a smattering, and get to the end of at least one track, or focus on two tracks and finish them both -

      Right in the middle there, there's a prerequisite for a Discrete Math class - it kind of sticks out like a sore thumb, and it's completely different in character from all the other classes, in that it's all abstract math. It was the hardest class, by far, yet. At least for me. It really threw me for a loop, because I am not proficient at math. But by the end of that course, I grew to be aware, that this course was THE central course that the entire rest of the program was based upon. In fact, I kind of wished it had been broken out into two or three courses, so that we could learn the various areas with more depth, because Discrete Math covers several topics that are only tangentially related (set theory, logic and arguments, graphs, functions). The biggest problem for me was lack of depth, and too fast a pace. I had a lot of discussions with the professor about this, and he said that the reason this class does not get the Program-level attention that it should, is that there is such a huge demand for skill-based classes.

      And I can see this. Skills are really what I was looking for when I began the program (in addition to my "piece of paper"). Quite often, when we're interviewing job candidates who are fresh college grads, even at the masters level (heh, especially at the masters level, it seems), we encounter candidates with no real-world programming skills whatsoever. And an appalling lack of capability to apply their degree knowledge to real-world programming or other engineering tasks. THAT'S the big shortcoming. That's the one critical factor that seems to be so hard to find. And really, the only way to KNOW that somebody has that skill, is if they can demonstrate real-world programming skills. When we get stuck with someone like this, without the gumption, we usually stick them on requirements analysis or documentation.

      And I think this is the big problem in the field today. There isn't a good way to tell if a candidate has that magical quality of "gets shit done". Unless he or she has a history of "getting shit done".

      --

      These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  18. Is a CS course the best thing, anyhow? by Kittenman · · Score: 2, Interesting
    So ok, I know it's contentious - but when I started in the biz back in the late 70s my contempories were people without CS degrees. I worked with a guy with a geography degree, someone with an Archaeology degree and as for me - I didn't (and don't) have a degree at all. My highest qualification is a local exam that gave me some credits towards a Classical Studies degree.

    What the profession needed - and still needs - are people who can communicate effectively. The subjects that are taught in a CS course - imho - are not always that. I've worked with CS graduates who can't present a technical subject to an audience, can't put together a design paper, can't explain their thoughts. BUT - they could write a mean compiler, explain (badly) NAND gates, etc ...

    --
    "The greatest lesson in life is to know that even fools are right sometimes" - Winston Churchill
  19. Re:Wanna attract students? by julesh · · Score: 1

    Or, you know, during. Hell, it worked for John Travolta.

  20. Why bother with CS anymore? by EmagGeek · · Score: 1

    You can spend an American price on an education for a job that pays competitive wages in India. It's a no-win situation. How is it justifiable to spend $50k on an education to make $6/hr as a programmer?

  21. The way it works at my school by Anonymous Coward · · Score: 1, Interesting

    Government mandated course description pamphlets list the percentage of graduates who get jobs and their average salaries. The information I have gleaned from my course's pamphlet is that the local employers aren't hiring all our grads and they don't pay very well. Of course that means that we have declining enrolment.

    All of the above is fine. It is supposed to show that the law of supply and demand is working. The thing that gets my goat is that these same companies are pleading with the government to let them hire foreign workers. If they paid decent wages and hired more new grads, there would be no shortage of potential employees.

    1. Re:The way it works at my school by MBCook · · Score: 1

      The foreigners thing might change. I know companies where I am are looking all over. But part of the reason for that is that there are TONS of people in the local market, and many of them are idiots. They are the people who rushed into the field when it was supposed to make you rich. They may have made it through school, but they are just not good at it. So you have to weed all of them out, and then you're left with the usual bell curve of people. It makes finding people very tough.

      But if you can pay less for the same quality of programmer, which just might turn out to be great, you have a decent reason to look overseas for a programmer if you are running a business. Less of a gamble.

      As the oversupply of get-rich-quick people slowly disappears as they go onto other careers and manage to find jobs, things will get better and salaries will rise.

      --
      Comment forecast: Bits of genius surrounded by a sea of mediocrity.
  22. I remember you guys.. by QuantumG · · Score: 1, Flamebait

    you were the ones who did the bare minimum to get through university. Never read the textbooks. Pooled efforts with your friends to complete assignments, plagarising off each other, and getting away with it until the university introduced automatic plagarism detection software. You guys were the ones who came into the lab and complained that you couldn't get a terminal to complete your assignments due to those of us who actually chose to study this field out of actual interest taking up seats. You guys would complain that you couldn't concentrate because of everyone talking about programming. Yeah, I remember you guys.

    --
    How we know is more important than what we know.
    1. Re:I remember you guys.. by edunbar93 · · Score: 1

      Pooled efforts with your friends to complete assignments, plagarising off each other, and getting away with it until the university introduced automatic plagarism detection software.

      Damn, *that's* what I should have done to get through my math classes. Especially considering that it was at least 5 years before they started even thinking about plagiarism detection software.

      Unfortunately, no. I flunked out of CS (my programming was great. My math sucked) and went on to a job in systems administration instead. I was one of those that was enough of a dumbass to persevere with my passion instead of persevering with a degree - any degree.

      --
      "No problem. I have the capacity to do infinite work so long as you don't mind that my quality approaches zero."-Dilbert
    2. Re:I remember you guys.. by QuantumG · · Score: 1

      I still, to this day, don't know how I finished the math portion of my CS degree. I think I just forced myself to do it.. maybe I tricked myself into thinking I cared. Similarly with databases.

      --
      How we know is more important than what we know.
  23. Busy Market? by Clazzy · · Score: 1

    I considered doing Computer Science at university but I decided against it (doing physics instead) as I was told by many people that job prospects were limited due to an already saturated market. Not actually being in that business I can't claim it's a valid reason but if I was told it then perhaps others were too and decided against it?

    Of course, with tuition fees introduced in British universities there's been a fairly large decrease in students applying this year as compared to previous years. It could just be that people aren't taking this into account and are just claiming a decrease in interest in the subject.

    --
    If we can hit that bull's-eye, the rest of the dominoes will fall like a house of cards... Checkmate.
    1. Re:Busy Market? by flyingfsck · · Score: 1

      Yup, there is still an oversupply in CS and IT. Of course the professors want more students - perhaps the professors need to do some burger flipping too, to learn the reality of the situation.

      --
      Excuse me, but please get off my Pennisetum Clandestinum, eh!
  24. politics; pipeline; Mom and Dad by bcrowell · · Score: 4, Insightful

    Public breast-beatings like these are generally political maneuvers by people in the field, who want more power and funding. I'm a physicist, and in my field you hear the same kind of thing: boo hoo, the number of students majoring in physics is dropping, it's a national crisis, please throw money at us to cure the problem. Usually the people complaining are faculty who produce 20 grad students over the course of their careers, and tell all 20 of them that they're failures if they can't make their way into careers exactly like their adviser's: teaching and doing research at a school that has a high-powered graduate program. There's always the nationalism, too: watch out, because the Russians (or Chinese, or Indians, or, ...) will beat us. They always leave out some of the relevant facts: that the U.S.'s graduate-level educational system is the envy of the rest of the world; that the number of people the U.S. is trying to educate at high levels is higher than anything that's ever been attempted before in all of history. People misuse statistics like crazy, too. For instance, they compare the number of students graduating in India with the number graduating in the U.S., but the degree programs in India they're including are basically like AA degrees, not programs that are comparable to a U.S. bachelor's degree.

    Another issue that people tend to sweep under the rug is that there is a pipeline at work, and the reason people drop out of the pipeline is usually a good one. At every step along the way, some people are dropping out of the pipeline simply because their genes don't make them good at the field. Others are dropping out because they're low on motivation. Others are dropping out because they don't enjoy it, and can tell that they're not going to enjoy it once they're out of school and in a job. Still others are dropping out because they see the field as being incompatible with the family lifestyle they want.

    And finally, these fluctuations in enrollment are usually driven by Mom and Dad. There is always a small core of people who were born to do a certain thing, whether it's music or plumbing or CS or physics research; they're in the field because they love it, and they love it because it's what they're naturally suited for. Layered on top of that core is always a much bigger number of people who majored in something because Mom and Dad told them they could make a lot of money at it. When times are good, the core still does well, but the wannabes bail out, because it's not turning out to be a good way to earn big bucks doing something that they're marginally talented at.

    1. Re:politics; pipeline; Mom and Dad by Oracle+of+Bandwidth · · Score: 1

      When I started my degree I kinda belived the whole "We need the funds" thing. However, now that I'm less than a year away from getting my degree I have to disagree. Classes that use to fill up and seat 60 students now are considered big if they have 20, and forget about having to reserve for a CS class, just walk in on the first day and see if you like it. Also department diversity is really suffering, I think my graduating class has 4 girls in it, out of the 60 of us.

    2. Re:politics; pipeline; Mom and Dad by LordNimon · · Score: 1

      You just described my CS undergraduate education .... 15 years ago.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    3. Re:politics; pipeline; Mom and Dad by Splab · · Score: 1

      When I started my CS studies we where 300+ students. This year less than 80 applied. Same thing is happening on all other universities around here, while I doubt it will be the end of CS it sure isn't a good sign.

  25. So which of you will die first? by Alwin+Henseler · · Score: 1
    (in a couple of decades)
    • You old bearded guys?
    • The ancient programming language(s) you're coding in?
    • The antique VAX equipment you're working on?
    • The NetBSD you're running on it?
    • all of the above
    1. Re:So which of you will die first? by $0.02 · · Score: 1

      BSD, of course.

      --
      If enithin kan gow rong it whil. (Murfey)
  26. Easy by Godji · · Score: 1

    Give young students a sufficiently motivating introduction to computers with an open transparent system they can easily tinker with, and are allowed to tinker with. You already know which one.

    Back at my high school we had a bunch of 20 MHz Macs, later replaced with Windows 2000 systems. The rules were: don't touch anything you dno't know, don't access at all outside class, don't do anything that could possibly ever be dangerous, don't tinker so that you don't break it, and no, you can't change your screen resolution because we don't want you to and we locked down the sytem to make it impossible... you get the idea.

    At the same time, we were taught Word, Excel, basic Photoshop (that one was good), block diagrams, and a ridiculous subset of C++ (no pointers!). Oh yea. Inspiring.

    Thank god I already knew the difference between schools and computing in the real world already then.

  27. CS is forever, software/hardware is transient by Stochastism · · Score: 1

    Why is computer science more important than software engineering?

    Because even the world's most powerful super computer, without good algorithms, will take centuries to sort a phone book.

    A clever algorithm is eternal, programming languages, operating systems, and hardware come and go. So if you want to make a BIG difference to the world, CS is the way to do it. We still don't know if P=NP !

    1. Re:CS is forever, software/hardware is transient by Metasquares · · Score: 1

      A clever algorithm is eternal
      Until it is replaced by an asymptotically faster one.
    2. Re:CS is forever, software/hardware is transient by Krakhan · · Score: 1

      Unless you can prove that it can't be faster. I.e. In the case of comparison based sorts, You can't do better than O(n log n).

    3. Re:CS is forever, software/hardware is transient by ClosedSource · · Score: 1

      Well, most of the fundamental algorithms were created by people who couldn't legitimately call themselves computer scientists or software engineers simply because those terms didn't exist at the time, so I guess I don't see your point.

      Individuals or teams come up with algorithms and the drive and ability to create them aren't automatically bestowed on those who have a CS degree on denied to those who don't.

    4. Re:CS is forever, software/hardware is transient by Stochastism · · Score: 1

      I see the point, but I'd argue that people who get into the creation and improvement of algorithms are doing CS, irrespective of whether they had a CD degree. The originators of the science of computing where mathematicians or physicists. Those are the people with the right skill sets for the job. I think computer science is what you do when you think about computing while divorcing yourself from any particular hardware/software architecture.

  28. I RTFA by Anonymous Coward · · Score: 5, Insightful

    I read the article, and I disagree utterly.

    The problem is a much deeper-lying one. Universities are selling themselves as steps towards getting jobs. With very rare exceptions (divinity, for instance) this was never the case, nor was it intended to be. They are not vocational institutions, nor are they designed as such.

    I have seen, and been in, vocational institutions. They are very fine places (called vocational schools, technical colleges, technikons or what have you) where pupils are drilled in particular modes of work to accomplish given tasks. They are very good at what they do, and they often work alongside other teaching systems such as apprenticeship schemes. They are not interested, institutionally speaking, in research, nor in high-flown theory. They are there to tell little Johnny that if he pulls the lever on the drill-press smoothly and evenly, it will produce an accurate, regular hole with little risk of breaking the bit. People who want to learn to be Java programmers would be well served by attending such courses. They will learn to crank out Java well, repeatably, and quickly. They won't learn in-depth knowledge about garbage collection strategies; that isn't why they are there.

    Universities are not about drilling students. They are set up to expand minds. In principle a university could be a few comfortable seating areas around a vast library, with students exploring under the guidance of other people interested in expanding human knowledge. Add a few laboratories, maybe a few lecture halls for guest presentations, and you're there. In the computer science world, where the point is to have students truly understand on a deep level what is going on inside the computer, and even inside computers which only have theoretical expression, drilling them in Java would be a total waste of time.

    The writer of the article wants student numbers up, and shows little or no interest in the raison d'etre of the courses and departments in the first place. His agenda, as revealed by the article, is for universities to be, or to become, vocational institutions. This is in line with the existing trend for universities to beg for students, tempting them with airy promises of gainful employment. The problem can be phrased as a question: where will those who wish for the services of universities, rather than vocational institutions, go?

    Right now, the best bet would appear to be a library, or perhaps the web, because only there is pertinent information available with a minimum of time-wasting distractions. At this rate we bid fair, at least in computer science, to leave behind the benefits of university courses and return to a pre-academic level of support for research. I won't go so far as to say definitely that this is a bad thing, but I do think that to present what the author is suggesting as a university course is bordering on the fraudulent.

    1. Re:I RTFA by Anonymous Coward · · Score: 1, Insightful

      Universities started out teaching Medicine and Law. Why? So that people could become Doctors and Lawyers! Universities ARE there for vocational training, I think you'll find that having knowledge without the ability to apply it is stupid.

    2. Re:I RTFA by zhrinze · · Score: 2, Informative
      What a ludicrous statement. Yes universities provide education in law and medicine, but there is a broader amount of education going on. A doctor must be able to adapt to new diseases, diagnose combinations of diseases, differentiate between the unique symptoms a person comes in with. Medical technicians are trained at a vocational school.

      And lawyers - lawyers must not only know the law, but be prepared to go to trial and apply psychology, dispute or prove evidence, make use of precendents, and adapt to variables that cannot be trained. A paralegal can be trained to search for cases and to find possibly relevant material with great competency, but the lawyer must decide how it can be applied to the case.

      Do people go to college to get jobs? Sure. Few people have the luxury to attend college for purely edifying reasons. Do colleges play to that? Sure. Unfortunately, many schools are required to provide educational tracks that are narrow in order to receive their funding or in order to stay fiscally viable.

      Many universites and colleges are even DIRECTLY tied to technical schools. They provide those services as well and they are forced to offer similar tracks at the tech school part that are offered in the academic part.

      The reality is that some colleges are caving to student demands for fiscal reasons, but medicine and law aren't good examples. I'd hate to be operated on by a "tech school surgeon."

    3. Re:I RTFA by Have+Brain+Will+Rent · · Score: 1

      The problem is a much deeper-lying one. Universities are selling themselves as steps towards getting jobs. With very rare exceptions (divinity, for instance) this was never the case, nor was it intended to be. They are not vocational institutions, nor are they designed as such.

      Yes, but if we don't do that then we will only be letting in a small portion of the population and that looks elitist. Where I am the relevant zeitgeist is that everyone should be able to go to university if they want to do so. Inevitably that means both dumbing down the content and making the result of the process be something that most people want. "A job" is the simplest solution to the latter need.

      Eons ago, when I was an undergrad, I frequently had the thought that the place would be significantly improved if 90% of the students stopped attending. Back then the purpose of the university seemed to have become one of both teaching students to be reasonably competent thinkers in one or more areas and to certify them as being competent. I always saw the enormous resources expended upon the altar of certification as a huge impediment to universites being something that would really benefit society. Now they have gone one step further and their purpose seems to be to market themselves as being useful to society at large. A bumper sticker for the modern university could easily be "We do relevent research now and we prepare your children for careers."

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    4. Re:I RTFA by Slithe · · Score: 1

      I read the article You must be new here.
      --
      ---- "XML is like violence. If it doesn't fix the problem, you aren't using enough."
    5. Re:I RTFA by DerekLyons · · Score: 1

      The problem is a much deeper-lying one. Universities are selling themselves as steps towards getting jobs. With very rare exceptions (divinity, for instance) this was never the case, nor was it intended to be. They are not vocational institutions, nor are they designed as such.

      Actually - historically, vocational training was exactly what colleges and universities were designed for. The trivium and quadrivium were designed to produce trained and cultured minds suitable to the clergy, the law, and to be administrators. Sons of the nobility attended because, when they weren't filling those roles directly, they would be supervising those fields. Education was designed to prepare one for ones role in society. (This is why 'going to college' was the goal of so many youths in the 19th and early 20th centuries - because being a college graduate marked one as being of a higher station in life.)
       
      The idea of a university or college being a home for scientific exploration came rather later. The idea of one being merely to 'expand minds' is a fairly modern invention, or more correctly a modern ideal as it fails to correspond to any institution past or present.
       
       

      Universities are not about drilling students. They are set up to expand minds. In principle a university could be a few comfortable seating areas around a vast library, with students exploring under the guidance of other people interested in expanding human knowledge. Add a few laboratories, maybe a few lecture halls for guest presentations, and you're there.

      A fanciful ideal - one thats been around for less than a century. Somehow, nobody has been able to make one work. Or even, as far as I know, tried to make one work. That suggests a large disconnect between the ideal and the nitty-gritty of reality.
       
       

      The writer of the article wants student numbers up, and shows little or no interest in the raison d'etre of the courses and departments in the first place. His agenda, as revealed by the article, is for universities to be, or to become, vocational institutions.

      A study of history shows his agenda is for universities to refine their approach to something that they have historically done. Your belief that it represents a radical agenda for change is based on an erroneous belief of the roles of the university in the past.
  29. It isn't just the UK by kilodelta · · Score: 1

    It's the U.S. too. For example, I'm going back to school and getting an engineering degree. Why? Because my InfoSci degree is pretty much useless.

  30. Ignore the Bombast, Software is Forever by aldheorte · · Score: 2, Insightful

    Software is the future of business. All businesses will become fundamentally software companies. Many are already there. All work will have to be custom, because if you simply buy the same packages as someone else, you have no competitive advantage. It doesn't matter if the industry is farming, manufacturing, or high tech, the ability of your company to compete will depend entirely on your software and the people you employ to make, configure, and maintain that software. Companies that view IT merely as an expenditure will be the road kill of other companies that use custom software to compete in non-traditional ways. It's also a network issue - most companies will want to integrate systems with their partners. If your company doesn't have this ability, and specifically the ability to custom tailor your systems for the integration, then you will be out of the network and, in a few years time, essentially completely out of the economy.

    1. Re:Ignore the Bombast, Software is Forever by pikine · · Score: 1

      Another perspective to what you just said is how successful dot-com companies have traditional business counter-parts. Google and Yahoo are media/entertainment companies; Amazon is a retail company; E-trade is a financial company. These dot-com companies are also facing competition from traditional businesses that are now increasingly software based. It's more visible in the finance sector, but less so in the media/entertainment sector where most companies are too stubborn to embrace new technology.

      --
      I once had a signature.
  31. Falling interest in the courses, not the material by L4m3rthanyou · · Score: 1

    Maybe it has something to do with the fact that high-school level CS courses are a total joke. Hell, the College Board has changed the official AP computer science language to Java. Where the hell am I going to use that? Once I got to college, though, the CS was very interesting and useful.

    --
    One of these days, I'm going to cut you into little pieces.
  32. Please, Stop Being So Arrogant by sasserstyl · · Score: 1

    This discussion features a number of responses indicating disapproval or dismissiveness surrounding the field of web-development.

    To all those who have responded in this tone, please stop being so fucking arrogant and elitist.

    Just because you don't need to know how to code a bubble-sort in C to create a good website, doesn't make the endeavor any less valuable, significant or difficult.

    Web development simply requires a different skillset than (for example) graphics programming, and is no less difficult.

    Sure, its easy to build an awful website using Frontpage, but it's just as straightforward to create a crappy 3-d graphics application. Creating an excellent website or an excellent 3d graphics application are both "hard" endeavors.

    Look, just because you understand math better than most people doesn't make you superior, it just makes you different (and probably more nerdy).

    Get off your high horse and understand that there's more to intelligence than raw IQ.

    1. Re:Please, Stop Being So Arrogant by sasserstyl · · Score: 1

      OK, fair point - my post was only tangentally related to the topic.

      But I felt there was a point that needed to be made given a couple of posts earlier in the discussion.

    2. Re:Please, Stop Being So Arrogant by mrjohnson · · Score: 1

      Oh, please. Web developers by definition make shiny things for users.

      Now, I've done a lot of web development and it is hard. No denying it. But it's not on the same level as writing a database, say. For the web, portability means validating HTML and checking JavaScript against different browsers. A pain, yes, but not the same as trying to figure out how to port said database to Windows or writing a compiler or creating the next great computer language.

      Yeah, maybe there's some arrogance here. Okay, a lot. But you're being crazy defensive. Relax. You live a better life. You can actually show somebody what you worked on and they'll understand what the hell you're talking about.

  33. From Computer Science to Abstraction Physics by 3seas · · Score: 2, Informative

    Perhaps we are just getting tired of pretending the obvious doesn't exist --- or in other words we are becomming so accustomed to computer in general that we are naturally quantizing its purpose and functionality?? Or from another perspective, let's up gear and find a better way to calculate with more then just the numerical subset of abstraction, but with what ever abstractions we might come up with.

    Lets try try this other perspective!

    A course in: Abstraction physics

    Introduction:

    The physics of abstraction (abstraction physics)is of an outside looking in perspective, where rather than creating another abstract language (inside), instead sees the underlying action machinery enabling the ability to create languages (outside looking in). Since Abstraction is a human mental characteristic, there is an inherent subjectivity to the topic. However, through the use of computers we can be more objective about abstraction physics. See: Abstraction (computer science)

    Abstraction enters the picture of computing with the representation of physical transistor switch positions of ON '1' and OFF '0' or what we call "Binary notation". However, computers have far more transistor switches in them than we can keep up with in such a low level or first order abstract manner, so we create higher level abstractions in order to increase our productivity in programming computers. From Machine language to application interfaces that allow users to define some sequence of action into a word or button press (ie. record and playback macro) so to automate a task, we are working with abstractions that will ultimately access the hardware transistor switches which in turn output to, or control some physical world hardware.

    Programming is the act of automating some level of complexity, usually made up of simpler complexities, but done so in order to allow the user to use and reuse the complexity through a simplified interface. And this is a recursive act, building upon abstractions others have created that even our own created abstractions/automations might be used by another to further create more complex automations. In general, if we didn't build upon what those before us have done, we then would not advance at all, but rather be like any other mammal incapable of anything more than, at best, first level abstraction. But we are more, and as such have the natural human right and duty to advance in such a manner.

    Abstraction action constants:

    There is an identifiable and definable "physics of abstraction" (abstraction physics), an identification of what actions are required and unavoidable, in order to make and use abstractions. Abstraction Physics is not exclusive to computing but constantly in use by ... well... us humans. Elements or facets of abstraction physics include the actions of abstraction creation and use, such as:

    0) Defining a word to mean a more complex definition (word = definition, function-name = actions to take, etc.)

    1) Starting and Stopping (interfacing with) of an abstraction definition sequence.

    2) Keeping track of where you are in the progress of abstraction sequence usage (moving from one abstraction to another).

    3) Defining and changing "input from" direction.

    4) Defining and changing "output to" direction.

    5) Getting input to process (using variables or place holders to carry values).

    6) Sequencially stepping thru abstraction/automation details (inherently includes optionally sending output).

    7) looking up the meaning of a word or symbol (abstraction) so to act upon or with it.

    8) Identifing an abstraction or real item value so to act upon it.

    9) Putting constraints upon your abstraction lookups and identifications -When you look up a word in a dictionary you don't start at the beginning of the dictionary, but begin with the section that starts with the first letter then followed by the second, etc., and when

  34. Blame employers by stinerman · · Score: 4, Insightful

    Too many employers look for checklists of skills rather than overall knowledge of an area. In a job interview I was once asked why I didn't ever get an A+ certification. I told them that since I had 6 years experience in the field, I didn't need it. They still pressed me to take the A+ test after I was hired.

    Similarly, the fact that I'll have a related degree in the field won't matter to a lot of HR drones. They care more about MSCE and CCNP certifications than they do a Bachelor's degree. I know the underlying concepts of networking, routing, etc., but since I haven't worked directly with Cisco routers, I'm apparently useless to them. Who cares that I can learn whatever software package they're using in a week or so?

    No wonder no one wants a degree in "CS". They just want a job in the field, and there are easier ways to get there than a 4-year degree.

    1. Re:Blame employers by SkyDude · · Score: 4, Informative

      Too many employers look for checklists of skills rather than overall knowledge of an area.
      You couldn't be more on target if you shot it with a .357 Magnum. While any employer wants to make sure they hire the right person for a given position, far too many rely on the degrees listed on the resume rather than the practical application of the supposedly accrued knowledge. When it comes right down to it, earning a degree only shows one's ability as a student, not the real world use of that knowledge. Why else are there so many semi-competent people in various fields, programming being just one of them? Hell, anyone can probably list a dozen different CEOs who are running their companies into the ground.

      I'm not down on education or earning advanced degrees, but several years ago, I remember reading about the explosion of MBAs. In the article, the author pointed out that less than 15% of CEOs in Fortune 500 companies had advanced degrees. I don't know if that still holds true today, but it proved to me that real world knowledge was far more important than a degree in a frame.
      --
      == First cross river, then insult alligator.
    2. Re:Blame employers by doktor-hladnjak · · Score: 1

      There are many prominent employers that do focus on looking for smart people with a strong aptitude for programming and worry less about skill lists and certs. I've certainly interviewed and worked for companies like that (including my current employer) and been unable to get past the HR screen for others.

    3. Re:Blame employers by abb3w · · Score: 1

      Who cares that I can learn whatever software package they're using in a week or so?

      Now, now; the subtle perversity of Cisco's IOS takes at least three weeks to master for someone with less than a decade's networking experience. If you only have the experience, all you can do in a week is pass the CCNP exam.

      --
      //Information does not want to be free; it wants to breed.
    4. Re:Blame employers by nick1000 · · Score: 1
      I recently applied for a number crunching job(from massive databases) at a large investment bank.


      With my CS major(with a Data mining specialization and a Management minor) I was sure that I was completely qualified. The interviewer told me that I needed an MBA "degree" for the job.

    5. Re:Blame employers by vginders · · Score: 1

      Too many employers look for checklists of skills rather than overall knowledge of an area.

      You couldn't be more on target if you shot it with a .357 Magnum.
      Let me guess, you live in the Far West area?
      --

      Serge
    6. Re:Blame employers by Sigma+7 · · Score: 1

      Too many employers look for checklists of skills rather than overall knowledge of an area. In a job interview I was once asked why I didn't ever get an A+ certification. I told them that since I had 6 years experience in the field, I didn't need it. They still pressed me to take the A+ test after I was hired.
      The A+ cert, in theory, is supposed to cover all of the components, compatability, and other stuff within the system. Depending on the systems you had exposure to within your six years, you still might not have exposure to things currently on the market. (In practice, the A+ practice exams don't seem to cover everything.)

      The God Box from ArsTechnica is a good example of what I'm talking about - it currently recommends the Tyan Thunder n6650w as the mainboard. However, you cannot use a normal ATX or ATX12V powersupply due to compatability issues, and you won't notice unless you read the mainboard documentation.

      Similarly, the fact that I'll have a related degree in the field won't matter to a lot of HR drones. They care more about MSCE and CCNP certifications than they do a Bachelor's degree.
      The trick is to say that you're MSCE/CCNP certifyable. If you starty studying for the MSCE/CCNP, you would only have to worry about studying the interface to the system in question rather than having to study the theory behind it (in case something more comples goes wrong.)
  35. 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.

  36. Why is it in decline by Anonymous Coward · · Score: 1, Insightful

    Why is it in decline? CS jobs can be done in India for cheaper. People are looking for careers that pay well enough, have good job security, and can be done in their country.

  37. Re:The Classic Perceptions. by MBCook · · Score: 1

    They might be in that group. They may be someone like me who likes to mess with computers but decided to go with something that interests them more (knowing myself now, I would have loved a degree in psychology or to have studied photography). But that wouldn't have taken away what I learned myself about programming. Many people get degrees in one thing before finding they are very good at something else. The kind of people you are talking about are in that group. And that group can often provide an interesting new prospective that can be valuable (in programming, this can often best be seen in UI and functionality issues, since a degree in history probably won't give you a different perspective on how to write a loop).

    It's famous that Einstein didn't do well at Math as a kid. KFC's Sanders didn't start a restaurant chain until he was in his 60s. You may not even realize you like/are good at computers until you are much older than college age, so you already have a degree in something else.

    --
    Comment forecast: Bits of genius surrounded by a sea of mediocrity.
  38. Science vs Secrets by Anonymous Coward · · Score: 1, Interesting

    One problem with "Computer Science" is that so much of the industry is now developed in secret. Everyone is re-inventing the same wheels, and much of these inventions are not generally available for education and science.

    Perhaps the most useful course in our current world would be one on reverse engineering.
    This only serves to show that the computer software is not science all.
    The software field ofter degrades to one made up of "software technician".
    Of course the openness open-source lines up with science more.

  39. Software isn't hard by CrazyJim1 · · Score: 5, Insightful

    I've programmed as a hobby all my life and have a computing degree from Carnegie Mellon. I'll tell you what is hard: Finding a job coming out of college. Everyone looks at you like you have no idea how to code because you have no experience. It makes me mad I went to college when I coulda just coded for some startups in the mid 90s and been fine.

    1. Re:Software isn't hard by Anonymous+Brave+Guy · · Score: 1

      I'll tell you what is hard: Finding a job coming out of college. Everyone looks at you like you have no idea how to code because you have no experience.

      That's because most people coming out of college with no experience have no idea how to code.

      There are a very small number of exceptions. Usually, you can spot them a mile away. The rest just think they're better than they are.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    2. Re:Software isn't hard by sheldon · · Score: 1

      It's sad, but this guy is correct.

      The worst are the people who get into programming, having skipped out of college because they thought they were too smart.

    3. Re:Software isn't hard by cervo · · Score: 1

      Amen, I graduated in 2002 and couldn't find a job for a year Once I did, the only job I could get was mostly DBAist so I took it. Now no one will hire me as a software developer because they see me as a DBA. It seems the first job is not only hard to find, but sets the tone for your career.

  40. My observation by OmniRiot · · Score: 1

    Computer science needs to be theoreticl. It also needs to be practical. Programs should focus on the theoretical stuff (data structures,algorithms, etc) in the first few years as a base, then give the students an option to follow a more specific area such as software engineering, GUI design, AI, etc. To break into the field, you need a specific set of practical skills such as SQL, Struts, Crystal, etc etc. The CS programs are not providing practical skills like these.

  41. As a CS Major... by Wicko · · Score: 2, Interesting

    in my 4th year, I can understand why it looks so unattractive. Well, for the first 2 years, all the courses were basically mandatory, and the only ones that weren't had to be non CS classes. Which is pretty stupid in my opinion. If i feel the need to take these other courses, I will. I had to take 3 mainstream courses. The first 2 was basically drilling java into my head. As a C/C++ programmer, I despised it and it felt like review. A lot of the stuff we were taught, I will most likely never use in the field I will be getting into (gaming). Basically, they felt like review courses to get everyone up to speed. Then we have to take a series of specific classes. This included various Calculus classes, Databases, Operating Systems, Ethics (useless), Assembly, Data Structures, Project Management, and the list goes on.

    Considering my ideal profession, how useful do you think an entire semester of databases will be for me? Not very useful. Sure, a concept might come in handy here and there, but really, a full course devoted to it is mandatory? What about Calculus? A lot of people say it helps you get into different mindsets, but really, I took it in high school already, I know basic calculus and that should be good enough. Operating Systems? Not very helpful, interesting, but completely useless to me.

    There is only one graphics course. There is a second, thats Graphics/Audio, and it JUST became a standard course (used to be available if the Prof. felt like teaching it). There are a couple other courses useful to me, but probably more than half of them aren't. And its very frustrating, paying all these tuition fees, and I can barely concentrate on what I actually want to do. Don't get me wrong, most of these classes are helpful, but a lot of it I can just quickly reference in a book and move on.

    I definitely think it would be beneficial to split CS into different strains. We wouldn't be spending obscene amounts of money on courses that may or may not be useful in the future, and more on courses that will most likely be useful. A jack of all trades in CS is useful but I would gather most of us have certain areas we specialize in.

    1. Re:As a CS Major... by feepness · · Score: 2, Insightful
      Gaming?
      • Calculus: Need as much as you can for all the graphics heavy lifting.
      • Operating System: You will be programming as close to the bones of the system and interacting with multiple threads/processors.
      • Databases: Online games interacting with thousands of thousands upon thousands of users require more than a flat file to manage.
      • Assembly: If you are programming games you WILL hit assembly as some point.
      • Project Management: It's done when it's done. But you'll get paid more if it's done sooner.
      • Data Structures: Graphics, and every other kind of hardcore programming, is filled with them. The more tools you have, the better.
      • Ethics: Ok, I'll give you this one as useless.

      I really don't know what you see yourself doing if you AREN'T using those on a regular basis.
    2. Re:As a CS Major... by Erwos · · Score: 1

      And you know you are getting into the gaming field how? You know you won't burn out in five years how?

      There is no such thing as useless knowledge. You never know what you're going to do. Keep your ears open, and don't think yourself above the subject matter.

      I graduated a couple years ago with a degree in CS. I didn't get my dream job. But you know what? All those "useless" courses I took back in college turned out to be damned useful, and even as someone who did, honestly, pretty badly in college, I'm doing better professionally than I ever dreamed. Why? Attitude - I have a willingness to learn new things.

      I suggest you change your attitude from "I don't need to know this" to "I might need to know this" - it'll serve you well.

      And you think ethics is useless? That's sad. There's more to life than the command line, believe it or not.

      --
      Plausible conjecture should not be misrepresented as proof positive.
    3. Re:As a CS Major... by Wicko · · Score: 1

      I agree with you 100% on the matters you stated, but I still think a lot of the classes I took, are useless for what I want to do. Calculus is only required if I go for my honours degree. Some of the other courses I took, just seemed like filler courses to make up for the lack of depth. And about ethics, maybe I should have phrased so that you would know I meant this particular ethics class I took was useless. It felt like a hodge-podge mixture of opinions and common sense that someone threw together in a couple hours. I didn't feel like I gained any knowledge from that course. Ethics is damned important.. but the class I took didn't do a very good job on expanding on that point.

    4. Re:As a CS Major... by Wicko · · Score: 1

      Calculus: Haven't seen a speck of it, 99% of the math I've done is discrete geometry. Perhaps there are some aspects of calculus I have used and I'm just unaware, but from what we have applied calculus mathematics to, just doesn't seem to fit with 3 dimensional graphics so far. What do you mean by graphics heavy lifting? I have programmed a first person shooter in openGL, and I haven't had to use anything like that yet. Obviously I'm not a professional game programmer so I don't pretend to know everything. Could you be talking about advanced lighting, or shadowing, reflections/refractions? Operating Systems: Sort of useful. Granted, its obvious how the knowledge of these systems would help me, but this particular class I took doesn't teach me anything parallelism class doesn't. Databases: Yes, you're right, Should have thought that through. Assembly: I just listed this as one of the classes, I don't think its useless, in fact I kind of like it. Project Management: I don't plan on leading any projects anytime soon, I just do what I'm told :) Datastructures: Again, just listed as one of the classes. I have found it very useful. Ethics: Is it just me? Isn't it all common sense? What would have been more useful: More depth on parallelism, considering it has nearly become a standard in home computing. More depth on audio/graphics (maybe seperate classes for animation and realtime graphical rendering

    5. Re:As a CS Major... by ClosedSource · · Score: 1

      While I know a great deal has changed in game development from my Atari 2600 days, I suspect that it still involves providing an illusion rather than really trying to simulate reality. You don't have to look any further than the sound of explosions in space to recognize that. I greatly doubt that game developers are performing a lot of database normalization, using a lot of calculus or applying operating system theory in their day-to-day work.

      Programming games, I suspect, is still more a matter of creatively breaking the rules than it is in following them.

    6. Re:As a CS Major... by Cederic · · Score: 1


      Has it occurred to you that learning calculus, databases, etc is only a small part of what you're there for?

      You have the opportunity to learn new ways of thinking, new ways of learning, to demonstrate independent thought and intelligence, and to expand your knowledge.

      Maybe you're a good C/C++ programmer. Maybe your C++ code is written purely using the OO capabilities of that language and that's why you found Java trivial. Maybe you'll find a C/C++ job and never have to touch anything else. Maybe your lack of well-rounded skills and experience wont inhibit your career.

      Good luck.

    7. Re:As a CS Major... by Have+Brain+Will+Rent · · Score: 1

      You know what struck me about your post? First, that you felt an ethics course was useless. Second that you really don't want a CS degree - you should hasve gone to a training school not a university. A university degree program is not supposed to be job training, it is supposed to be a broad education. The sad thing is that nobody told you this before you started and by 4th year you don't seem to have figured it out.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    8. Re:As a CS Major... by Dutch+Gun · · Score: 1

      I always find "ethics" courses somewhat amusing. If you need a college course or a seminar to determine the difference between right and wrong, then you probably missed a couple of important life lessons somewhere along the way. I blame your parents.

      Here's a quick test to determine your computer science ethical awareness level:

      Is writing a spam-generating client program evil?
      [ ]yes [ ] no

      Is creating a fleet of zombie Windoze machines to launch DDOS attacks against your enemies' websites considered unacceptable behavior?
      [ ]yes [ ] no

      Might it be considered unethical to hack a banking system to send all those leftover partial-cent calculations to your Swiss banking account?
      [ ]yes [ ] no

      Is it wrong to write a virus that penetrates the US Military network and simulates a massive preemptive nuclear strike, thus triggering World War III and dooming the humans race to annihilation?
      [ ]yes [ ] no

      --
      Irony: Agile development has too much intertia to be abandoned now.
    9. Re:As a CS Major... by Wicko · · Score: 1

      The ethics course I took was damn useless. I felt I learned very little knowledge that I didn't already have. Maybe for some people its a new concept, but to me its common sense. It certainly wasn't worth the 500$ I had to pay for it. Secondly, yes you are right. I would have liked to have gone to a "training school". But, really I wonder what an employer likes to see more on a resume. So before before you start posting about how sad I am, you should probably give me a little credit first.

    10. Re:As a CS Major... by Wicko · · Score: 1

      Yes, thanks for pointing out the obvious. What you wrote about well-rounded skills, and C/C++ etc etc, well, oh my, seems like you tried to be funny. Please read my posts more carefully. Did I say Java was useless? No. I said the course was. Although, Java doesn't seem to be all that popular. How many sleek, low memory consumption, low CPU clock consumption Java programs are commercially available, as opposed to C/C++? Not alot. I would hazard a guess that C# also takes a large portion of that as well. I'll leave java to the web developers thanks.

    11. Re:As a CS Major... by Cederic · · Score: 1


      Java doesn't seem to be all that popular

      Depends which line of business you enter. Goto http://jobserve.com/ (the biggest UK IT job board) and search for C++, then search for Java. I'm making it nearly a third more jobs in Java.

      Now do a search for 'C++ and SOA', then for 'Java and SOA'. 20 C++ jobs, 106 Java ones. Heard of SOA? Understand it inside out? That's where the money is now.

      Nothing to do with games programming of course, of no interest to people writing desktop applications, wont help kernel hackers or (most) smartphone developers. 100k Indian CS graduates a year aren't in those fields though; draw your own conclusions.

      Quite simply, you give the impression of being arrogant, and of not trying to learn new things. That frustrates me, I hate to see anybody artificially limit their horizons, especially through ignorance. There is a world out there beyond your limited skillset. Refusing to embrace it is fine if you can be comfortable in your own small sphere. Refusing to acknowledge it is entirely foolishly.

    12. Re:As a CS Major... by Have+Brain+Will+Rent · · Score: 1

      Are those the sorts of questions that you think an ethics course deals with? You should inform yourself.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    13. Re:As a CS Major... by Have+Brain+Will+Rent · · Score: 1

      First, if you were already familiar with the material, concepts etc. then perhaps it was a waste for you, but the solution to ethical dilemmas generally do not follow common sense and most people do need to be taught.

      Second, if you were well aware of what you were getting into and made a reasoned choice that you continually revisited then I apologise. In my defense I saw and heard comments like yours all the time when I was a student, then as a lecturer and now just as someone who reads the editorial pages of the local papers. They are almost always made by the clueless, frequently in the context of "but nobody told me that it was so hard to get a job dealing with 12th century middle eastern poetry and now I can't find a job and I have huge student loans to repay.... wahhhhhh".

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    14. Re:As a CS Major... by Wicko · · Score: 1

      I enjoy learning new things. That's why I'm in university. You are right, however, it definitely depends on the line of business. The line of business I am interested in certainly doesn't involve java, which it then becomes of very little use for me, and which brings me back to my point about why we should be given more choice (what I was getting at in my original post). Apologies if I made it unclear, my skills do not lie in writing. What I'm ultimately trying to say, is Java should NOT be forced upon students as it was for me. This kind of thing should be open to choice, and I believe that choice could bring more students to CS. This is just part of the choice, as I don't believe its the only thing in need of repairing. OO programming can be accomplished in C++ as well, and I think giving that kind of option to learn one or the other, would benefi many students. Yes it is more difficult to create perfectly OO code in C++, but I would imagine it would be beneficial for students to not rely on Java to do it all for them. You could go into the theory a little deeper than I was taught but I believe coding it for yourself is better practice. Maybe thats just me.

    15. Re:As a CS Major... by Wicko · · Score: 1

      I've yet to come across people I personally know that need to be taught about ethical practice, but I guess the people I know are just a small sample of a huge population right? So my opinion is certainly biased. No worries, I get a little defensive sometimes. Its completely understandable to assume I was just throwing a useless, ignorant opinion around, especially if you were an instructor, I can only imagine what you've had to put up with. Its good to know there are reasonable, intelligible people here on slashdot :)

    16. Re:As a CS Major... by Wicko · · Score: 1

      The fact that you can't read a post is indicative of your literary skills.

    17. Re:As a CS Major... by Wicko · · Score: 1

      You are 100% correct.. if we followed even remotely close to how physics is actually calculated, no one would want to play any games, because of horrible framerates.. take Ray Tracing for example. It models light sources pretty decently, far from perfect, but actually follows physics laws (reflections, refractions, shadowing, etc). Yet it is so computationally expensive that it is extremely rare to use it in realtime. I'm sure many animated movies use it or something similar, but as it stands hardware just isnt capable. So we still use rasterization to get the job done. If any calculus is done, its behind the scenes like for graphics libraries perhaps. Thanks for your input. :)

    18. Re:As a CS Major... by Dutch+Gun · · Score: 1

      No, they deal with much more complex issues, and to a large extend, legal issues. While they do provide some interesting forums for discussions, for the most part, I still find them (or, more appropriately, found the particular class I attended) something of a philosophical sinkhole. That is, as with most ethics-related debates, a fundamentally simple thing tends to quickly get over-complicated and mired in intellectual posturing. We never see that on /. now, do we? ;-)

      I was hoping the ridiculous nature of some of my questions would indicate that I wasn't being 100% serious. -1 failed humor, I guess.

      --
      Irony: Agile development has too much intertia to be abandoned now.
  42. Vocational by flyingfsck · · Score: 1

    Absolutely, CS needs to include practical courses like Burger Flipping 101 and Cash Registers 101...

    --
    Excuse me, but please get off my Pennisetum Clandestinum, eh!
  43. Nothing needs to be done. by Marcos+Eliziario · · Score: 2, Insightful

    The market itself will start having to pay higher salaries for professionals desperately needed and increasingly harder to find. This will attract more people to the field.

    --
    Your ad could be here!
    1. Re:Nothing needs to be done. by StrawberryFrog · · Score: 1

      Looked at job ads recently? - professionals are harder to find already. However, the length of time to get qualified at university (three years plus) amkes for a sluggish feedback loop and undamped oscilation. Something should be done to correct for the overcorrection :)

      --

      My Karma: ran over your Dogma
      StrawberryFrog

  44. I am not surprised by Anonymous Coward · · Score: 1, Insightful

    Not syprised at all.. and I beleive students are right to flee the discipline. I personnaly got a bachelor in applied computer science and a master degree in software engineering. I went in because I didn't know what to choose and figured going to CS would expose me to a large spectrum of different problems and fields. I also really enjoyed building things and creating solutions to help people and save times. Solving hard problem is something I really like. And I had fun...
    Until I started to work the field is filled with people with no knowledge who thrive by throwing buzwords around, pushing the latest trend and repeating general statements they have read online or in magasines. Most of the time they have no idea of how to build systems.. .mostly because they have not been trained for it. You get so many people with community college degrees, business degrees etc. who get to be analysts and decide making many choices before anyone with in depth technical knowledge gets to say something. Even promotion possibilities seem grim since CIOs amnd other managers even of technical teams have no technical background.
    Would you ever see a CFO without an acounting degree?

    Sure games or start ups are more fun... but it's hard to live decently doing that, either the pay is bad or the hours are insane (even in games the true stars are the game or art designers... not CS people). Scientific applications are fun but hard to come by, mostly because scientists know how to program themselves.

    Welcome the the CS people, clerks of the new millenium. They just do as they're told.

    Sorry for being so grim... there is probably a lighter twist to it, but these days that is the way I see it.

  45. Sure it's dead by ErGalvao · · Score: 1

    Students don't like CS anymore!

    --
    Er Galvão Abbott - IT Consultant and Developer
  46. Having done both... by AmazingRuss · · Score: 1

    ...I would have to say that writing a game engine in c++ is much MUCH harder than writing something to run against a database in a browser. There's nothing wrong with writing web apps, but nothing hard about it either....after the first few it just becomes tedious repetition.

  47. CS != ECE by woolio · · Score: 4, Insightful

    (Disclaimer, I'm an Electrical Engineer).

    I normally see just much of what the parent has listed as being part of an Electrical Engineering disciple. In my experience, Computer Science just does not take on these areas... (CS people studying information theory *today*, HA that's a good one!)

    Isn't work in multimedia codecs typically done by Electrical Engineers (signal processing, embedded systems)? The design/implementation of MPEG video codecs requires background in signal processing, VLSI techniques, etc....

    My somewhat biased view is this: if it involves calculus, (mathematical) optimization, advanced probability, adaptive algorithms, etc, it is usually part of electrical engineering. On the other hand, if it involves abstract algebra, applied linear algebra, heuristic algorithms (i.e. those not based upon mathematical optimization), discrete math, compiler design, it often falls under computer science.

    I've taken a sizable number of CS classes. Case in point: the Fourier Transform is apparently a new concept to CS Graduate students in a highly ranked ("Top 20") US University. Even more disturbing: deriving the DFT of a simple sine-wave was considered overly difficult! Yes, I realize most CS majors don't do this every day... Then again, its only simple calculus, and is taught to EE sophomores/juniors! This is not the only example and I could go on and on....

    I'm not trying to start a flame-war, I just don't see CS as being "math-based" compared to other fields. For me, CS is somewhere between Information Technology and Engineering in terms of math.

    1. Re:CS != ECE by Anonymous Coward · · Score: 1, Interesting

      As a Computer Engineer, I agree with you. However, different universities have different stipulations for course work.

      For example, at my undergrad/grad institution, the University of Florida, courses like image processing, robotics, multimedia and compression, and physical network theory (optical and wireless), were taught in the Electrical and Computer Engineering Department. On the other hand, courses like computer graphics, AI, bioinformatics, and algorithm/language based courses were taught in the Computer Information Sciences and Engineering department (basically the CS department). There was a rather high degree of separation between the departments, since the ECE department focused more on hardware with a little bit of software, while the CS department focused more on software and a tiny tiny bit of hardware. Though, as you pointed out, the math requirement for the CS department was less than the ECE department.

      However, at my present university, the University of Missouri-Columbia, things are a bit different. Courses like image processing, AI, pattern recognition, visual DSP (image/video compression), etc. are offered jointly by both the ECE and CS departments and taught by a single professor. Normally the professor is from the ECE department, however, my professor for Image Processing II was from the CS department. Regardless, as you have pointed out, the people from the CS department are rather confused when presented with things that EEs and CENs take for granted, such as convolution, signal and controls theory, the Fourier Transform, etc. But aside from image processing or image compression, is there a real need for them to know such concepts?

    2. Re:CS != ECE by Krakhan · · Score: 1

      There's so much overlap within CS and other fields though, that you can't say that stuff with Fourier Transforms belong solely to the domain of engineers (It was originally considered when solving the Heat Equation).

      I'm in CS and Pure Math, and I have seen the Fourier Transform, and how it's used for doing stuff with data compression (neat stuff!).

      Again, due to several non-standard definitions of computer science, what it is depends on who you ask and where you take it. This in contrast with Engineering, since here in Canada, there is the Canadian Council of Professional Engineers which basically dictates what gets taught in accredited Universities, in addition to a bunch of other stuff they do as well.

    3. Re:CS != ECE by CastrTroy · · Score: 1

      CS is somewhere between Information Technology and Engineering in terms of math
      I took software engineering, and I actually find it kind of odd that the software engineers took more math courses than the computer science students. We took Calculus 1 and 2, Algebra (I took an Algebra 2 as an elective), Discrete 1 and 2, Physics (lots of math), Statistics, along with lots of other courses that needed a lot of math. Considering the software engineers are supposed to be more involved in dealing with high level things, while computer scientists are supposed to be working very close to the hardware, developing algorithms for dataprocessing and such, I found it weird that they wouldn't take more math than us.
      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    4. Re:CS != ECE by Have+Brain+Will+Rent · · Score: 1

      normally see just much of what the parent has listed as being part of an Electrical Engineering disciple. In my experience, Computer Science just does not take on these areas...

      You should check out a better school then. I agree with the list posted by metlin - that is pretty much what is in a modern computer science curriculum.

      Isn't work in multimedia codecs typically done by Electrical Engineers (signal processing, embedded systems)? The design/implementation of MPEG video codecs requires background in signal processing, VLSI techniques, etc....

      You mean implementing the algorithms designed by others, perhaps even by people with CS degrees? As for some CS people not knowing about Fourier Transforms... so what? That is an incredibly tiny and specialized bit of knowledge. The first time they need to do something involving transforming between frequency and time domains they will learn about Fourier transforms. That's certainly the way it was for me when I needed to write some analysis software for a physicist. I mean it's not as if FT's are the same difficulty as say string theory.

      In my experience it is not uncommon to find versatile people who are competent in more than one domain. For example you might find an EE who can also construct quality software... but I don't think that is the norm. And I don't think it is the norm for an EE to have the same depth of understanding about computation as a CS grad. For example most EE's I've met don't really get NP and why it is important. And that's ok - most CS grads couldn't design a circuit to save their life. The two degrees are for different purposes.

      The one that does get me most often though is the attempted hybrid, the so called "Software Engineer's", since they don't seem to be particularly good at engineering or software. Example: I was working with some software engineers and an external disk drive started having problems. I pointed out that the daisy chain hadn't been terminated because someone had taken away the last drive and left the (previously N-1) other drive with the cable dangling free at one end. They didn't understand why that was a problem. When I tried to explain impedance mismatches and signal reflection they wouldn't believe me - they started laughing because they were convinced I was making it up to pull their legs - even after things started working whenI pulled the cable off and properly terminated the drive in front of them. Example: a software engineering grad was working in the cubicle beside me and was trying to debug some firmware with a pretty primitive development tool and wasn't getting anywhere. I can't remember what he asked me but my answer was "take a look at the previous stack frame and see what the variable value was then" and he responded with (I kid you not) "what's a stack frame?"

      EE grads and CS grads do not study the same things because they aren't going to be doing the same things when they leave university. The need for one group to feel superior to the other is just silly. A claim by one group to be able to do all their specialized work *and* the specialized work of the other group is just arrogant.

      --
      The tyrant will always find a pretext for his tyranny - Aesop
    5. Re:CS != ECE by woolio · · Score: 1

      EE grads and CS grads do not study the same things because they aren't going to be doing the same things when they leave university. The need for one group to feel superior to the other is just silly. A claim by one group to be able to do all their specialized work *and* the specialized work of the other group is just arrogant.

      Sorry, I didn't mean to sound as if one is superior than the other -- just different.

      And BTW, the Fourier Transform (or the related Z transform) is used for a whole lot of stuff other than EE. If you have to multiply huge polynomials, it can perform the multiplication very quickly. If you are working on an image processing app, it can be used to blur/enhance/find edges. It is an essential component in audio/video compression. In fact, I bet you can put "Fourier Transform" and "" as search terms in Google and find it being used there. Its not just an "EE thing" -- its a very practical science/engineering "thing".

      You also make a good point... I've also met a number of EE's who aren't interested in programming and really don't care about P and NP... While CS and EE may be different subjects, I feel there are certain basic things that should be common to all science/engineering.

    6. Re:CS != ECE by rawdot · · Score: 1

      I got an undergraduate CS degree from Rice University in 1986. It was during my 4 years there that the CS department was created. Previously it had been a program jointly administered by the EE and Mathematical Sciences (aka Applied Math, already separate from the "pure" Mathematics department) departments.

      Given this history our courses tended to be cross-listed as CS, EE, and MS courses. We had "real" EE classes and "real" math classes as requirements for graduation. Other classes were real CS courses that some EEs (and fewer Math Scientists) would also take, e.g. Algorithms and Data Structures, Compiler Design, Programming Languages. But others were straight EE (Digital Logic Design) or MS courses (Linear Algebra). Heck, we even had to take a logic class that was listed as a Philosophy course!

      We tended to have one or two courses per semester that required programming, but the majority of the work was written (algorithms written in an abstract language, complexity analysis, proofs).

      So today I do IT stuff, even much-dreaded web development. But similar to the IT:CS::plumbing:physics comment earlier in this thread, I consider myself a plumber. I don't do much CS. But I feel I have a deeper understanding of what's going on below the surface than folks who've just learned "programming" and I'm confident I can learn any new valves, pipes, and regulators that come along in the future.

      Cheers,
      Richard

    7. Re:CS != ECE by Dr.+Blue · · Score: 1

      On codecs, I've seen both CS and EE types work on these. What differs is the approach.

      It's rare that I've seen a CS person appreciate the underlying component analysis that a Fourier transform represents, and what it means in real, physical terms.

      It's also rare that a EE understands what makes the FFT fast (nlogn vs n^2 algorithm), and how that represents a fundamental computing paradigm (divide-and-conquer) that's useful in many other situations.

      In the best of all possible worlds, the EEs would concentrate on the physical aspects of things and make clean mathematical models, and CS people would take the clean mathematical models and apply what they know about the fundamentals of computation in order to solve the problem. Maybe a computer engineer would have enough of both skill sets, but I doubt that somewhat - computer engineers here don't even have to take the advanced data structures course, much less algorithms, so when it comes to designing efficient computational techniques they're at a definite disadvantage.

  48. Not worth it by yaminb · · Score: 1

    Perhaps students aren't as dumb as people think they are.

    But let's see here. You could work your behind off getting a degree in software engineering and earn a good wage, but have to work 60 hours a week, in a cube taking crap from management and clients and deadlines; not doing much of the work you think you'd love and always under the looming threat of being laid off.

    Or, you can get a nice stable job in healthcare or education or with the government. Paid a good wage with good benefits and security and actually be a social person.

    Indeed. The glory days are over and kids are smart enough to understand that you work to live, not live to work. Leave that to the guys in India right? I wonder where the 'A' students are going to go?

  49. A few thoughts by plopez · · Score: 2, Insightful

    1) He cites a 39% drop in students from 2000 to 2005. I contend that the numbers in 2000 were vastly over inflated and so a drop is a good thing. Gets rid of the riff raff and gets the numbers of graduates in alignment with the actual job market.

    2) He speaks of CS, but muddles in things I would refer to as software engineering, computer infomation systems or managment information systems. CS should be research based while SE, CIS and MIS should be more vocational.

    3) There a sort of 'what are we going to do if they slash the department' aspect to the article. My answer, find another job, just like the rest of us who have been laid off. No sympathy here.

    4) He cites 100K IT graduates a year ready to do offshore support work but fails to mention that Indian companies are looking outside of India for labor. There just isn't enough labor out there to keep up with the crappy software. Hint: maybe CS departments should focus research and training on software quality. As a foot note, I wish I had the numbers or an economist would do a study, but in my gut I feel that demand for skilled IT labor is vastly outstripping supply. The US, Western Europe and India are all being depleted, or have been depleted, of skilled IT labor forcing them to look toward Vietnam, Indonesia and West Africa. And that is a huge chunk of the global population.

    5) Another research hint, most software I have seen has been brittle and required much programmer attention as business rules changed. How about focusing on making software soft and flexible? This is very much where AI techniques might be used.

    6) I agree that the best thing to do is to be cross disciplinary. That is where the most dynamic, chaotic wild and wooly problems live. The ones really fun to wrangle.

    --
    putting the 'B' in LGBTQ+
    1. Re:A few thoughts by Travoltus · · Score: 1

      4) He cites 100K IT graduates a year ready to do offshore support work but fails to mention that Indian companies are looking outside of India for labor. There just isn't enough labor out there to keep up with the crappy software. Hint: maybe CS departments should focus research and training on software quality. As a foot note, I wish I had the numbers or an economist would do a study, but in my gut I feel that demand for skilled IT labor is vastly outstripping supply. The US, Western Europe and India are all being depleted, or have been depleted, of skilled IT labor forcing them to look toward Vietnam, Indonesia and West Africa. And that is a huge chunk of the global population.
      This is an out and out lie.

      There are large numbers of CS grads - A+ kids, not the C- near-flunkouts - who are working at Wal Mart waiting for an IT job.
      --
      --- Grow a pair, liberals... stop letting the Republicans bully you!
  50. Thanks but no thanks. by Anonymous Coward · · Score: 5, Insightful

    I went to college to get an education, not training. If the education was a good one and you're reasonably talented, you should be able to fill in any holes in your knowledge yourself.

    Of course it helps to find an employer who can recognize this and is willing to invest in you. Rather than, say, one who might be trying to pay bottom dollar for recent grads while simultaneously expecting them to already know everything about programming in a business environment?

    (just my $.02)

    1. Re:Thanks but no thanks. by booyabazooka · · Score: 5, Insightful

      I went to college to get an education, not training.

      Amen. I am astonished by the general public which advocates liberal arts education for general self-betterment, while condoning learning in computer science only if it "gets you a job." I learn CS theory and practice software development because I love it. The side-effect that it keeps me employed is an added bonus. I am not earning my degree as a permit to enter the workforce. I study computer science because I want to.

      This is why I find these Slashdot discussions on education amusing; so many commenters try to make statements as to "what universities should teach." A university is a seller which should pander only to its clients - the students attending it. As such, the only thing that should be taught is what the students want to learn.

    2. Re:Thanks but no thanks. by DireLogic · · Score: 1

      I went to college to get an education, not training.

      I also agree. I'm in college now, shooting for a Computer Information Science major within our business school, and I came here to learn, not get skills for a job.
      I have grown up knowing that college is intended for those who wish to learn things, not learn skills.

      I come from a self-taught background in computers, and have three years of professional experience. From what I've seen, college is the difference between having a job in the IT/CS field or a career in the IT/CS field.

      I say that when the day is done, college is a good ROI, as long as you milk it for all it's knowledge.

      --DL
      --
      The generation of random numbers is too important to leave to chance.
    3. Re:Thanks but no thanks. by Anonymous Coward · · Score: 1, Interesting

      I am finishing a degree in CS.

      I have been programming for passion since I was 13 year old and I'm absolutely delighted that our course is theoretical. With personal investment in learning the practical arts of programming and software design I managed to stay unemployed for only 1 week over the last 3 years.

      It was hard learning how to program (especially since I started with Perl :D ) but all the other programming languages were easy there on.

      Most people on my course, though, have not made this investment. They have tried but failed.
      It's sad to see so many students joining the CS degree because of their passion of computing being let down by the course. While theory is great, I feel every course should teach two computer languages: a programming language (Java/C#/C++/other structured imperative OO language) and a "scripting" language (Perl/Python/JavaScript/Bash/other interpreted and dynamic language). It would put a smile on quite a few frustrated faces :-) -- not just students!

      In summary, go for theory, but add a pinch of practicality!

    4. Re:Thanks but no thanks. by Darth_Burrito · · Score: 1

      A university is a seller which should pander only to its clients - the students attending it.

      At a lot of institutions, particularly public ones, a great deal of the funding comes from tax dollars. In other words, society is a client of universities. This money is being spent for the greater good and... jobs and economic growth are all part of that. Also, as someone who works with a career services office, I can tell you that most students are very very very interested in using their degree to obtain a job.

      I am astonished by the general public which advocates liberal arts education for general self-betterment, while condoning learning in computer science only if it "gets you a job."

      I think you're setting up a straw man argument here. Most people don't talk in these kinds of absolutes. There's just some of us that would like to see an education in computers that was more practical: design, usability, project management instead of axiomatic semantics, non deterministic turing machines, and calculus 4. Part of the problem is that a lot of people want a software engineering degree and most schools only offer computer science.

      Getting back to your comment about how a university should pander to their clients... when I went to school... there was an attitude among many of the faculty that they were here to "teach us how to think". It was fairly condescending and a lot of the required material was thrust upon unwilling students. In other words, there were many courses that students only took because they were required, not because they were useful to the student, not because they were interesting to the student.

    5. Re:Thanks but no thanks. by Chode2235 · · Score: 1

      computer science is incredibly valuable as a profession, but not because it makes you a good programmer. It is a framework for thinking about the world that focuses on abstraction, compartmentalization, and procedure. These are very important things to be able to do, and serve you well in many areas beyond programming. I think the problem is that computer scientists only view themselves as programmers. There is no reason why computer science students shouldn't see a career in business, or even theology. The profession has boxed itself in for too long, but the framework of thought that computer science teaches is valuable in many areas outside of programming and its time to encourage people to branch out.

    6. Re:Thanks but no thanks. by Simetrical · · Score: 1

      A university is a seller which should pander only to its clients - the students attending it. As such, the only thing that should be taught is what the students want to learn.

      Really? Damn, I wish I could convince my university to let me off those bloody humanities requirements, then.

      A better way to look at it is: universities teach things that students may or may not want to be taught, to filter out those who aren't willing to learn.

      --
      MediaWiki developer, Total War Center sysadmin
    7. Re:Thanks but no thanks. by nicholdraper · · Score: 1

      Nothing is worse than working with someone who is ill-suited for their chosen profession. Sadly as demonstrated the American Idol show, too many people get into activities for which they have no talent. I think that the dot com bubble attracted too many poorly talented people in to the computer science field. The same is happening in India. There are talented programmers every where, but finding them is difficult. We have had jobs go unfilled in Utah and India. Not for lack of qualified candidates (i.e. they have a degree and experience), but for lack of talented candidates. Universities aren't the solution. Unfortunately they are run by the same mix of qualified but often untalented individuals found anywhere. That is why you remember the few great professors the rest of your life, and suffer the others.

  51. Re:The way it works at my "/." account. by Short+Circuit · · Score: 2, Funny

    As opposed to the quarter ton who let their CS "gene" go to their heads, and they think they're God's gift to computing. A quarter-ton is 500 lbs, right? So that's what, two programmers? I can compete with that.
  52. Slashdot is learning by AngryDill · · Score: 1

    This ties in well with our discussion last night about Why Software is Hard.


    Software is hard, but it's refreshing to see that Slashdot is learning. Dupes are now posted by reference and not by value!

    -a.d.-
    --


    I'm Erwin Schrodinger and I approve of this message, and I do not approve of this message!
  53. No-one seems to know what CS is by Anonymous+Brave+Guy · · Score: 1

    A lot of people applying for a degree in Computer Science do not even know what they're getting into.

    In my experience, most people who've finished a CS course still don't know exactly what CS is. I'm pretty sure I couldn't give you a robust definition with which no-one equally or better qualified would disagree.

    And this isn't just me. If memory serves, some big names in computing at various US universities recently produced a paper that was supposed to identify the differences between things like computer science, computer engineering, software engineering, and several other related courses. Even in that, they basically came up with a relatively vague definition with lots of overlap between many of the course titles. The differences cited were more in the flavour of the course -- the perspective, if you like -- than in the actual areas of study.

    I think this is a big part of the problem today. No-one really knows what CS is, including most university CS departments.

    --
    If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
    1. Re:No-one seems to know what CS is by ClosedSource · · Score: 1

      I think the goal of trying to make these distinctions is to produce some kind of pecking order where none is required.

    2. Re:No-one seems to know what CS is by Krakhan · · Score: 1

      Yes, that's another thing I didn't consider. CS is such a broad field that it's hard to narrow it down to a single definition. Even on the wikipedia page of computer science there have been numerous debates about what computer science is. Computer science can be anywhere from being a branch of mathematics to a purely technical trade, with all kinds of variations in the middle, depending on who you ask.

      And then there's all the specializations you can do with that degree as well. Take for instance the course calendar section for Computer Science at my university (here). I don't think having those options gives is a bad thing (personally, I feel the contrary), but it could probably making having a clear definition everyone can agree on being more difficult.

  54. "practical" vs "academic" computing by sideswipe76 · · Score: 2, Insightful

    the problem is two fold the way I see it. 1) The market wants tradesman programmers. Something like a carpenter who can just come in and build what the blue prints from the architect say to build. That's really what's happening to the market. It is cleaving into "practical" computing and "academic" computing. The other thing is, it is getting harder and harder to produce truly ground breaking work in CS. Seminal works like the Public Key Private Key exchange and RSA haven't occurred in recent memory (I am sure the ever diligent slashdot crowd could correct me). So, this brings me to a sibling field: Electrical Engineering. When I was working on my MS in CS, a huge portion of the work published and the very professors in the CS department were EEs! Even the field of CS where electronics benefits best (say, optimized wiring algorithms) is still done under the "CS" realm. And then, there is one of the massive trade publication that kinda speaks to this: IEEE (Institute of Electrical and Electronics Engineers). How many of the papers published in their are about the latest in analog circuit design? Sure, there is plenty in there dealing with EE work specifically, but not much. And, finally, 30-40 percent of the people who write code along side of me are EEs.

  55. The problem is that CS needs to be split up by jonwil · · Score: 1

    This is what I think computer related courses should be split up into:
    1.Computer Science (this is where all that fancy math stuff comes from)
    2.Software Engineering (this would have lots of practical programming as well as courses covering things like testing, code coverage, code quality, peer review of code and such that you see in real software engineering shops)
    3.Information Systems (this would cover systems analysis, software design, database design and the other stuff you need if you are going to design programs)
    and then some kind of internet or networking course that covers stuff like TCP/IP, HTTP, the internet, the web, HTML, internet programming (PHP, Perl, javascript etc). Maybe have one course for the lower levels (how to configure routers, subnetting and all that kind of stuff) and one for the upper levels (how to work at the application layer)

  56. quarterlies by Anonymous Coward · · Score: 2, Insightful

    Quarterly corporate statements will never show a return on investment for training done during that quarter. "Investors" want the fastest, highest return possible, every quarter. They want any and all training to come from some other avenue than their pocketbook. If they had to "invest" in training, they would then want long term employees, meaning they would have to offer lifetime contracts, etc, like Japan used to emphasize, along those lines, or the olden days in the US where you could actually plan on a career some place and arrange your life around those expectations and levels. And this is now something which they certainly don't want to do and is nearing total extinction.

          They want disposable tissue paper people, "human resources", worth nothing more than whatever they can exploit the most for, the quickest, and whenever possible, replace even cheaper at the drop of a stock option or a slightly better set of numbers in an SEC filing. You as an employee of some big corporation are the same as the latest desktop or copier or forklift or a supply of toner. You are just another "resource". Desktops and copiers don't need to be trained, just used up, beat up, milked dry, and then chunked in the rubbish and replaced whenever necessary. That's YOU now.

    Change those market rules and onerous practices, put the humanity back into the equation better, and you'd see positive change. Until then, the long slide to oblivion and rule of the patent/obscure trivial "IP" trolls and the loyal to nothing but their wallets globalist/chartists/cabalists, the famed captains of industry now, welcome to the age of....

    The Outsourcer-ers.

  57. Enthusiasm, knowledge and the future by thyrf · · Score: 1

    I recently started a BSC CS degree in internet computing, admittedly because I see it as the best choice for obtaining a good career that I also enjoy. I've always been enthusiastic about computing and was expecting a lot of others like me on my course. Oh how wrong I was. To start, my particular course - for my individual year of study - has 7 students including me. We do a lot of CS courses at our uni so we modularise certain aspects and as a result end up sharing lectures with up to 200+ others, but this will lower as the years progress and the modules become more bespoke to the course.

    Out of everyone I've met in various seminars and lectures not a single person has a genuine interest in computing. Next to none had former academic experience in computing (the general trend was ICT), next to no one in the programming sessions had done any type of high-level or otherwise programming, next to no one had written a web page in html, the list goes on. Does this unnerve me? Yes. Don't get me wrong, there'll be some out there but the ratio is slim. I'm a little comforted that they teach everything from scratch so you can learn to enjoy it. Although I know a lot of the stuff being taught now it's fun to be taught it in person and to also learn new things I didn't pick up the first time.

    Despite this, the view I get is that all people want is safe entry into a career, rather than academic knowledge. Who mentioned we were down to the enthusiasts?

    I've been thinking of switching to computer science as a whole but I believe when I aim for a job (which will be web-related, it's what I want) this degree will suit me more. The thing is, I don't want a job which non-enthusiasts can obtain just as easily. Surely there must be some professions out there that value us?

    1. Re:Enthusiasm, knowledge and the future by TodMinuit · · Score: 1

      Do you think anyone majoring in architecture has designed a building?

      --
      I wonder if I use bold in my signature, people will notice my posts.
  58. refs by plopez · · Score: 1
    --
    putting the 'B' in LGBTQ+
    1. Re:refs by Travoltus · · Score: 1
      I'm talking about the US, not India.

      The US, Western Europe and India are all being depleted, or have been depleted, of skilled IT labor forcing them to look toward Vietnam, Indonesia and West Africa. And that is a huge chunk of the global population.
      The US has quite an abundance of skilled IT labor domestically. They're just being denied jobs in favor of a racist "foreign, cheap workers only" policy.

      Nobody's being forced to look toward Vietnam, Indonesia or West Africa; it's just cheaper and it allows corporations to go back to the sweat shop mentality that isn't legal here.
      --
      --- Grow a pair, liberals... stop letting the Republicans bully you!
    2. Re:refs by plopez · · Score: 1

      My point is that they are burning through the labor pool, going for the cheap stuff first, at a rapid pace. It is unsustainable. Wages are rising in India as the demand has increased and will do so as well in smaller countries. This should be interesting to watch.

      As an aside, where I am in the US there is a shortage. We have a hard time finding qualified applicants even for entry level people right now. We pay comparbable wages for our region, so pay differential is probably not the issue.

      --
      putting the 'B' in LGBTQ+
    3. Re:refs by vidarh · · Score: 1
      Really? I manage an engineering team split almost evenly between the US and Beijing, and hiring for the US team was a real pain. Finding qualified people is extremely hard. Finding people in Beijing is tricky too, as demand there is clearly ramping up, but nowhere near the problems we've had in the US.

      And why is it racist to want value for money? Why is it not racist to limit your hiring to the US?

      Yes, finance was one big reason for us to look to China (our cost is about 20% of the same size team in the US), but it is also our second largest market, and so Chinese language skills is also essential to us. But given the cost difference and the problems finding skilled staff it would be suicide for us to limit our hiring to the US only, as it would put us at a significant competitive disadvantage vs. companies located elsewhere.

    4. Re:refs by plopez · · Score: 1

      Finding people in Beijing is tricky too, as demand there is clearly ramping up, but nowhere near the problems we've had in the US.
      I would be interested in hearing if this heats up any more. Post in your journal maybe? How are wages, going up?

      --
      putting the 'B' in LGBTQ+
    5. Re:refs by Travoltus · · Score: 1

      My point is that they are burning through the labor pool, going for the cheap stuff first, at a rapid pace. It is unsustainable. Wages are rising in India as the demand has increased and will do so as well in smaller countries. This should be interesting to watch.
      That point is tangential to my point that there's no shortage of skilled IT workers in America, which makes false the statement that we need to look overseas.

      As an aside, where I am in the US there is a shortage. We have a hard time finding qualified applicants even for entry level people right now. We pay comparbable wages for our region, so pay differential is probably not the issue.
      I manage hiring managers. As the top dog around here, I know what you and other hiring managers are actually saying.

      "[Jan. 2007 job ad] Our entry level jobs call for five years' paid experience in Cell Processor programming and two years of Windows Vista administration. Biotech experience a plus (translation: those without biotech experience might as well stay home)."
      --
      --- Grow a pair, liberals... stop letting the Republicans bully you!
  59. Outsourcing says "No" by Tablizer · · Score: 1

    Who would pick a career that is in the gun-sights of offshore outsourcing and cheap visa workers? Big biz lobbyists are working hard and sucessfully to do to IT what they did to farm work. Pick IT because you *like* it, not because it is a stable career. It is not predictable. Even before globalization, it was subject to 10-year-cycle recessions and constant change of technology. No we have free-trade in the uncertainty mix.

    1. Re:Outsourcing says "No" by openldev · · Score: 1

      Well, this is good and bad. First of all, most of the jobs that are being outsourced are not senior-level development jobs. Also, I believe that most of the people going into CS careers now are those that actually enjoy it. These people usually know what they are doing. Yes, there are exceptions, but since there are less people going in, I believe it is filtering out the type of people that think they are awesome just because they can use FrontPage ...

      People say how there are no jobs available, but I am very close to graduation and I have been turning down employers left and right because I already have a job lined up ...

    2. Re:Outsourcing says "No" by Tablizer · · Score: 1

      People say how there are no jobs available, but I am very close to graduation and I have been turning down employers left and right because I already have a job lined up ...

      See when you are 20 years older when the "IT age stigma" kicks in.

    3. Re:Outsourcing says "No" by Cederic · · Score: 1


      20 years after graduation? shelf-life in the UK expires when you hit 30, 35 for the slow learners. Very hard to find a development job if you're older than that.

      Most 30+ developers I know are contractors. Market conditions and pay differentials are a massive factor in that, but if you want to stay permanent, you need to be in management or a technical route such as architecture. Fewer roles, greater stress.

  60. How about cool jobs by caller9 · · Score: 1

    Smart guys adept at programming need a good challenge.

    It would be sweet to develop realtime OS apps for lunar rovers, or missle guidance software, satellite software, etc. All really cool and really rare. Like a high school football player wanting to play in the super bowl...and ends up 2nd string cornerback in some arena football crap.

    Yeah, just got through watching superbowl, my analogies are jacked.

  61. What?! NO CS?! by Greg.Rodden · · Score: 1

    Theres no way i could of got through school without Counter Strike! This is barbaric!

    --
    I have ridden the mighty moon worm!
  62. That's quite a rant.. by Axe · · Score: 2, Insightful
    ..It sounds all nice and pink, but in reality the best performing companies are frequently those that invest heavily in people, and where best engineers want to work. Turnover of employees is very expensive, and hits in the bottom line.

    It is the sales and marketing drones who nobody cares about - but they do make out like bandits anyway, so nobody should care about them anyway.

    --
    <^>_<(ô ô)>_<^>
  63. Free Market? Or B1-B Visas? by Slugster · · Score: 1

    All these people bitching about "kids these days don't want to learn math" need to get a clue: what got me [and a lot of other students] off that career track after getting an associates was the huge amount of outsourcing being done.
    All the jobs in the want ads that I saw called for "senior-level" people with 5-7 years of enterprise experience, and outsourcing was marching steadily onward, to places even cheaper than India.

    Why bother with slogging through school racking up debt when there's no jobs?
    ~

  64. Question to ask yourself by epee1221 · · Score: 1

    Which do you want your degree to be more like, "___ engineering" or "___ engineering technology"?

    For most people, it seems to make more sense to get a theory-based foundation in the classroom and then learn/implement practical stuff on one's own than to do it the other way around.

    --
    "The use-mention distinction" is not "enforced here."
  65. dying or just less useful to IT? by MarkJenkins · · Score: 1

    If you accept McBride's premise that CS is less relevant today to IT, it does not follow that CS is dying. You could use that premise to argue for why the number of students is dropping, but a drop in students doesn't mean a discipline is dying either. CS is an academic field, not a trade.

    If you're going to claim an academic field is dying you should instead argue that it is no longer intellectually interesting. Specifically, you might try to should show that less people are interested in studying it for its own sake. Don't argue it is dying because less people are in it to get rich, or a career. The loss of such people is really only a loss of bodies that provide funding.

    A reasonable argument that CS is dying would much more resemble the argument that alchemy is dead then the argument that the blacksmith trade is dead.

    I just finished an undergraduate CS degree. I found the field to be interesting. I would like to study more, not to enhance my IT career, not to meet someone else's expectations, but for its own sake. I did observe one thing threatening the academic field of CS; the constant pressure from government and business to behave more like the ICT school Mr. McBride runs.

    I discovered that CS departments like the one I graduated from are stuck managing a delicate balance. If they were to ignore government and industry pressure, they would have less career centric students, and less resources to offer a quality CS education to intrinsically motivated people like myself. But, if they overreact to the pressure, someone like myself could end up with an even lesser CS education than the one I'd receive if all the career centric students disappeared.

  66. The death of CS, long live CS! by BluhDeBluh · · Score: 1

    This is basically FUD. Computer Science is still the 6th most popular degree in the UK according to the BBC, above English and below Business Studies. Computer Science isn't dying, numbers have just settled down to normal levels. It's still much more popular than "traditional" subjects, including History, Mathematics and Physics. As for me, I'm doing a Maths & CS course. Gives me a powerful combination, assuming I don't fail both.

  67. Again journalists make story from nothing... by postmortem · · Score: 1

    ... to make money for living. At Lockheed Martin information session they said they're hiring 800 CS graduates this year only.

  68. re: The death of cs in education? by revolu7ion · · Score: 1

    Counterstrike should never stop educating our kids.

    --
    Jesus Saves
  69. Simple Economics: Demand Is Down, Outsourcing... by littlewink · · Score: 1

    of projects is the norm. And no one wants to go into a field with negative job growth and essentially _no_ future. A job where, after working 20 years, at the age of 40 you'll be forced into another career flipping burgers.

    Screw that. Go into medicine, law, or crime (become a cop).

    The average cop makes only $40k to start, but starts working at age 20 (when they enter the academy), has no college degree, and can retire after 20 years on the job with a far better pension and far better insurance and health benefits than non-police workers. They also get extra jobs outside the usual 35-hour week (yes, that's right, most cops work 35 hours a week and lunch is paid time), paying $40/hour and up so they can earn as much as they want.

    Cops are less likely to get hurt on the job than civilians (but they don't want the public to know that, so please don't repeat it publicly). When you're a cop and retire at age 40 to begin drawing a $80k/year pension, you can also get another outside fulltime job doing security analysis, diplomatic escort, or private-eye work. So at the age of 45 many retired cops are making ~1/4 million per year just putting in time. No overtime _ever_ unless you're paid for it.

  70. The seemingly irrelevent may not be by dbIII · · Score: 1

    When I went to university a major portion of one of the subjects I did was optimising programs for analogue computers. I've only ever seen one of those things possibly soon before it was scapped and certainly never got to touch it's patch cables - but the subject was very useful in terms of modelling systems and optimising the models. It really didn't matter that it was coding in amplifiers instead of a computer langauge - the same principles applied and it often really just comes down to syntax.

  71. Re:Certifications by RoadWarriorX · · Score: 1

    They care more about MSCE and CCNP certifications than they do a Bachelor's degree.

    That's an understatement. Do you know why employers prefer MSXX certifications? The answer will come soon, but first, a story. I had my yearly review recently. This is my fifth year at this company. When I started at this company, I had no certifications (just a CS degree with years experience) and none is required. Each year, I get the usual jerking motion from my manager. "You did great, but you did too much of X and not enough Y". This year, we had an interesting conversation:
    Manager: "You should to get MSCE certified."
    Me: "Why?"
    Manager: "It's necessary path for your career."
    Me: "No, it isn't. What makes you think that?"
    Manager: "It makes your resume good. Plus, we'll pay for it."
    Me: "After five years at this company, you all of a sudden want me to get certified? That does not sound right. I built the good, quality software that makes this company money without those f***ing certifications."
    Manager: "Well, it going to placed as a goal for this year." (He shows me the paperwork.)
    Me: "It's not binding unless I sign it. From my point of view, there is no advantage for me to pursue a certification. It takes time that I really do not have."
    Manager: "You are right. There is no advantage for you."
    Me: "What? Why in the world do I need to do this then?"
    Manager: "Remember, Joe, who left recently?" (Joe's not his real name, duh).
    Me: "Sure."
    Manager: "He held the majority of the Microsoft ceritifcations."
    Me: "So?"
    Manager: "We get a significant discount from Microsoft if we have professionals with the certifications. We will lose about $200,000 in discounts if we do not ramp up more certified people."
    Me: "This is a load of bullsh*t. Why in the world would we put ourselves into this situation?"
    Manager: "Well, we are dependent on them."
    I will stop here, because it goes off into a wild tangent. For years, it always baffled me why some companies would rather hire MSCE's rather than professionals with CS or even Software Engineering degrees. This conversation basically shed a lot of light. I would imagine that A+ certification has similar perks for a company. But, it really shows what companies really care about. They hope to hire under-qualified people to "engineer" their vision, requiring the use of software from vendors, whose ultimate goal is to lock you into their substandard products and offer perks to "certify" engineers for those products. A deadly cycle, indeed.

  72. there is very little of 'science' ... by porky_pig_jr · · Score: 1

    in computer science. it is mostly software engineering, hacking, lots of business-related staff. whatever 'science' is in CS, it is mostly math. So if you want to do programming/other computer related staff, why bother with the whole CS, and if you want to do science, why bother with CS too?

    In my case, I've ended up switching from computer science to math, and what I'm happily working on now. I simply want to learn something that does not change overnight, at the whim of the likes of Bill Gates, or 'new internet business requirmenets', or whatever. something more fundamental, if you wish.

  73. Simple answers to stupid questions, vol. 29857 by felix+rayman · · Score: 1

    what needs to be done to encourage more students to take the courses

    Stop importing scabs when wages for computer scientists go up.

    That's all.

  74. Training instead of education by the_womble · · Score: 2, Insightful
    The article is written by someone who heads a computing department at an organisation that is oriented towards vocational training - until 1992 it was not even allowed to call itself a university. See their history:

    http://www.dmu.ac.uk/aboutdmu/history/index.jsp

    The article a large element of "look at all the useful stuff we do here, not like the useless theory they do at places like Cambridge".

    Sadly, both government and students (not just in the UK) increasingly want two things:

    1. Vocational degrees as directly related to jobs as possible
    2. Easy degrees: the government to makes the stats look better, students because its less work

    There is nothing new about this. There are proportionately for more students far more money going into easy and "useful" subjects like media studies. De Montfort University offers a degree in lingerie design as well as "humanities" degress in dance, journalism and arts management.

    There is less and less interest in hard and non-vocational subjects like maths, English, physics, classics, etc.

  75. This Quote says it all by Ibanez271 · · Score: 1

    "Computer Science is no more about computers than astronomy is about telescopes." E.W. Dijkstra

    1. Re:This Quote says it all by knavely · · Score: 1

      the thing is, they didnt call astronomy `telescope science'.

  76. It depends... by antdude · · Score: 1

    I liked math until it got hard like in calculus, discrete math, etc. I loved geometry. However, I didn't do well math and hence didn't like programming. I managed to pass both CS (major) and required math classes.

    --
    Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
  77. Why "web engineering" is not a degree. by Axe · · Score: 1
    Nothing that is 15 years old is mature enough to be a university specialization. It is barely good enough for a couple courses.

    Nothing that is that immature a full of bad practices consistutes a solid foundation for your education. One will pick up enough crap during actual work. College is the time to put some order into your brain.

    --
    <^>_<(ô ô)>_<^>
  78. The problem starts earlier by bongomanaic · · Score: 1

    We are reaping what we have sown. Rather a lot of schools in England latched onto the 'GNVQ scam' whereby they could get a boost in the league tables by funnelling large numbers of 14-16 year olds into vocational GNVQ courses where success is ensured by generating large amounts of coursework without a great emphasis on conceptual understanding. These courses are deeply unsatisfactory for the sort of people who would be interested in traditional computer science and there has been a steep decline in the number 16-18 year old students studying academic Computing and ICT A levels. Taken together with the decline in Maths and physical sciences this means there isn't a huge number of people who are both able and willing to study computer science at undergraduate level.

  79. Re:An A+ cert has as much to do with ComSci by stinerman · · Score: 1

    Agreed. Now if we can just get the folks in HR to acknowledge it, we'll be in business.

  80. software engineering, not computer science by adawgnow · · Score: 1

    The author of the article has really appropriated the field of computer science for his own eyebrow-raising purposes. It seems to be working with most respondents here though. He basically said CS is not convergent, its not a science, its not applied math, it involves a broader range of disciplines and will ultimately fade away. So the response from every sane person should be, "It is math you idiot. It is probability, it is linear algebra, it is discrete math!" And you can't argue that; this is computer science and you can't change that. As long as there are computers there will be a need for computer scientists. His argument was really talking about software development in the face of industry, business and the almighty user. He should have been talking about how computer science departments are where most software developers and engineers are educated and that really isn't the right place for them. There should be a larger school of engineering and software development that teaches a broader set of topics for the ever broadening field of computation. This field will be technical, it will involve software and understanding of computer science, and the math that supports it. But it will also involve an understanding of other divergent fields that can be applied to the development of computer systems like information science, usability, anthropology, cognitive psychology, etc... There aren't too many reputable schools that do this well. Whenever I hear about this stuff, the graduates of these schools can't develop software worth a crap or design worth a crap. CS grads can't design worth a crap either because CS shouldn't teach that, it should be taught in software engineering and thats where the job demand is always going to be. There's always more engineers than scientists.

  81. The Meaning of a "CS" needs to be re-thought by FlyingGuy · · Score: 5, Informative

    When i was in HS ( '73 - '77 ) being a Computer Scientest was meaningfull because they were the guys creating what today we call a "computer" along side guys with "EE" degrees. The EE guys built logic circuits that the CS guys wrote, by todays standards, primitive code that made them work. Compliers were extremely rare and we barely had "high" or "mid" level languages. Most stuff was writtin in machine code.

    Now contrast that with today. Compilers, good ones even, are really a dime a dozen. Linkers and assembler are the same. The very talented have created languages, structures and frameworks that take most of the "programming" out of what people do today. Look at Java, Delphi, C#, C++, Ruby, Python, Perl, C, VB, all of them. How much really guts low level programming to the vast majority of programmers really do?

    There are libraries and frameworks for practicaly everything. You need a database? Go download MySQL, Firebird, Oracle, DB2, Interbase etc. You want to build a UI? There is the entire MS-Windows API, Gnome, Aqua, KDE and numerous others. Need to talk TCP/IP, there are libraries for that on every platform, with simple invocations for just about every language. Almost everything low level these days has had a wrapper for your favorite dialect put around it.

    The vast majority of programmers these days are more or less scripters. Yes you use the vocabulary of your favorite language, but lets be real here for a moment. Lets say you want to represent a list of files to a user via some UI. Are you going to go out and write the very low level code that will determine, with a mathematical proof, that you are reading the file entires on the disk drive to make sure you are doing it as fast as possble? Nope. In windows you are going to use the FindFirst / FindNext API. In *nix you might just spawn off a find thread and get its results back through STDIO. Thats not what a lot of people would say is programming in its classicle sense of the word.

    A lot of the first programs i wrote that had a user interface sent me into long nights of just handeling field input, because at that time I was programming in Turbo Pascal 3.x and there were no librairies or API's that did that for you. So I was writing loops, capturing keyboard input, checking to see if was a function key that was pressed and if not then, well most of you know the drill. I had to build it all myself. But the best thing about that was that I had total control of the user expirience and I had total control of the way the software worked. There was very little in between me and the hardware.

    These days its hard to even find the hardware, much less interact with it. Everything is burried under virtual methods or its being controlled by the underlaying OS which cannot give you direct control over it, because 8 other programs are all trying to use the same bit of hardware. I used to be able to stuff the keyboard buffer, now I stuff the message queue and its harder to deal with then the keyboard buffer.

    The market forces really have not changed, as others have asserted, the nature of the beast has changed. I am 48 years old and 25 years ago there was barely a thing called a network, these days its ubiquitous. 25 years ago you had to either be one very smart mofo or you had to have a degree in Computer Science to be able to do anything other then what you got on a floppy. I was not one of the latter, and I worked HARD to understand what was happening inside tht box. I spent many many nights laerning about interrupt controllers, about drive controllers ( MFM anyone? ) about starting drive diagnostics with debug and understanding what the hell I was doing. I cursed IBM daily for dropping all the memory mapped hardware into the TOP of the address space instead of the bottom, OHHHH how I cursed them. I learned the LIM spec and how to shuffle chucks of memory around. but I digress...

    Business embraced the beast and the beast grew and matured. Todays business does not need a person with a CS d

    --
    Hey KID! Yeah you, get the fuck off my lawn!
  82. In my university CS = math by superdx23 · · Score: 1

    I'd say it was 75% math, 24% programming, 1% other junk they force you to fill your required credits.

    It was hard. I didn't really know what to expect going into a CS program that gave you a degree that read "Bachelor of Mathematics", but those math courses were some of the most difficult things I ever took. Some of the third and fourth year courses which combined both math and algorithms were the litmus test of a true computer science student. We had a third year course (345 or 360?) that was focused on exactly what I just mentioned. We just to joke (grimly, downwardly) that if you could pass this, you were basically a CS major. The count of false fire alarms/bomb threats/suicide notes during the examination period of that course indicated how hard it was. My exams got rescheduled 3 times just for that one course. 2 bomb threats, 1 suicide note.

    I don't remember programming anything interesting or useful or dot-com like. The algorithms and problem solving techniques were pretty interesting but only here and there. A lot of it was a lot of grunt work through very obscure material 99.995% of the human population does not care about. And you will not use in your future job. I think I used recursion once, and a binary search once in the 5 years since I left the university. And both tasks were easier than the first year homework assignments they gave us (and also everyone in the industry would know about it i.e. manufacturing bill of materials, and calculating the COGS in financial applications).

    I felt a lot of the material was very academic in nature and unless you went all the way to a Ph. D, you weren't going to be able to leverage the material in a job. Interesting in it's own right if you are into these kinds of things.

    That being said, my interest from computers originally came from doing little programming things on my spare time and playing computer games, which I'm assuming most guys get their thing for computers. But it doesn't translate into being a CS major. I'd say CS majors were people with an affinity for mathematics, and not very much interest in why Linux is better than Windows. Sure there were those kinds of people in my class, but out of a class size of 50-80, I'd say only 5 fit that bill. I managed to make it through the curriculum but if I had to do it again, I'd major in something like law and do a minor in information technology which is a lot more useful.

    The worse part is, I think CS majors now have exceptionally difficult times landing a first job with little job experience. When I graduated, outsourcing was already moving ahead and many fellow graduates were being sent down to the states, Mexico, India or China to train their own replacements. I can only imagine what the situation is now.

    As far as job security, a bachelor CS is pretty bad unless you have a well-established set of technical skills. A CS job != comfy Linux admin job with 3 monitors and a free reign to abuse your peon users. This you can get from any technical college. If you are really interested in the material itself, go all the way to Ph. D and consult big firms who will pay for your brains.

    1. Re:In my university CS = math by Have+Brain+Will+Rent · · Score: 1

      I felt a lot of the material was very academic in nature

      Wow. Really? And in a university you say? Well, we can't have that, now can we?

      --
      The tyrant will always find a pretext for his tyranny - Aesop
  83. It's a problem with the terminology by trainsnpep · · Score: 1

    People drop their CS major when they realize computer science is the science of computing, not the science of computers...

    --
    --<Mike>--
  84. Oh, wrong topic. Sorry. by the+cleaner · · Score: 1

    I read Slashdot mainly though RSS and initially came here to read about another school shooting...

    Well, what do you expect, when you have the words "death" "CS" (which can or can not stand for CounterStrike) and "education" in one line...

    --
    Could be worse. Could be raining.
  85. 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

  86. Different schools by kwikrick · · Score: 1

    I agree with the parent: software engineering and computer science are different diciplines.

    CS studies theoretical and hard practical problems, comes up with new theory and constructs for use by software engineers and designers. The latter solve relatively easy practical problems and use the theory and algorithms that CS has produced. CS is closely related to mathematics, but typically studies discreet problems and logical constructs. SE is a much more practical field that procudes large pieces of software, requiring software development tools and methods, many man hours and management.
    Computer scientists produce typically small programs that demonstrate a particular algorithm works and produces theoretically predicted results. SE tools and methods can be used but are not essential.

    It would be a good thing to have different schools for the different diciplines.
    That way, students who like working out theoretical problems, choose for CS. They'll propbably end up in an academic career or corporate research facility. Students who want to work on practical problems and just produce software should choose SE.

    Ofcourse there is some overlap in the curriculum, e.g. both software engineers and computer scientists need programming skills. But these days, almost every scientist, in any field, needs programming skills.
    It's just a skill many people need, like a basic grasp of mathematics.

    In fact, here in The Netherlands, we have a distiction in universities: some are called 'higher school' (hoge school), others 'university'. The first provide SE education, at a high level, but aimed at practical skills. They turn out good software engineers and software designers. Universities provide CS studies, but the curriculum contains both practical and more academic courses. The universities turn out scientists, but also software engineers and designers. Arguably, the engineers with a higher school education are actually better prepared for the job that the university people, as they have less theoretical baggage and more practical skills.

    --
    assignment != equality != identity
  87. de monfort by hauntingthunder · · Score: 1
    For the benefit of non UK people.

    De Monfort is a very! lowly rated University only Luton ranks below it - so its a bit cute that the BCS published this where is the article from someone from a Good university with a rep in computing (imperial, Cambridge etc)

    It used to be a polytechnic and the bit that used to be based where I live was renowned for teacher training mainly PE teachers.

    --
    You will never get to heaven with an Ak 47... But A Zu 30 is good for Low Flying Cherubim
  88. Speaking as a CS student by shish · · Score: 1

    Good! There are far too many people on this course who have no idea what they're doing -- about 90% of them, I'd say -- and the course has to slow down to accomodate them :( Just the other day I was in a math lecture, being introduced to the idea of straight lines. I thought "we're in uni, surely it's assumed that we know this already?", and then someone behind me stuck up their hand to ask what y=mx+c was about...

    --
    I mod down anyone who says "I will be modded down for this", regardless of the rest of their comment
  89. The Problems Have Changed by anat0010 · · Score: 1

    Computer science is a very valid subject, but the problems faced by the software industry have changed since the CS curricula were originally devised. Basic knowledge of algebra, logic and data structures is good to know. But knowing how to get a 20% improvement in execution speed of an algorithm is now less important than knowing how to reduce calls to the System Help desk by 20%.
    Knowing about project management, the problems of estimating project cost and time, is now possibly the most useful skill to have in the IT industry. Educationally this requires knowledge of statistics, psychology and economics.
    If logic and discrete maths is what interests you, then I would suggest your place in the IT industry is going to be related to low level device drivers and kernel development. In this case focus on physics, electrical engineering and maths in addition to traditional CS skills.
    If you want a 'job' in IT then you need to focus on project and risk management, psychology and economics (and possibly statistics )in addition to CS.
    I'd hazard a guess that for the foreseable future, software development is going to be undertaken in India. The IT jobs in the US/EU will be in the domain of managing that off-shore code development. This involves ensuring the requirements passed to the developers are complete and correct. That the design of the software is complete and correct. And that the returned code is complete, without bugs, and delivered to cost and schedule.
    No, this isnt traditional Computer Science, but closer to what is understood as Software Engineering. The world and the IT industry has changed. The problems that need to be solved have changed. Either what is understood as Computer Science needs to change, or a new subject, probably Software Engineering, will evolve to satisfy the needs of the wider world. Lamenting the loss of long loved, traditional skills taught as part of the CS curriculum is as useful and relevant as lamenting the loss of the skill necessary to design slide rules.

  90. It depends on what you are trying to do... by jodonoghue · · Score: 1

    I have to disagree (but strongly suspect that I am working in a very different area than parent...)

    For the type of work my team does, CS is invaluable. We deal with issues related to multithreaded and multi-core synchronization daily. People without CS (or maybe Maths/Physics/Electronics major) just don't 'get' the issues we have to deal with. I find it very difficult to recruit graduate level engineers (MSc/PhD generally) with the skills I need.

    What *I* look for are CS/Electronics/Maths/Physics majors with an interest in computing. I do want to see an education and not just 'training' (many UK universities seem to have basically turned into Java training shops - fine as far as it goes, but it doesn't cut it in my team).

    The bottom line is that different roles within the computing world require different skills. Some basically just require training, others require deep theoretical knowledge (and of course, the applicable knowledge varies from position to position).

    However, there will always be a place for the highly educated with a strong theoretical background - and those will generally be the best and most interesting jobs. Must add, however, that it probably won't be the *majority* of jobs...

  91. Perhaps its Math thats the problem? by Stevecrox · · Score: 1

    Reading the comments and the article I'd like to argue that its math, that is the issue. Most the comments here talk about people dropping out because Computer Science was so Math orientated. In my first year of University we had a basic refresher math course in the first term we started with a electrical/communications/robotics/computer engineering group of 70 and by january the group was doing to 35, some because they never attended, a few realised it wasn't what they wanted to do and a surprising number (That I talked to) quit because they had failed so much of the maths module the previous term. The second year a group of 39 went down to 12, surprisingly many people found statistics to hard and started failing it because they saw it as stupid and pointless. I'm in the final year and theres no maths module this year we have started with 20 and there are still 20 people in the electrical/communications/robotics/computer engineering group.

    Perhaps its not that Computer Science is boring but how maths is taught in schools, I've had some incredibly interesting labs over the years which even socialogy students think are cool, but if you don't know math well and have been taught to see it as a geeky pointless subject your not going to stay on a course which involves lots of it.

  92. There is no royal road to computer science by dido · · Score: 1

    You sound a lot like Ptolemy I (Soter) when he spoke to Euclid and asked if there was some kind of short cut to an understanding of geometry. Euclid's famous reply was: "There is no royal road to geometry." Computer science doesn't just have a lot to do with math: it IS math at its most fundamental. If you recall where the very idea for the automatic computer came from, it grew out of the quest for resolving the most profound issues at the foundations of mathematics (google for the 'Entscheidungsproblem' and Alan Turing). Just as there are no royal roads to geometry, there are no royal roads to computer science either.

    If too many people in your educational system think that math is too hard, then maybe your educational system, especially at the lower levels, ought to be rethinking itself if it has as one of its priorities the training of more people who can really make use of computers and computer technology properly. I can't really say this with smug satisfaction as the case is the same here where I come from, but frankly the last place to go about fixing the problem is to water down the mathematical aspects of computer science as you're suggesting might be good. To do that would be to water down the essence of what computer science truly is.

    --
    Qu'on me donne six lignes écrites de la main du plus honnête homme, j'y trouverai de quoi le faire pendre.
  93. Re:The way it works at my "/." account. by Slithe · · Score: 1

    I think it is about 1050 lbs. Can you still compete with that?

    --
    ---- "XML is like violence. If it doesn't fix the problem, you aren't using enough."
  94. Make opportunities for yourself by Nurgled · · Score: 1

    I guess this advice might be a little late for you now, but hopefully it'll be of use to others. The best way to get a reasonable job out of college is to bite the bullet and do some kind of internship or work experience thing. My university didn't offer any particular assistance with this on my CS course, but I contacted employers in the area and basically offered to work for pittance for a few months to "gain professional experience". I ended up working for a month for a company in the local area during a break and at the end of it they offered me a job purely on the basis of my work during that period, with no interview whatsoever.

    You have to target the right sort of company; in particular, the company has to be structured in such a way that you -- as an intern -- are reporting directly to someone with hiring clout so that you can actually be noticed. I picked a little company, but I suspect a larger company with the right sort of culture would work out as well.

    When it comes down to it, it's that old adage of "it's not what you know, it's who you know."

  95. What employers want. by managerialslime · · Score: 1

    The comments thus far seem divided between contempt for community college/technical school level "hands on" training and frustration that many employers may not reward the critical thinking skills taught in college.

    In fact, there are both too many software mechanics who do not understand the greater business problems that require solving, and too many paper tigers who did wonderfully in college but who struggle with delivering results in the real world.

    I have been fortunate enough to benefit from both and I will encourage my children to do the same. Some of the best teachers I ever had were at the community college and technical school levels. They were professionals who often brought decades of real-world experience to the classroom.

    At the same time, my graduate studies did indeed challenge me and force me to develop skills to see issues from multiple perspectives and solve issues using techniques from many different fields.

    As a result, my career has not only been financially rewarding, (my employers have always rewarded my technical knowledge with $) but my everyday work consists of solving problems that keep me interested and excited to come to work (as my creative problem solving abilities tend to get me interesting work).

    One post implied that as employers paid more money for the skills they need, that students would gravitate toward C.S. and similar important professions. If so, the message is taking decades to get get across.

    An integrated approach is offered by Drexel University (Philadelphia, Pennsylvania, USA).

    For more than 25 years, I have been hiring "interns" and graduates from Drexel. At Drexel, the normal 4 year B.S. program is elongated into 5 years of trimesters where one third of each year is spent working at a different employer.

    By the time you hire a Drexel grad, they already have years of real-world experience lacking by many graduates of so-called prestigious universities. (No, I didn't attend Drexel, but I did sleep in one of their dorms for two semesters in 1977 while dating an E.E./C.S. major.)

    To the best of my knowledge, despite Drexel's 30+ years of success with this approach none of the other local universities have adopted Drexel's approach. (http://en.wikipedia.org/wiki/List_of_colleges_and _universities_in_Philadelphia)

    Know this: If you only do the trade-school-level stuff, you have to read and teach yourself the critical thinking stuff on your own. If you only attend university, you may emerge with an initial salary less than the tech-school graduate and take a few years before passing that person as you move up into management or more responsible staff and consulting positions.

    Consider both.

    --
    Live Long and Prosper - Thanks Leonard. You are missed.
  96. Why Comp Sci is on the decline in the US by Ex-MislTech · · Score: 1

    1) More workers are available outside the US, and they work for less.

    2) It is becoming a specialized field, yet the education remains broad in scope, and expensive.

    3) Most people when asked if they want to work hard for less money, or just
    tell others when, where, and how to work and make 200%+ more are going to lean
    towards the jobs that pay MUCH more.

    4) people born in the US typically speak one language, maybe two or three fluently,
    In Comp Sci to be diversely available to the full scope of working languages
    you need to know a dozen, and you need to RELEARN them as they change and progress.

    5) Working with something tangible that once defined as a method/procedure in
    most engineering is a semi-static, in programming radical changes to methods/and tools
    can change rapidly and leave you out of the loop.

    6) Time/Expectations/Deadlines for code projects tend to leave people with a lesser
    family life, and for most ppl family comes first.

    7) Supporting spaghetti code written by numerous other ppl with modern styles,
    and legacy styles all "hacked" together to work across multiple threadings
    and operating system ports induces layers of dependant intrcacy that most sane
    beings would find unnerving.

    8) The lack of unified software and hardware standards, and interoperability,
    and code and hardware cross tested against other apps for interoperability.
    Often writing good code, that once deployed doesnt interoperate with
    legacy app "x" and makes management think "he doesn't know what he is doing",
    when if fact the sometimes hundreds of apps at some large corporations
    would take innumerable hours to fully cross test with every revision check in.

    9) The people that are often your boss not only could not do your job,
    they don't understand your job, and the ppl making marketing decisions
    ask for things that will either cause a bottom up redesign or are just
    not feasible with the current framework/hardware/dependencies,
    and the marketing decisions for "features" don't come in the 11th hour,
    they often come at 11:59....

    10) Intricate levels of version control and dependencies, on the same
    OS from version to the next no longer supporting code that used to
    work fine on the presvious OS version is now broke.

    Add it all up and that is why less and less ppl want to "endure" what CS
    has become for lower pay, and the likely hood of being laid off as soon
    as they can find ANYONE, ANYWHERE, who will do it for less.

    --
    google "32 trillion offshore needs IRS attention"
  97. Allow the Market to Work by Luscious868 · · Score: 2

    Let market forces work. Less CS students means less qualified CS grads to fill positions which means higher salaries and benefits as companies compete for workers which means that you'll have more students interested again in CS.

  98. CS degree does not lead to employment by edfardos · · Score: 1

    I get the feeling new college students look at the lifestyles of their older peers to come up with a college major. As US & UK companies outsource everything they can, it makes sense to learn things like Nursing and people-facing skills which cannot be outsourced. Hey, I'll put in the extra effort to get a CS (and perhaps Math) degree so I can be unemployed like Johny! --edfardos

  99. The problem is with IT, not CS by Genady · · Score: 1

    As I've read through this thread the problem seems obvious to me. I'm an IT professional, who did graduate from a Tech School with a degree in EET (Applied Electrical Engineering). The parent poster is absolutely correct, the vast majority of IT professionals aren't Computer Scientists and could care less to be. We are wrench turners and hole drillers. The problem as I see it is that employers don't quite get that yet. I'm a SysAdmin (and manager of SysAdmins), the practical troubleshooting skills I learned from the old electrical wrenches in tech school serve me far better than any computer theory that I ever learned. Every employer I look at, as well as my own institution, seems to think that a SysAdmin needs to be a CS major. The same can be said, to some degree, across the IT Career path. Help Desk? CS degree. Desktop Support? CS Degree. It's starting to get better with places realizing that MIS is a valid alternative degree path, but the vast majority of IT professionals in my opinion don't need an advanced degree, certainly not a theory heavy science degree.

    There is a need for people to develop the next great google algorithm, and the next idea for database management systems. There's a larger need for people that know the right spot to apply the sledgehammer when these systems screw up. The problem is that business seems to think that the cost of entry into the later is the qualifications of the former.

    --


    What if it is just turtles all the way down?
  100. what needs to be done to encourage more students? by JohnCC · · Score: 1

    "what needs to be done to encourage more students to take the courses..."

    Girls? Just a thought...

  101. Labs by RockoTDF · · Score: 1

    I am a psychology major right now at a four year university in the US. I have no interest in being a shrink and want to go into experimental work. Needless to say as a /. member I am also very much into computers. Working in AI or on CNNs (Computer neural networks) would be a pretty sweet fix for me. However there are 2 problems: 1. I suck at math, this has been addressed in other posts. 2. Labs. As a psych major I have to take a ton of em. In fact, the way my schedule and timing is working out, I'll take way more than most psych majors do. If I were to double major or minor in comp sci, I'd have to take more labs. Thing is that I don't have room in my schedule. This is painfully ironic as all (most) CS labs are is showing up to do your hw. This means that CS majors don't actually go to their labs. So this means I have to pay for a lab I won't go to and that will possibly be a scheduling conflict with something else. Needless to say this frustrates me to no end.

    --
    There is more to science than physics!

    www.iomalfunction.blogspot.com
  102. Why you failed... by OverflowingBitBucket · · Score: 1

    This is so right!! I'm currently a CS student at Edinburgh UK, have been for four years now. I managed to fail first year twice, and dya know why? Cus of a mixture of two things. One they couldn't teach for shit and I lost interest!! And two, the material was sooooo boring!! I've been programming bits and pieces since I was twelve so I go to uni to be taught what an integer is, and how to use a for loop. Cmon!! Stupidity.

    Hi. I am the realisation of the person you believe that you are, that you are not.

    I've been coding since an earlier age than yourself. I found many elements of my first year in CS boring. The difference between you and me though, is the results I got. Damn near 100% in every assignment and the exam, and I finished at the top of the class.

    I hate to break it to you, but you didn't fail because it was boring. If it was boring, you would have sat the final exam after three hours half studying the material, and half watching cartoons, like I did, and also topped the class. You would have been doing your assignments in twenty minutes and polishing them for a few hours before getting top marks. For fun, you'd help out some other people too.

    I've had lousy teachers/lecturers before, and through my degree I discovered it is just best to avoid the ones who can't teach, even if you like the subject. But one thing I do know is that if you know the material well enough (and can learn it on your own) it is very hard to fail, even if your lecturers and markers are blithering idiots. Sure, your mark at the end won't be fair, but failing you would take quite some effort on the part of the markers.

    The difference between us, you may notice, is that you managed to fail first year twice. If the material was boring, and you had a complete mastery of it, this would not have happened. Even if the markers were completely incompetent, a hotshot would have been able to produce answers of such quality that it would have been hard to fail you. You would have passed without effort, and probably with distinction.

    But you didn't. Ask yourself again why you failed.

  103. no CS in Education? Where will I learn to headshot by KatchooNJ · · Score: 1

    I need 1337 skillz to take out those n00bs! It will be a shame if they eliminate CounterStrike 101 from our children's curriculum. :(

    --
    "Never give up, for that is just the time and place when the tide will change." -Harriet Beecher Stowe ^_^
  104. CS in education by matt+me · · Score: 1

    I don't think playing round after round of counter-strike has any place in school.

  105. Maths? What maths? by 16Chapel · · Score: 2, Insightful
    I'm amazed by all the statements here saying Computer Science == Maths.

    In my degree - 10 yrs ago, Birmingham Uni (UK) - I took only one course that had any real maths: Computer Graphics.

    Everything else had a different flavour:

    • Software Engineering Methodology
    • Object Oriented Programming
    • Data Structures
    • Computer Architecture
    • Databases / SQL
    and most importantly:

    Programming (ie regular assignment of code we had to write).

    The course was pretty good (although all the SQL was theoretical; we never actually ran any SQL statements). There was hardly any maths in there, and frankly that's suited me very well - in 8 years of commercial programming, I have NEVER needed anything beyond basic arithmatic.

    Obviously not every will have the same experience, but there are plenty of serious programming jobs that don't use maths. A good CS course should teach the basics of software design along with a good selection of coding techniques - as others have said here, the sign of a good CS grad is that they can work in multiple languages as they're comfortable with the underlying paradigms.
    1. Re:Maths? What maths? by TheSunborn · · Score: 1

      Did you really newer lean about logic. (Can you prove that A=>A for example? (NO it's not an axiom))

      How about induction. Did you newer learn to prove that what you did was correct?

      Did you for example prove that you can't sort faster then n*log(n) if your only operation you have is

      How did you learn Data Structures without math? Did you newer do any calculations on the expected, and worstcase running time
      of any algorithems? Do you know what O(1) really mean? (No it does NOT mean constant time)

      Do you know why there are problems such as the halting problem for turing machines, that computers can newer solve?

      Did you newer know about flows(min cut max flow?) and optimization of problems in npc?

      If you really don't know most of the topics mentioned above, it sounds like you really took a software enginering education, not a CS education.

    2. Re:Maths? What maths? by Anonymous Coward · · Score: 1, Funny

      Do you know what O(1) really mean? (No it does NOT mean constant time)

      O(yes it does).

    3. Re:Maths? What maths? by TheSunborn · · Score: 1

      No it does not.

      A function that for an input of size n uses
      42-(1/n)
      timeunits* to complete the task, is not running in constant time.
      As the size of n increases, so does the time it take the function to perform the job.
      But function does run in O(1).

      *Just use a fixed set of hardware, and call the timeunit for seconds.

  106. Thoughts from an ex-pro programmer by Catbeller · · Score: 2, Interesting

    Some of this might have been covered in other posts and in "Why writing software is hard", but oh well.

    1. Calculus. Not designed for easy understanding, and arguably not necessary for CS. It may be part of programming, but is that because it is necessary, or because CS people know calculus and want to do something with all that painfully acquired knowledge? It's also a barrier that keeps out extremely intelligent people who could do great in CS, but didn't go down that particular mathematical road. Not knowing calc, I am not qualified to say whether or not it is indespensible, but it IS possible to live without it. I guess it is the old CS/CIS divide. Left and right brain, all that.

    2. CS people are perceived as supercilious, arrogant, dissmissive, know-it-all antisocial males. This is a cliche, which is synonym for "obvious truth". Not many want to hang around such a social group. They also run heavily to objectivism, which makes for strained relationships with anyone to the left of Robert Heinlein.

    3. No women. See above #2 for why.

    4. Ageism. It is obvious that anyone over the age of 35 is not really welcome at the table. Unless you are in management, teaching, or are just the very best, you are not at the front of the line when you are applying for work at CoolTech. There are exceptions, and they are growing in number, because of the sheer pressure of so many aging tech people. But the perception, based on reality, is that you have a 15 year career and then you are not welcome at the D&D table at lunchtime.

    5. The profession has been... no word for it, so let's call it "corporatized"? "Downprestiged"? "Bluecollared"? In the early 2000's, a little H1B magic and outsourcing work to cheaper countries gave employers the ability treat their formerly royal employees like janitorial temps. Wages plummetted, management grew rich, resumes were used as kindling for the boss's fireplace. People who spent a decade or more working long days found out that they were as disposable as a Bic lighter in the management's view. Wrong of course, but perception is key and they weren't about to admit they were wrong, so the bitchslapping continues. The bosses *hate* the CS people for having the upper hand for over ten years, and the payback is not going to stop.

    6. Not everyone wants to leap around the country year after year following contract jobs. Can't raise a family or grow equity in real estate that way, and it is a pain in the ass besides.

    7. No unions allowed. Rightist attitudes amongst CS people themselves and a host of labor laws gone unenforced for over 25 years have seen to it that no collective bargaining can be performed, or even be legal. A bit of elitism ("we aren't blue collar lazy union asses!") doesn't help.

    8. What the HELL kind of mess has programming become? Where do you even start anymore? It's in every direction at once.

    9. When exactly did programming become so "businesslike" we have to dress like bankers? Not everyone wants to be a suit. Especially when it's not necessary.

    10. Wages down. Manipulated to stay that way.

    11. It's a lonely profession, and if you are gregarious, the silence and enforced isolation (even if its in your own head) is wearing. Not everyone wants to be a mathematically inclined loner.

    12. No women, not many anyway. Worth repeating.

    1. Re:Thoughts from an ex-pro programmer by BalkanBoy · · Score: 1

      I agree with most, save #1 - I took calculus, didn't really ace it, got B's overall, and I didn't go as far with calculus as someone who was doing CE or EE, however to say that it is completely unneeded isn't true. Maybe there aren't direct applications of what one learns in calculus, but the analytical skills one develops when soplving calculus problems are,well IMHO, invaluable. I can't say the same about writing english prose, studying biology/ecology or playing tennis/soccer/swimming, which all have their benefits of course in aiding your intellect/health.

      The math driven subjects, where math or a form of math (discrete math is the basis of CS) is used to describe actual problems are the building block of what you as an engineer will do later on when solving "real" problems in the "real" world. Any subject matter (despite genetic predesiposition like "raw intelligence") that helps you break down/understand/solve problems in CS (or other similar disciplines where analytical reasoning is a must) can be called a necessary part of the curriculum.

      If we just stuck to the CS core strictly, then you can freely shave off 2 years from the overall college education, and be done with most of what you need to know for the 'real world'.

      Now, you can argue that this may be useful in some way but only if you want to turn programming into a vocation, as someone else pointed above - teach people ONLY CS principles, nothing else and you'd have a quicker turnaround of graduates in up to 2 years who can do one thing and one thing only, but they would be blind to everything else. Granted, one can not know everything, but not developing an 'independent mind' (as Chomsky likes to call it) while in college or soon thereafter with all of the education you've been assigned to complete in your college curriculum, is in my opinion an intellectual sin.

      Only much later in my programming career (I graduated in CS) I realized the importance of human behaviour, language, economics, management, etc. Before, I squarely fit in one of your points above :), I won't say which one.....

      Anyway, the college experience, regardless of whether you pick a super geeky major like CS/CE/EE or something more left brained, is supposed to offer a bit more than just knowing what buttons to push... my opinion only :).

      --
      'A lie if repeated often enough, becomes the truth.' - Goebbels
  107. This article is pooly written nonsense. by alex_vegas · · Score: 1

    >We all know there's a crisis in university computer science departments. Student numbers are dwindling - down 115 >just last year. Down 115 where? At De Monfort? This is hardly a clear sentence to begin with. On a deeper note, the number of students enrolled in Computer Science dropping does not imply that the field is dying. Nearly 50% of American technical PhD's are imported from other countries. This doesn't imply that technical subjects are unimportant, it just suggests that American's don't appreciate their importance. Intellectual pursuits are to be judged by intrinsic merit, not mere popularity.

  108. Dijkstra said it best... by graycode10 · · Score: 1

    "Computer science is as much about computers as astronomy is about telescopes."

    - E. W. Dijkstra

  109. Self vs University trained ... by AHumbleOpinion · · Score: 1

    "Assembly is like C"

    WTF???
    Based on that statement, I wouldn't hire you, nor would I work for you if your job involved anything more technical than "Do this project". Please tell me exactly where the similarities between these two programs lie (besides what they actually DO):

    [snipped DOS int 21 "Hello" and C StdLib "Hello"]


    Actually the GP has the better understanding on this one. You may want to consider that you were not comparing C and x86 asm per se, you were really comparing the libraries the respective languages come with. Using "library" loosely wrt the DOS asm interface. C is often considered a medium level language since it generally maps onto an architecture much more directly than other high level languages. Hence the comparison to asm.

    Actually, in my experience, it's the total opposite. Nearly everyone I've met/hired/worked with over the years that has gone to school for computers turn out to be totally incompetent. From their total lack of understanding of how programming works to complete sytems built on idiotic quick hacks tied together with shoe strings of copy-and-paste code from google, CS majors tend to be like paper MCSE's of the .com boom; They look good on paper but have no clue what they're doing typically because they don't even care about technology, they're just here to make a quick buck.

    Having been both self-taught and formally trained, worked full-time before and during the university, I believe that you are either biased or have had limited exposure. Formally trained or self-taught has very little to do with competence as a programmer. The real factor is whether the individual has a genuine interest in programming, or if they became a programmer merely because it seemed to be a good career opportunity. I've seen plenty of people with both motivations in both training categories, the career path folks seem to make up the majority of both camps as well. Programmers guilty of the shoddy work you describe are found in both camps.

    The one area that the self-taught often falls behind in is breadth. Very few self-taught individuals read and study an equivalent breadth, they tend to focus on fewer areas, often merely what interests them. Breadth has an advantage because problems to solution often come from unexpected areas. For example a self-taught individual fixated on gaming may study graphics and AI and skip database and operating systems, failing to realize that important concepts will come from the later two.

    My current employer actually hired me because I don't have a CS degree. I'm completely self taught in technology/programming which directly states that I love it enough to learn it and do it during my free time. I actually care about my work and about technology in general.

    I think you are deluding yourself, or perhaps you have misdiagnosed yourself. What make you better is not being self-taught, it is having an inherent interest in the work. Myself and many others who have the formal training also love it and do it for fun in our spare time, many of the self taught are also doing it merely for the paycheck and have no inherent interest in programming. Those who love the work are a minority in both camps.

    1. Re:Self vs University trained ... by PastaLover · · Score: 1

      Actually the GP has the better understanding on this one. You may want to consider that you were not comparing C and x86 asm per se, you were really comparing the libraries the respective languages come with. Using "library" loosely wrt the DOS asm interface. C is often considered a medium level language since it generally maps onto an architecture much more directly than other high level languages. Hence the comparison to asm.

      I think C adds a bit more than a library. I'm not really an expert in assembly but the addition of for example logical statements and loop structures in a language really do make a difference. And that is not library stuff. A higher level language is usually considered a higher level language partly because its library. For instance python has dictionaries (maps) as a language-level feature, which definitely places it a bit above C.

      The most important factor should be the level of abstraction the languages pose. Now C is a tight fit for systems programming, as was assembly one day. But try implementing something like quicksort in an assembly library as opposed to a C one. C allows you to abstract that away quite easily (void quicksort(equ_fun_pointer, list_or_array_struct_or_ptr)) while you'd be shuffling around bits for ages to just be able to call this function in assembly.

      Anyway, I guess I missed the point just as much as the GP there.

    2. Re:Self vs University trained ... by AHumbleOpinion · · Score: 1

      I think C adds a bit more than a library.

      True, but the post I responded to had an example that was merely a call to printf.

      I'm not really an expert in assembly but the addition of for example logical statements and loop structures in a language really do make a difference. And that is not library stuff.

      FWIW, many CISC instruction sets have loop instructions, in x86:
      for (i = 10; --i; ) { [some work] }
      mov ecx, 10; label: [some work]; loop label;

      The high level control structures are merely a convenience, something that is portable and more readable for the masses. Logical and loop operations in C typically only generate two or three assembly instructions in x86.

      A higher level language is usually considered a higher level language partly because its library.

      I don't think so. For example consider the UCR standard library for x86:
      http://webster.cs.ucr.edu/AsmTools/MASM/stdlib/std libv1.html

      High level languages are primarily for portability and convenience. There is also specialization of the convenience motivation for specific audiences.

  110. Theory lasts longer, the practical is often temp by AHumbleOpinion · · Score: 1

    Too much theory, not enough practical. If you can't apply the theory that you learn, what's the point in learning so much of it?

    Theory often lasts much longer, the practical is often temporary, the fashion of the day. I learned a lot of theory and applied it a little bit with FORTRAN in some classes, Pascal in some other classes, C in some later classes, ... Now I sometimes reapply those old theories in C++ and perl. We used old dinosaur mainframes running BSD Unix, students bitched-and-moaned that there were no practical classes where we could learn Windows programming, ... We learned graphics on dedicated graphics terminals with GPUs that implemented the low-level details for us, students bitched-and-moaned that we were not learning the more practical SVGA raster graphics programming ...

  111. several different disciplines wrapped up into one by MadMagician · · Score: 1

    Doug Comer explains this best, in "How To Criticize Computer Scientists/ or Avoiding Ineffective Deprecation And Making Insults More Pointed."

    In recent exchanges, members of the faculty have tried in vain to attack other Computer Scientists and disparage their work. Quite frankly, I find the results embarrassing -- instead of cutting the opponent down, many of the remarks have been laughably innocuous. Something must be done about it because any outsider who hears such blather will think less of our department: no group can hold the respect of others unless its members can deal a devastating verbal blow at will.

    This short essay is an effort to help faculty make their remarks more pointed, and help avoid wimpy vindictives. It explains how to insult CS research, shows where to find the Achilles' heel in any project, and illustrates how one can attack a researcher.

    The Two Basic Types Of Research

    Most lousy insults arise from a simple misimpression that all researchers agree on the overall aims of CS research. They do not. In particular, CS has inherited two, quite opposite approaches from roots in mathematics and engineering.

    Researchers who follow the mathematical paradigm are called theorists, and include anyone working in an area that has the terms ``analysis'', ``evaluation'', ``algorithms'', or ``theory'' in the title.

    Researchers who follow the engineering paradigm are called experimentalists, and include most people working in areas that have the terms ``experimental'', ``systems'', ``compiler'', ``network'', or ``database'' in the title.


    Read the rest of the essay.

  112. I study at DMU... by xfer · · Score: 2

    I am currently a second year student at De Montfort University (DMU). I'm currently studying SE, so can't speak on behalf of the CS students. I do, however, feel there are a few things I should say.

    I feel insulted and demoralised. I spent the first year of study programming low level languages, learning the foundations of CS and other such fundamentals.

    Throughout the course, the lecturers would emphasise how important this study was - that without it we would flounder in the future, be inefficient in our work and never actually gain a true understanding of the subject. Now, in my second year, I find that they were perfectly correct. Without the knowledge they have so far imparted, I'm sure I could write some SQL, program some Java, perhaps even some very basic C. But would I actually *understand* what I was doing and why? Unlikely.

    It's important to note that SE shared ALL first year modules with CS - that is to say that those studying CS were taught exactly the same as I was.

    Imagine then my surprise, frustration and anger that this guy, WHO DOESN'T EVEN TEACH CS(!), feels it is acceptable to publish something that is not only incorrect, but also completely at odds with the beliefs and thinking that have been displayed (as per MY perception) by those involved with the subject here at DMU. I'm also suspicious - this reeks somewhat of an attempt to promote the course he actually does teach as a viable alternative to CS.

    Does he understand the fundamentals himself, or did he just lose sight of their relevance since being enveloped in the subject which he now teaches?

    I will not, as he seems to have (intentionally or not) speak on behalf of the university - I have no right to do so. I can however speak from personal experience, and my experience at DMU leaves me with the impression that the fundamentals of CS are valued here, and recognised as essential.

    I would invite Dr McBride to justify what he has said to those of us studying CS, SE and related subjects at DMU. We'd certainly like to hear what he has to say...