Slashdot Mirror


Do Businesses Really Need to Hire CS Majors? (cio.com)

A new article in CIO magazine argues that when it comes to computer science, "few of us really need much of any of it." Slashdot reader itwbennett offers this summary: At the heart of the matter is the fact that most businesses don't really need programmers to be deep thinkers. For them, it's "just as worthwhile to hire someone from a physics lab who just used Python to massage some data streams from an instrument. They can learn the shallow details just as readily as the CS genius," according to the article.
CIO's anonymous author promises an incomplete list of "why we may be better off ignoring CS majors." Some of the highlights:
  • Theory distracts and confuses. "Many computer scientists are mathematicians at heart and the theorem-obsessed mindset permeates the discipline."
  • Academic languages are rarely used. "...the academy breeds snobbery and a love for arcane solutions."
  • Many CS professors are mathematicians, not programmers. "One of the dirty secrets about most computer science departments is that most of the professors can't program computers. Their real job is giving lectures and wrangling grants...."
  • Many required subjects are rarely used. "...it's too bad few of us use many data structures any more."
  • Institutions breed arrogance. "...the very nature of academic degrees are designed to give graduates the ability to argue one's superiority with authority. "
  • Many modern skills are ignored. "If you want to understand Node.js, React, game design or cloud computation, you'll find very little of it in the average curriculum... It's very common for computer science departments to produce deep thinkers who understand some of the fundamental challenges without any shallow knowledge of the details that dominate the average employee's day."

"It's not that CS degrees are bad," the article concludes. "It's just that they're not going to speak to the problems that most of us need to solve."


473 comments

  1. Heh by Anonymous Coward · · Score: 5, Insightful

    This sounds like it was written by a non-CS major who has tied all their business processes to wonky VBA macro laden Excel workbooks.

    1. Re: Heh by Anonymous Coward · · Score: 5, Funny

      You forgot the part where they are running production databases on Microsoft Access.

    2. Re: Heh by Mogusha · · Score: 4, Informative
      Sounds more like someone who doesn't understand that computer science isn't a degree in programming. It's a degree in the theory of programming, not in programming itself. So, to say that it's bad that a computer science teacher doesn't know how to code means nothing bad about them if they know the theory. Pretty much the only reason CS majors learn to code is to implement the theoretical algorithms and structures in a way that is concrete.

      Depending on the institution many of the CS departments came directly out of the mathematics Department. Which is one big reason why many of them are highly math oriented.

    3. Re: Heh by Anonymous Coward · · Score: 1

      I am a master in Computer science, and yes, our dept was the mathematics dept. On my second-to-last year at university, we had an assignment to create a simple compiler. So, no programming expertise needed AT ALL !

    4. Re:Heh by Spazmania · · Score: 5, Insightful

      This. You hire CS majors because they know about the problems you don't know you have and can prevent them from becoming business catastrophes.

      Construction doesn't need every carpenter to be an architect but you'd better have an architect.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    5. Re: Heh by Anonymous Coward · · Score: 0

      But it's also saying that those who have studied the theory of programming may make *worse* programmers.

      Ever work with a programmer who thinks being as cryptically concise as possible is the definition of good code, no matter how utterly unreadable it is?

      In my experience, that guy almost always majored in CS.

    6. Re: Heh by Spamalope · · Score: 1

      Ours demanded that storage be added to the VMware server via a Best Buy external USB drive because 'We're doing it my way'. genius...

    7. Re: Heh by admin7087 · · Score: 5, Informative

      100% this. It's a blatant misunderstanding of the discipline to think the main goal of computer science is to enable someone to program. Maybe you could say that being able to program is a prerequisite to start learning CS, though. In Germany the discipline is called "Informatik" which is perhaps a better term than CS. However, in the end CS is a branch of applied mathematics, but one that is important enough to warrant its own discipline. In that respect it's similar to statistics.

    8. Re: Heh by Anonymous Coward · · Score: 0

      Your experience is almost certainly limited, then.

    9. Re:Heh by arglebargle_xiv · · Score: 5, Interesting

      Construction doesn't need every carpenter to be an architect but you'd better have an architect.

      Or just a competent builder. My dad was a builder, and almost every single architect-designed house he built needed anything from significant through to major design changes to get it from what the architect wished for to being physically buildable and in compliance with building regulations. There was one house that was so bad he refused to build from the architect's plans when the owner wouldn't agree to him fixing them. Forty years later the owners are still in the house, and they'll be there till they die, no-one in their right mind would buy what they ended up with.

      I've seen the same thing with software, I once did a bit of work for a company where their salesdroids would spend their lunch hour telling me why their Grand Poobah System Architect's design couldn't ever work. It didn't even take a developer, even the sales guys could see why it couldn't possibly work, and they had things like MBAs and BComs.

    10. Re: Heh by Anonymous Coward · · Score: 1, Funny

      Thatâ(TM)s where they keep the spreadsheets.

    11. Re: Heh by ceoyoyo · · Score: 4, Insightful

      The anonymous author of the article has apparently learned (through long and hard business experience) that if you want someone to engineer software you need a software engineer.

      Which has very little bearing on whether computer scientists are useful in industry. Lots of businesses find mathematicians invaluable. Computer science is a highly related field. But if youâ(TM)re using either one as a code monkey, youâ(TM)re doing it wrong.

    12. Re: Heh by Anonymous Coward · · Score: 0

      Writing good code is a matter of give-a-fuck. Pride in what you're doing, and consideration for the people who have to look at the code later.

      I work on a team full of hardware engineers who, for whatever reason, fell into this line of work, and their level of code quality is pants on the ground. They could do better, but many of them think of coding as beneath them. It's a simple matter of attitude, and typically a CS grad chooses the major because it's something that interests them.

    13. Re:Heh by Anonymous Coward · · Score: 0

      I totally agree with author of the article... you don't need a CS degree to program

      I've studied chemical engineering and computer science and have been working in IT sine the late 80's. I've worked at every level within IT. Worked as a sys admin for a local credit union while studying CS, programmer, programmer/Analyst, system architect, data architect, chief architect and currently as a segment architect t a Fortune 30 company.

      Many of the CR curriculum that I've seen are focused on theory, which they should be, and not on actually how to program. And I don't mean programming languages, but the thought process needed to decompose a problem and design/code the solution. Learning a new programming language is easy, I'm still doing it in my 50s.

      What I look for in potential employees is:
      - Ability to think like a programmer ... can the person decompose a problem.
      - breadth of experience
      - knowledge of the process of programming
      - Relevant technical knowledge. If the candidate is still using CVS and VI then I'll likely pass on them.

      As an industry, it behooves us to de-emphasize CS. Instead the focus should be on software engineering and use certifications to learn new technologies and methodologies.

      I know that certifications can be hit or miss, but HR departments love them! :(

    14. Re:Heh by Registered+Coward+v2 · · Score: 1

      This. You hire CS majors because they know about the problems you don't know you have and can prevent them from becoming business catastrophes.

      Construction doesn't need every carpenter to be an architect but you'd better have an architect.

      Exactly. Hire people with the skillset needed to do the job. Designing systems and programming are different skillsets, both are needed at the appropriate time. You don't hire engineers to be mechanics, and mechanics to be engineers. They need to work together, using their own knowledge and skills, to build a workable solution.

      --
      I'm a consultant - I convert gibberish into cash-flow.
    15. Re: Heh by Anonymous Coward · · Score: 0

      My experience if 30 years taught me to never, never hire a CS Phd if you want to get readble code. Elegant, maybe, maintainable, not. I would much have a lower paid, self taught kid who grew up wonky.

    16. Re: Heh by Antique+Geekmeister · · Score: 2

      That approach can actually be useful for security and storage migration reasons. Keeping dedicated storage _out_ of the back end storage arrays, transferable as a physical device that can be used without the the rest of the virtualized storage, can have its uses.That used to be a critical piece of some software licensing, especially when the software vendor embedded DRM in a physical USB device. It's been years since I saw that done: I do believe that vendor went out of business.

    17. Re:Heh by Anonymous Coward · · Score: 0

      Construction doesn't need every carpenter to be an architect but you'd better have an architect.

      This is the exact case where the CS majors are a major danger. The entire group is obsessed with home building as a metaphor for computer software delivery when it is actually one of the worst descriptions in existence.

      In CS, every piece of code contains moral and communications decisions which determine how maintainable it will be in future. If the code is well designed at the bottom level then it is very easy to change the entire structure of the system. This means that very coder needs to be an expert craftsman but there is no use and no space for architects. Hiring people who have the title of "architect" takes away the flexibility of those at the bottom to try different things (since they have been told an "architecture" - a rigid framework which stops their experimentation - they learn less quickly about their problem space).

      The theory taught in CS courses has plenty of application and there are plenty of CS people who can overcome the limits of their education, however a high density of CS degrees in a software development team has often in my experience correlated with problems.

    18. Re: Heh by Oligonicella · · Score: 1

      That perked up a funny memory for me. When I was hiring programmers for J County Court in KCMo, I actually had some CS major kid promote that he could write a compiler for us. IBM shop. We had a compiler. He was very disappointed.

    19. Re:Heh by Oligonicella · · Score: 4, Funny

      no-one in their right mind would buy what they ended up with.

      So, Frank Lloyd Wright?

    20. Re:Heh by Anonymous Coward · · Score: 0

      To me it sounds like a not very creative CS major lamenting about not learning everything they needed to know in a classroom, therefore the whole endeavor of CS as a major is pointless. Waaah, this professor has a life outside the classroom, therefore the department sucks. Waah, I couldn't solve a problem, CS sucks. Waaah, no one told me I need to index on join keys (You'd be surprised by the number of people who say "the database is slow. We've got like a thousand records. Better go NoSQL"), Waah, I need to do online transactions and offline analysis, but I don't want to have separate task appropriate data models. Waah, I don't want to risk innovating using emerging technologies, it's hard, let's go shopping (for Open Source or COTS solutions, but mainly Open Source because commercial is inherently evil).

      If CIO wanted to post anonymously, they should have published on reddit.

    21. Re:Heh by jon3k · · Score: 1

      Kind of like how not everyone needs to hire someone who designs programming languages or builds compilers, right? Most people just need someone who can build simple business applications using pre-built tools (compilers, libraries, etc). In that analogy, the programmer is the carpenter.

      I think for people designing operating systems or working at companies specifically building complex software, you probably do need a CS degree. Although let's be honest, many of the best programmers many of us probably know do not have CS degrees (in my case some of the best have degrees in math). But there is a huge amount of software written for businesses that does not require a CS degree.

      I realize the idea offends a lot of CS graduates, but no one is trying to say your degree does not have value. Just that so much software is written now, and the tools are so mature and easy to use, not everyone needs a CS degree to write all software.

    22. Re:Heh by arglebargle_xiv · · Score: 2

      no-one in their right mind would buy what they ended up with.

      So, Frank Lloyd Wright?

      Someone with 1/100th of Wright's talent, but all of his engineering skills.

    23. Re: Heh by Joe_Dragon · · Score: 1

      arcade games still use usb dongles for security / DRM.

    24. Re:Heh by rastos1 · · Score: 1

      Forty years later the owners are still in the house, and they'll be there till they die.

      To me it seems that the house works as expected.

      no-one in their right mind would buy what they ended up with.

      Oh, was the intent to sell the house once it is built? Well, that's probably a different task, isn't it?

      The scenario is not unlike to the topic at hand. In many cases, the code is cobbled together to scratch an itch. The CS comes in when the project grows too much in size, has more developers, has to scale, has to withstand security attacks, ...

      The whole discussion is about: a) senior programmers say: eventually the project will get complex and you better hope it was designed by CS major b) MBAs say: the project will not get complex and duct-taping it together is good enough, let's move to another business opportunity.

    25. Re: Heh by Anonymous Coward · · Score: 1

      If all youâ(TM)re looking for is teadable and maintainable code then perhaps youâ(TM)re hiring the PhD for the wrong reasons. If youâ(TM)re hiring them to solve hard problems then youâ(TM)re hiring for the right reasons. PhDs donâ(TM)t spend 8+ years of their lives to become coders. What most (successfull) companies do is to pair phds with software engineers without the expectation of one individual being able to wear more than one hat well.

    26. Re:Heh by arglebargle_xiv · · Score: 1

      Forty years later the owners are still in the house, and they'll be there till they die.

      To me it seems that the house works as expected.

      In a manner of speaking, it's a terrible house to live in and they can't get rid of it short of perhaps burning it down. I wouldn't used the word "works" though, more "broken as designed", "close to unliveable", and certainly "unsellable".

    27. Re:Heh by Aristos+Mazer · · Score: 1

      Sounds like the grand poobah wasn't a software architect, just a programmer promoted too far.

    28. Re: Heh by 0100010001010011 · · Score: 1

      I'm a Mechanical Engineer that has programmed since 15 and built my career around it. "Programming" is akin to keyboarding these days. It's just a skill you use to get other jobs done.

      If companies are blindly hiring CS majors because they need programming done, they're doing it wrong. They need to hire the major that best suits what they need done.

    29. Re: Heh by 0100010001010011 · · Score: 1

      GreenHills and dSpace still do too.

    30. Re: Heh by Anonymous Coward · · Score: 0

      Sounds more like someone who doesn't understand that computer science isn't a degree in programming. It's a degree in the theory of programming, not in programming itself. So, to say that it's bad that a computer science teacher doesn't know how to code means nothing bad about them if they know the theory. Pretty much the only reason CS majors learn to code is to implement the theoretical algorithms and structures in a way that is concrete.

      Depending on the institution many of the CS departments came directly out of the mathematics Department. Which is one big reason why many of them are highly math oriented.

      There should be separate degrees for computer science, software development, software engineering, and programming. While all of these degrees would develop programming skills only the degree focused on programming is suitable for a broader application of the concepts and skills. Why do I distinguish between software development and programming? As I see it, programming skills can be applied outside of application and systems development; these skills are as useful to a data analyst as to a spreadsheet developer or to a systems administrator. The majority of code written is not full applications in the traditional sense. Any data analyst or data science or data engineer or even an accountant incapable of programming, whether scripts or larger programmes, but instead relying on point-and-click interfaces is not worth hiring.

    31. Re: Heh by Anonymous Coward · · Score: 0

      Understanding how compilers work makes better programmers, but an inexperienced applicant would need an open eyed mentor to recognize that. Reads like the kid was excited and just needed someone to help him focus that into something productive.

    32. Re: Heh by Anonymous Coward · · Score: 0

      Readable code is great, but correct code is better, even if it's cryptic. Correct _and_ readable code comes with experience writing for a reviewer audience. Pair programming might also be an effective tool here, matching style with substance.

    33. Re:Heh by MichaelFlinn · · Score: 1

      SE is like an EE or CE or other E, but for software- an SE is not like an architect. On any large building project, you have a lead engineer, the person that says what the architects have planned is possible.

    34. Re:Heh by Anonymous Coward · · Score: 0

      Yep. The moment I read the BS on the title page, I muttered, "Bullshit".

      I'm a CS major, but ultimately, I'm an Engineer (and NOT just a "software" engineer).

    35. Re:Heh by Jumperalex · · Score: 1

      Thank you for a very accurate, non-car, analogy.

      When I'm interviewing for certain roles there are many times when my feedback to the recruiters is, "this person will get bored on project X ... send their resume over to Billy Bob who's doing some more exciting almost 'new-science' stuff"

      Bottom line is I'm not gonna ask (or pay) a CS to spend their entire day coding up basic web pages using a nearly 10yo tech stack ([cough] federal [cough]). Instead, go find me someone who just finished a coding bootcamp that wants to build their resume and while showing me how they can take the client's aging tech stack into the modern era.

      --
      If you can't be good, be good at it!
    36. Re: Heh by Anonymous Coward · · Score: 1

      A company needs to hire a CS major if they are developing things like new computer languages, new operating systems, or new compilers. If they are using an existing language with existing frameworks to support or extend existing code, then hiring a CS major is like hiring a heart surgeon to pull a broken tooth. Sure, they can do it, but it's nowhere near their center of discipline.

    37. Re: Heh by Anonymous Coward · · Score: 0

      The problem is that industry is full of legacy, undocumented and unsupported tools that need to have small tweaks or hardware obsolescence issues addressed. You really need a software person to reverse engineer / analyze the software and extend, modify, or port it somewhere else. Knowing the history of computing and being familiar with many algorithms and data structures is more useful than a person who knows a small subset of one api they used a few times on this one project they did.

    38. Re: Heh by Anonymous Coward · · Score: 0

      A person with a CS degree should have little to no trouble picking up any programming language. Then you have the hacks today that rely mostly on Python that they learned in an afternoon to make an LED blink off the GPIO pin on their raspberry PI

    39. Re: Heh by Anonymous Coward · · Score: 0

      CS is theory. Programming, design, etc. are applied skills... which should be part of a good CS degree but not the primary focus.
      The problem is that there are few good CS degree programs, and a boatload of crap programs that are essentially an overpriced "boot camp" with the term CS inaccurately tacked on.
      We hired a senior developer with a CS degree from a good school, and after a brief learning curve he turned out to be a rockstar. He understood the theory well enough that applying it in practice was not at all difficult.
      We regularly interview people with a "CS" degree from some no name school, community college, or online degree mill who would have spent their time better by reading wikipedia articles.

    40. Re: Heh by Anonymous Coward · · Score: 0

      Yes, programming is a branch of applied mathematics, so organisations that need programmers should hire mathematics or computer science PhDs. You don't want your software to be written by masters in electronics or physics. No, there is no significant difference between 'coding' and 'informatics': the latter just sounds a bit more theoretical.

      Arguments to the contrary fall in the category that holds that programming is mostly a manual skill, called typing, which means theat the thinking needed to type a program is unimportant.

    41. Re: Heh by HiThere · · Score: 1

      That's interesting. I was given that assignment (decades ago) in an extension class called something like "advanced introduction to programming".

      But the article is largely right. Most businesses don't need more than one or two real programmers. Many don't need any, if they use packaged solutions.

      Back in the day, if you wanted to use a computer, you needed programmers and a systems administer. Then someone wrote a spreadsheet, and someone else wrote a good word processor...and the number of businesses that really needed a programmer took a nosedive. But most people didn't realize that, and didn't realize that systems administers had become MUCH more important. These days (I'm guessing here!!!) the number of real programmers needed is probably about the same number that were needed in 1970, but the number of "power users" needed is immense...but declining. And if systems administration were properly valued, then the number of systems administers needed would be declining, but since it hasn't been, the proper automation tools have not been really developed, much less widely used. (OTOH, just imagine that every smart phone required a systems admin.)

      A part of the problem, though, is that programming is an art, a highly technical art, but still an art. You can't know how good a programmer someone will be until that person has been trained extensively as a programmer. And different programmers will be "good programmers" in different areas of the profession. There are extremely few "universally good programmers". (I'm not claiming that every programmer will be a good programmer in some area, but rather that a good assembly language programmer is unlikely to be a good web page programmer. One *is* more difficult than the other, but which depends on the person. They need to optimize things differently.)

      This makes it a difficult problem. You need to train large numbers of people most of whom will only end up being adequate, and you can't predict ahead of time which will be good at what...and neither can they. But because of the nature of programming (software is easily duplicated) and the lack of a large need for custom solutions, ... (left as an exercise for the reader)

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    42. Re: Heh by Anonymous Coward · · Score: 0

      Schools are just as guilty. In most universities these days, the curriculum for a BS in Computer Science is almost entirely programming.

    43. Re: Heh by HiThere · · Score: 1

      That's *usually* correct. But there are places where things need to be really optimized (for something...possibly speed, possibly memory, possibly intelligibility). That the code should be correct is difficult to dispute. There are very few places where that's secondary. But they exist!! That's why some code uses heuristics. (Unless you adopt a definition of "correct code" where code that sometimes produces the wrong result can fit as part of a larger system.)

      OTOH, some quite experienced programmers will argue against choosing intelligible code over concise code, even when there's little advantage to conciseness. And some programmers feel that using their own personal macro library makes the code more intelligible. (And it does...to them.)

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    44. Re: Heh by Bengie · · Score: 1

      I wish programmers made correct code. Usually "fails" silently. I quoted "fails" because they can't even define how it should work in the first place. It's easy to tell if some code is crap by asking the person who made it "what should your code do if X happens", and they can't answer.

    45. Re: Heh by PaulRivers10 · · Score: 1

      Yeah, many devs with cs degrees can write very readable code, but if you have code that looks extremely fancy but is nigh unreadable it's always from a c.s. major. Unstructered hodepog is self taught, so structured it's incomprehensible is a c.s major.

    46. Re:Heh by jellomizer · · Score: 1

      The real problem is lack of vocational programmer training. So most businesses need people with a CS degree no... But people with CS Degrees are the ones who understand how to program well and make programs that do not fall apart when you look at them the wrong way. Or force you to upgrade them after any small change to the environment or the business need.

      This type of stuff they don't teach as part of CS normally. However if there were more vocational type of training to teach future programmers vs Computer Scientists it may be more adventitious.

      That said this article misses the point and more likely is the fact that businesses don't want to higher an educated high paid workforce. Because such a workforce doesn't just do what you tell them to do, are more than capable to making business decisions themselves. So if a company is used to dealing with low skilled workers hiring people with college degrees or masters degrees is difficult to manage. And requires a different type of touch.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    47. Re: Heh by 0100010001010011 · · Score: 1

      We know this. Hiring managers and HR doesn't. Most code being written isn't new languages, OSs or compilers.

    48. Re: Heh by sjames · · Score: 1

      Certainly, many HR departments don't understand that, just look at the requirements they post. The author is probably writing to that audience.

    49. Re:Heh by sjames · · Score: 1

      More like technically habitable but not salable.

    50. Re: Heh by jimbo · · Score: 4, Insightful

      My decades of experience have taught me that the type of degree is irrelevant when writing maintainable code. It's about experience.

      Almost all the new people in their first job, regardless of background, are obsessed with how clever they are and writing compact ingenious stuff that's impossible to maintain. Writing maintainable code comes with experience and being hammered in peer reviews (by me) so as to be brought into the mindset.

      There are ofcourse older primadonnas too who write unmaintainable stuff, not all companies offer a culture to teach otherwise.

    51. Re:Heh by Darinbob · · Score: 1

      I have made use of almost every single class I ever took in college in my career, including grade level. Software engineering seemed like the least useful to me. I have used theory, algorithms, lab courses, numerical analysis, odd languages, AI, etc. Ie remember the dining philosophers and such, you need that in real time operating systems, even in threaded applications.

      Also don't forget that computer science is a multi-disciplinary subject. It's not about programming.

      There's also domain knowledge, so that those minors and general requirements classes are useful. I do wish more pure programmers could manage to write a set of decent documentation too, so don't skimp on writing classes.

      Anyone who thinks that education is useless needs a refresher.

    52. Re: Heh by Darinbob · · Score: 1

      Also I see too many people who think that the goal of programming is to get an entry level job and stay at entry level forever. This advice also seems to play on parental fears that their children might not get a good job. But what do you do after that first job? Is being an IT help desk flunky the end goal? Giving advice about the shortcuts to take to get a "programming" job doesn't help anyone.

      And CS is more than just applied mathematics, it's multi-disciplinary with lots of related fields glommed together. You have to add in electrical engineering at the very least, which is why in the past before there was a distinct CS major there were competing pulls to have computer types be in the math department versus the EE department. There's linguistics too, we had a solid computing core in our linguistics department when I was an undergrad. Neural networks which has professors in many departments, from math to the medical school.

    53. Re: Heh by Darinbob · · Score: 1

      We have a lot of EE people as programmers in firmware and other low level code. It often works out very badly because they don't have quality coding skills. Sometimes I think they're still doing 1970's style of K&R C. Outside of CS, programming is often taught as a side skill that doesn't need to be honed or improved, similar to that of using a calculator. So the code is good enough to get the job done, which is the goal for most scientists, but ends up being very difficult to maintain.

      It is good to be skilled in both domain knowledge as well as programming, but when the programming gets treated as a lesser skill then things don't work out well.

    54. Re:Heh by Hognoxious · · Score: 1

      itwbennet is Bennet Haselton, second only to theodp and MojoKid for posting retarded shit to slashdot.

      Wait ... third only to theodp, MojoKid and that blue hipster fucktard who used to post the Forbes malware links.

      I'll come in again.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    55. Re: Heh by Darinbob · · Score: 1

      Reminds me of a student in a compiler class who complained that it was pointless to learn how to write a compiler since we already have compilers. In 1984...

    56. Re:Heh by Darinbob · · Score: 1

      Architects may sometimes start out in entry level jobs, but they don't stay there. Why then should a programmer necessarily want to stick around forever fixing bugs and testing other people's code? To move up the ladder you need to have the skills necessary to do that, and for higher tier software designers that means getting the skills you learn in CS.

      Yes, some people learn this themselves without a degree - after all we didn't always have a CS degree so people learned how to write operating systems from experience and without a textbook for it. However the snag with self learning is that it takes discipline to learn about the stuff you don't like and which you don't think is important.

    57. Re:Heh by Darinbob · · Score: 3, Interesting

      Also, when the project gets complex, you will NOT be allowed to start over from scratch. Because it's complex, chances are you can't even disassemble it into workable components that you can reuse. Too many projects like that which eventually get to the stage that the entire team does nothing but keep it limping along until there's a competing product that takes over.

    58. Re:Heh by Darinbob · · Score: 1

      But people will not get those skillsets if they decided to take the shortcuts to get a programming job. People taking the quick path will find their jobs going to the cheapest outsourced workers, whereas people who know what they're doing will become the senior programmers and designers.

    59. Re: Heh by Anonymous Coward · · Score: 0

      Of course, you can hire any hack to go program in enterprises. I saw a guy on the street corner who was holding a sign that said, "need money for food." Sounds like a great candidate! He could go be a "systems administer," whatever that is!

      It makes perfect sense to just jam prepackaged software into anything! Why, if my business is retail, it makes no sense at all to write software with the input from the people who DO the job, just the people who sell you the shtick that they can do the job better without actually doing it! We will just use SAP for everything! No one has ever lost money on that, right?

    60. Re:Heh by Registered+Coward+v2 · · Score: 1

      But people will not get those skillsets if they decided to take the shortcuts to get a programming job. People taking the quick path will find their jobs going to the cheapest outsourced workers, whereas people who know what they're doing will become the senior programmers and designers.

      Agreed. It's about developing skills that will be in demand and are less likely to be outsourced to the cheapest provider.

      --
      I'm a consultant - I convert gibberish into cash-flow.
    61. Re: Heh by HornWumpus · · Score: 1

      No matter how apparently brilliant or experienced, they all start doing code maintenance. No faster way to learn the structure and experience some maintenance pain.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    62. Re: Heh by HornWumpus · · Score: 2

      BS in CS isn't a qualification for language design, OSs or compilers anyhow, GP is just wrong.

      A PhD who wrote their thesis on some interesting aspect of languages could be useful in a language design team. A BS has likely taken one semester of applicable coursework.

      The PhD in language theory is the last guy you want to hire to maintain a big old stack of SQL backed reports...typical entry level, half test, type work for a recent BS in CS.

      Just never hire BAs in CS. Q: Who gets and 'Arts' degree in a science? A: Someone who went to the WRONG university or someone that missed the BS graduation requirements and took the consolation prize.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    63. Re: Heh by HornWumpus · · Score: 1

      Prospective CS or EE students should all know how to code before entering University. Maintainable code is all about experience.

      Embedded coding is still often about squeezing it all into a small footprint. Hasn't really changed that much at that end. Still hand tuning assembler and C. It might look like '1970s style' to you, but you can't do it...

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    64. Re:Heh by HornWumpus · · Score: 1

      A house built by an architect might fall down.

      But a house built by an engineer should be torn down.

      Old, old joke.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    65. Re: Heh by Anonymous Coward · · Score: 0

      Well, if your not going to Normalize to the 23rd form...I might as well go home.

    66. Re: Heh by Anonymous Coward · · Score: 0

      Cryptic does not exclude readable. When your brain picks up a line of cryptic code it becomes just another readable part of the code.

    67. Re:Heh by hey! · · Score: 1

      I have to say that "ignoring modern skills" is about the dumbest critique of CS education I've ever heard. A CS education focused contemporary technology would have a useful shelf life of about ten years. A CS graduate from 2005 would be the go-to person when it comes to XML XSL transformations and object patterns but would be useless at Node.js because that came four years after he stopped learning new things.

      This person is complaining tthat a CS education doesn't make you a competent programmer. Well, no shit, Sherlock; those physics majors who used a little Python in the lab aren't competent programmers either. The only way to become a skilled programmer is to spend thousands of hours with your ass in a chair coding. You wouldn't put a newly minted civil engineer in charge of designing a major bridge, and you wouldn't hire a newly minted CS graduate to be your lead developer.

      Once you *do* become a competent programmer, a knowledge of theory, whether you get it from school or reading, broadens your capabilities and empowers you to tackle novel and complex problems. Without that knowledge you might be a very good programmer, but you're likely just churning out variations of things you've already seen.

      "Modern skills" is a moving target. In a couple of years the hot new thing is legacy technology you want to gte off of. To someone whose understanding of what he is doing is built around the specific technologies he's used, it's a big deal. To a "deep thinker" (I've never heard that as a put-down before) it's just another variation on a theme.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    68. Re: Heh by Darinbob · · Score: 1

      Hmm, when I was in college, almost no one knew about programming as computers at home or in school were rare. Those who actually did know programming ultimately had to be retrained because they had bad habits from BASIC or being self taught.

    69. Re: Heh by Darinbob · · Score: 1

      By 70s style, I mean that they didn't know about 'const' and were strongly opposed to be asked to use it, and they didn't declare parameters to functions K&R style, and a type cast every line even where obviously not necessary. This wasn't due to packing into a small space, they would write code that ended up larger than necessary (ie, declaring auto variables as uint8_t which takes a bit of extra code on ARM).

    70. Re:Heh by Spazmania · · Score: 1

      Anybody can build a building which stands.

      Only an engineer can build a building which barely stands.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    71. Re:Heh by Spazmania · · Score: 1

      Before everything was connected on the Internet, there were code-generating platforms that let non-programmers assemble common cookie-cutter apps without needing any kind of software development skills. Hypercard, Powerbuilder, things like that. The original author bemoans the loss of these tools.

      The problem is: modern software requires security. It must be resilient in the face of somebody actively trying to subvert it. You don't get that from a lego set. You need somebody who has some idea what they're doing.

      --
      Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    72. Re:Heh by Anonymous Coward · · Score: 0

      why their Grand Poobah System Architect's design couldn't ever work

      If it was a large corporate then the "architect" may well have just been the guy who'd been there long enough to be promoted through all the intermediate ranks and long surpassed his usefulness.

    73. Re: Heh by HiThere · · Score: 1

      You are being silly. How many times does a spreadsheet program need to be written? There are about five common ones used by nearly everyone, and there's little reason to write another. Much of most businesses fits nicely into programs that have already been written. Many businesses don't have any need for ANY custom programs. That's not the way it used to be, and certainly *some* businesses still need custom programs, but most places only need people to use word processors, spreadsheets, and a couple of accounting and tax programs. But systems administration is still relatively primitive. Everyone who tries to do it on a shoestring ends up with their data for sale all over the web.

      OTOH, there's a lot more computers in use in a lot more places, so I estimate that there's still a real market for about as many programmers as there were in 1970. It's a guess. I don't think anyone knows. My wife's business didn't need ANY programmers. For her business I ended up being a graphics guy and a music entry tech. (Yuck, but that was what she needed, so that's what I did.) She didn't even use a tax program, she kept her books on paper and carried them off the the tax professional once a year. She *REALLY* didn't need a programmer. And there are a lot more businesses her size than there are corporations. But she did need computer work. She would rough out a graphic and I'd scan it in, move it over to Inkscape, trace the lines, make sure the symmetries were correct, ensure that the lines had the correct thickness, etc. It's computer work, but it sure isn't programming. I did do a tiny bit of javascript animation, something called Jake's train, which would go back and forth across the screen and toot the whistle when you clicked the button. Programming? Hardly. But she didn't need anything more, and she didn't want anything more.

      Well, I exaggerate a bit. A decade or so ago she had me cobble up a few special purpose games for teaching note reading. That was back when the Mac was pushing Hypercard, so probably sometime in the 1990's. That was programming of a sort, but don't think of game the way a console game acts. That wasn't the point, and anyway Hypercard was too resource intensive for the processors of that day to do anything fancy. But it *had* to be Hypercard, or some language quite like it, because of the interactions required and the time frame. If I've got my time frame correct, my favorite language at that time was Object Pascal, but I'd have never tried something like this in that. Eventually she decided that computer games weren't effective enough at teaching tools. (We probably only did that for a year or two at the most.) Physical games worked better, and could be altered more easily. Then the computer was just used for things like designing and printing out the rules, pieces, etc. And there's exactly ZERO requirement for a programmer in that.

      Most jobs that require a computer interaction can be done quite well using existing packaged programs. There are some that require custom programs, but they are a small fraction of the interactions. Even I, a programmer, do most of my interactions with a computer using packaged programs. That's what an editor is, a compiler, a linker, a software library. When I started off software libraries were essentially missing, unless you needed trigonometric functions or something. Now... you probably don't have any idea how many packaged programs you are using. When I started off there wasn't an operating system. You pushed a button to load your bootstrap code into the computer. Needing the same number of programmers now as then doesn't mean they're doing the same jobs, or that they're as productive, for that matter. Most of the low hanging fruit has already been picked.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    74. Re:Heh by Anonymous Coward · · Score: 0

      I think he has some good points. in my experience almost all profs with doctorates have never worked in their field.

    75. Re: Heh by HiThere · · Score: 1

      Well, OK. *That's* a problem I've never encountered. But I can sure see cases where it might.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    76. Re: Heh by Anonymous Coward · · Score: 0

      You sound a lot like the senator who wanted to shut down the patent office because we already had the cotton gin and there wasnâ(TM)t really anything else of value to patent after that. You obviously have no idea what most software engineers do. Package solutions can fit some needs but not all. And, you can very quickly get locked into a expensive ecosystem that does t do exactly what you want it to do but have no way out of it if you rely on package solutions. Not too long ago we had an idiot for a CIO who only knew accounting. She nearly ran the company into the ground with the arguments you just made. Got a whole new set of management including a lovely Irish chap as a CIO. Now we have trashed most of those package solutions you ist touted, hired more actual engineers with good degrees and the skills to match and just saved the company tens on millions of dollars a year.

    77. Re: Heh by Anonymous Coward · · Score: 0

      Why do we need to teach programming theory? I am a largely self-taught programmer and I don't see the value in this. I am also a taxpayer and don't think my tax dollars should be going to any university that teaches this, unless someone can convince me otherwise. I would see value in funding schools that teach vocational skills (like programming, network engineering, system administration, database administration, etc.) I attended a public university and studied computer-information systems (not computer science) and, unfortunately, much of what I learned in that program was also theoretical. For example, I took a course in databases and half of the semester covered database design principles. The other half covered SQL. The SQL material has since proved useful in my career, whereas I never used any of the design material and theory. I have never met anyone who designed databases outside of the university. In general, I think public universities emphasize theory too much. It's not just computer science and computer-information systems. My business classes were also laced with theory.

    78. Re:Heh by Anonymous Coward · · Score: 0

      This is the difference between those with an understanding of how code/applications/systems should be architected versus those that can just jump in and write in the latest fad language. Long term I'd rather have the former building my infrastructure.

    79. Re: Heh by Anonymous Coward · · Score: 0

      Q: Who gets and 'Arts' degree in a science? A: Someone who went to the WRONG university

      I wouldn't call Oxford the wrong university, but then I'm not a fat delusional idiot.

    80. Re:Heh by arglebargle_xiv · · Score: 1

      But a house built by an engineer should be torn down.

      Some houses built by engineers can't be torn down.

    81. Re: Heh by Spamalope · · Score: 1

      This was to replace primary storage. I.E. Move the active production database VMs from the SAS raid array onto a consumer drive in a USB case. You guys think that could ever be useful? Really?

    82. Re: Heh by overlook77 · · Score: 1

      Sadly, this actually happens.

    83. Re: Heh by Antique+Geekmeister · · Score: 1

      Oh, my, yes, I can picture many such scenarios. I've used several of them. They mostly involve bulky storage that would have been vastly more expensive, or a much larger power drain, than an inexpensive and compact single spinning drive in a USB case. It's unlikely to be a performance improvement. but depending on the application, there are times I was not concerned about that. The biggest reason to do it was physical security: the drive can be easily removed and locked in a fire safe or a vault when not live.

      I'm assuming, from the tone of your comments, that this was not the case in your workplace. But I must admit that sometimes people do quite stupid sounding things for very good reasons. Might any good reason have applied here?

    84. Re:Heh by Anonymous Coward · · Score: 0

      You could learn COBOL, and be employed forever.

      http://www2.york.psu.edu/~lxn/...

    85. Re: Heh by Anonymous Coward · · Score: 0

      He may not have forgot but he's right that business pretends computer science is programming. I can't tell you how mad it makes me when I even low level IT work asking for a computer science degree (i have one thank you!) That shit was hard and it does my degree no favors to have a dozen companies eternally trying to fill a "Helpdesk 3" with CS requirement position because the HR department is dumb or because they hope they can snag someone desperate and make him be a shitty one man IT department at helpdesk pay.

    86. Re: Heh by Anonymous Coward · · Score: 0

      Reminds me of a student in a compiler class who complained that it was pointless to learn how to write a compiler since we already have compilers. In 1984...

      Still, it is a fun class, and you learned many different things. Though, writing a real compiler is a big headache when it doesn't do what you want it to do; especially when the number of ops is huge.

    87. Re: Heh by Anonymous Coward · · Score: 0

      Exactly! Push down value employee class provides so you can low ball.

    88. Re: Heh by Anonymous Coward · · Score: 0

      I worked for an org that put a read-only text database of specialize articles on the Internet. It was a simple system, with less than 100,000 pages of text, just the articles appended to each other. The text was stored in a huge text file, and the data was retrieved by line numbers. "Full text search" was implemented by creating a hash table for every non-trivial word in the file, then building indices with the line numbers associated with the word occurences. This was augmented with indices of the articles (starting and ending line numbers in the text file), and more. Basically 1960s design, coded in C, served from a Un*x variant platform, in the 1990's.

      And the worst part? Index rebuilding took an entire week. Every time an article was added, the indices all had to be rebuilt. To reduce downtime, articles to be added were accumulated over a week's period in a forked version of the text file. Once a week, programs were batched to run the indices. The process was to re-hash the text file, generating a hash for every word, saving this into several different types of index files. (Hash codes were all stored as text in the index files.) Then those files got sorted. Finally the "new database" was overwritten onto the previous version.

      The biggest file was a almost a GB in size. Sorting for that alone took 4 days. Because they were using... yes, Unix *sort* (the file merge-sort tool). They used standard file sorting on every one of the index files... every week. Bottleneck was the disk i/o capacity. Plus two people checked all the files processed every day. The guy writing all the code was an industrial engineer. No CS background at all. He also did not trust anything he didn't already know. I got assigned to this project to help rejuvenate it, because I had a CS MS and about 10 years of success for the organization in other areas.

      I created a quicksort handle his files. Pull the entire file into memory, qs, and save output to disk. It cut total processing time for all the files to a total of 35 minutes, and the largest file took only 18 minutes, 1.5 of which was the in-memory sort time. This would allow them to either post updated more frequently, or just dramatically reduce processing time. Plus they could reduce their monitoring effort to nearly nothing. Then I built code to "insert" new articles and hashes to the existing indices, so they wouldn't have to be rebuilt at all. (But in case they did, they could do it in an hour or less.) Finally, I started working on a better database design, one more modern, using a modern data engine for full text; there weren't many options at that time, but there were a few.

      End result: the IE absolutely refused to use anything he hadn't written, and his boss backed him on it. My code got tossed, even though it was working fine. My analysis and recommendation on database options got ignored.

      I asked for reassignment somewhere where I could be useful, but nothing was available. I ended up leaving the organization for a higher paying job and far better career satisfaction.

      It's always been abundantly clear to me that you need to understand core tools of the trade. Stuff that every CS student learns in their first couple of semesters - including math - is key to system design, reliability, performance, and security. Yeah, you can find some kid that's programmed in *name*any*new*fad*language* but what does that mean about all the things he should have learned and didn't? And what's the real dollar cost associated with long-term support and fixes for poorly written code?

    89. Re:Heh by Anonymous Coward · · Score: 0

      Having programmed since the early 70s, I have noticed that all the mistakes we made back then, and repeated in the 80s, in the 90s, and every decade since, are still being repeated. However, with Agile, they are becoming more frequent and cropping up faster since there is less budget available for getting it right the first time.

      Which is just fine. As a retiree, I don't mind being called in to fix very basic performance and security and buggy-code issues.

    90. Re: Heh by BlackOverflow · · Score: 0

      Can I work for you?

    91. Re:Heh by wyHunter · · Score: 1

      I agree. In a computer science major you learn a bunch of things - at least I did - like how operating systems work, how to write a compiler, how to do complexity analysis of your algorithm to see if you're writing efficient code, how to engineer software so you can build a tight application that can scale, an intro to artificial intelligence ( this was more of a survey course but I did my bachelors and masters in CS quite a while back), a course in data structures, a course in computer architecture to understand how the underlying physical architecture affected programs and how to do low level programming. And a bunch of other stuff. I've wrote code for the following industries: telecom, healthcare, cloud Saas, internet security, embedded applications for precise time (think the clocks that run power systems). In each of those industries I directly applied my computer science knowledge. I do not understand how this conclusion can be drawn. Can you be 100% self taught? Of course. But you still need the knowledge.

    92. Re:Heh by lsatenstein · · Score: 1

      Give me someone who understands business operations, I will let him/her spend some time in
      purchasing
      accounts payable
      accounts receivable
      marketing
      hr
      inventory management
      logistics
      production planning and control
      PMC
      CRM

      They don't need to be the expert programmer, but the expert in business processes.
      And I will kiss him/her on both cheeks and make him/her my IT CEO.

      --
      Leslie Satenstein Montreal Quebec Canada
    93. Re:Heh by Anonymous Coward · · Score: 0

      This may come as a shock to people but most homes in the US are not designed by Architects. They are designed by GCs, drafters and home designers. Architects general only get in evolved only if it is a very large home. Many states only require that the structural loads be calculated by a professional engineer but the "Architectural" drawings are provided by people that generally do not have a degree in architecture. Commercial buildings are different of course. Mainly due to the larger budgets of commercial project you generally have teams of architects and engineers that provides hundreds to thousands of pages of documents to describe the building to the contractors. The contractors also have many sub contractors that specialize in different types of systems and construction. Just as in programming, different layers of abstraction help to organize people to efficiently provide a product.

      I'm not saying that a NON-CS can't provide a complete program but generally speaking there is a limit of exposure that a NON-CS has had. Specially if we are talking about scientific calculations where memory and round-off errors could greatly affect the outcomes or if there are broader structural problems to solve a CS has been exposed to possible solutions and may be able to use their education to avoid the pitfalls.

      Finally, I agree credentials do not guarantee outcomes, but they do help to establish a standard level of competency.

    94. Re: Heh by HornWumpus · · Score: 1

      Speaking of delusions. Oxford is one of the universities that gives 'Science' degrees in basket weaving. Which is another problem altogether.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  2. CS is overrated imo (sorta) by Anonymous Coward · · Score: 0

    I am graduating as a CIS major this year (computer information systems) and well this degree doesnt really have more programming courses, it does give a broader view of everything. only reason why i did this degree is im not the best at math and itd be the quickest.

    in terms of the CS majors i know its really hit or miss on programming talent. i have one friend who is aceing most of his classes, can break down algorithims, but cant code his way out of a box of rocks (unless he can only use c).

    1. Re: CS is overrated imo (sorta) by Anonymous Coward · · Score: 0

      I know a couple CIS majors. They learn Java and think they're hot shit. CIS is for the less technically inclined.

    2. Re: CS is overrated imo (sorta) by Anonymous Coward · · Score: 0

      The world needs backup monkeys and digital janitors more than ever.

    3. Re:CS is overrated imo (sorta) by Anonymous Coward · · Score: 0

      I am graduating as a CIS major this year (computer information systems) and well this degree doesnt really have more programming courses, it does give a broader view of everything. only reason why i did this degree is im not the best at math and itd be the quickest.

      in terms of the CS majors i know its really hit or miss on programming talent. i have one friend who is aceing most of his classes, can break down algorithims, but cant code his way out of a box of rocks (unless he can only use c).

      Errr, so you don't really know what CS is then... Programming is NOT a requirement to be good at CS major. However, it would help a lot to be good at CS major if you can do programming because you need to demonstrate your understanding by doing programming assignments. What CS major students need is the capability of learning and adapting to any computer languages. They will need to learn different languages because each language has its own advantages and can take those advantages in different situations. Through out the year in college in CS major, you will (and should) go through at least 5 different computer languages ranging from Assembly to compilable to scripting languages. Any colleges that teach CS major and use less than that number of computer languages aren't worth taking.

  3. No! Just use open source by Anonymous Coward · · Score: 4, Funny

    The whole point of open source is that the software is already written. Just need to put it together like Lego blocks. CS Major won't help. Outsource the development and it will be done in no time.

    1. Re:No! Just use open source by Anonymous Coward · · Score: 1

      Actually no. When the people you outsourced it to screw it up because they are getting paid bottom dollar and really don't know what they are doing. You will have to do it all over again and it will cost twice as much.

      Wrong answer cowboy.

    2. Re:No! Just use open source by Archtech · · Score: 4, Insightful

      The whole point of open source is that the software is already written. Just need to put it together like Lego blocks. CS Major won't help. Outsource the development and it will be done in no time.

      Have you ever written any software?

      If not, don't talk about what you don't understand.

      If so, why don't you "put it together like Lego blocks" yourself and save the trouble and cost of outsourcing?

      --
      I am sure that there are many other solipsists out there.
    3. Re:No! Just use open source by PolygamousRanchKid+ · · Score: 5, Funny

      The whole point of open source is that the software is already written. Just need to put it together like Lego blocks.

      Software development will soon be replaced by automated AI Blockchain technology, which googles and copies & pastes code blocks from Stackoverflow according to the natural language that you speak to Alexa.

      There will be no need to understand what gets copied . . . the Blockchain AI will understand it for you!

      . . . and then Alexa will say, "Thank you for ordering an Obamacare Website!"

      "Customers who ordered Obamacare Websites have also ordered Triple-Headed Dildos."

      "Add to Shopping Basket . . . ?"

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    4. Re:No! Just use open source by polar+red · · Score: 1

      why don't you "put it together like Lego blocks" yourself and save the trouble and cost of outsourcing?

      Yeah, lego blocks knobs are as unchangeable as API's :D :D :D

      --
      Yes, I'm left. You have a problem with that?
    5. Re:No! Just use open source by Megol · · Score: 1

      I think you are responding to a post full of irony.

    6. Re:No! Just use open source by Anonymous Coward · · Score: 0

      Will this be in the cloud?

    7. Re:No! Just use open source by Anonymous Coward · · Score: 0

      That's because throwing together 500 libraries in Python and shuffling data between them is NOT programming. It literally is putting together lego bricks like you describe. Programming is what the people do that build those libraries.

    8. Re:No! Just use open source by Anonymous Coward · · Score: 0

      Soon enough, this will be the reality.

    9. Re:No! Just use open source by Anonymous Coward · · Score: 0

      The whole point of open source is that the software is already written. Just need to put it together like Lego blocks. CS Major won't help. Outsource the development and it will be done in no time.

      Have you ever written any software?

      If not, don't talk about what you don't understand.

      If so, why don't you "put it together like Lego blocks" yourself and save the trouble and cost of outsourcing?

      I once had the misfortune of ending up working for someone who thought that enterprise networks should be plug and play, like home networks. That this was at a company with a network still running Telnet on Cisco IOS versions ten years old with local passwords stored in plain text files and various Excel and Word files scattered across a massive company-wide shared drive didn't help. That this guy would claim he was a network engineer - and then yell at and threaten the technical guys (including folks from the vendor) - was a little hilarious, though, in retrospect.

      That said, I say misfortune because I had just joined the organization the day an exodus of competent engineers and managers - including my own. (The other engineer left several weeks later.)

      Needless to say, I did not stay long.

      Anyone who has power and authority and thinks that building complicated software or hardware systems is like playing in a sandbox or plugging in a Belkin WiFi router from Best Buy...ought to be shot. Or, at least, do your due diligence and don't end up working for them like I accidentally did.

    10. Re:No! Just use open source by Anonymous Coward · · Score: 0

      Whoosh.

  4. Bitter much? by locater16 · · Score: 5, Funny

    Is this written by some guy that can't get a programming job because he doesn't have a degree?
    "Wah, they're all elitist nerds. Now I have to write for this stupid website to pay rent. They're the stupid ones, not me! Why don't I get paid $200k a year? Wahh!"

    1. Re: Bitter much? by phantomfive · · Score: 4, Insightful

      I think he's wrong about a lot of his facts. At least, all the CS professors I've met can program.

      --
      "First they came for the slanderers and i said nothing."
    2. Re: Bitter much? by overnight_failure · · Score: 1

      There's a lot of crap in there, mis-characterisations etc. I mean the bit about having an education means you _just_ want to argue with those higher up is brilliant.

    3. Re: Bitter much? by Anonymous Coward · · Score: 0

      I've met ones that probably didn't write anything else than one file programs his whole life. He was the department head of computer science, and Information Theory and Queuing Theory were his specialty.

    4. Re: Bitter much? by Anonymous Coward · · Score: 0

      I know a black guy, I am not racist.

    5. Re: Bitter much? by Anonymous Coward · · Score: 0

      Arguing with higher ups is the best people you can have in your team, assuming they can argue in a scientific way. This is how mistakes can be corrected and things improve and life gets better for everyone.

      Obviously there are many higher ups who don't like it when someone tells them that they are wrong and even proves it. I have seen higher ups who rather let the organization to take huge damage than admit that they were wrong and quite often they smoke out those who argue against them. I have even seen one person trying to do this, but that backfired badly against him as they found out that the person had been telling lies to his higher ups. In the end, the person was moved to be a manager of another section (I don't really understand why they don't fire people like this, as he causes more harm that criminals due to his position).

      And obviously there are those who argue, but can't argument. Typically if you ask them a question, they won't answer it, but instead they attack with something completely different. If you go with them and point up flaws with their argument and ask for clarification, same thing just repeats. I have no idea how to work with these guys, other than just ignore them or involve their managers to the chat.

    6. Re: Bitter much? by Anonymous Coward · · Score: 0

      CS professor here, this article in indeed full of bullshit but CS professors unable to write ten lines of code do exist, sadly.

    7. Re: Bitter much? by UnknownSoldier · · Score: 2

      It really depends on the school and person.

      One professor would literally hand-wave "Those are implementation details."

      *facepalm*

      WTF!!!

      Outside the academic ivory tower in the real world we write programs to run on REAL hardware today -- not some imaginary future computer that has zero latency.

      Hell, it was just a six years ago that Bjarne Stroustrup was so far out-of-touch with modern hardware and its L1 cache that he was surprised to learn that doubly linked lists give shitty cache usage.

    8. Re:Bitter much? by Jerry+Atrick · · Score: 1

      More likely someone annoyed he's expected to pay for experts when all he needs is trained monkeys. The majority of so called programming tasks are just grinding out endless variations of existing code. Sometimes without any obvious programming involved.

      That said a little CS could stop the monkeys routinely choosing the worst library calls for the code blocks they're wrapping with print systems. Maybe time for a CS lite, where you don't learn the math much but do get basic coding and how to pick the right algorithm when you call someone else's library of them. Monkeys with a guide book.

    9. Re:Bitter much? by GrumpySteen · · Score: 4, Insightful

      It's more likely that it was written by someone with an MBA who adheres to the typical MBA mantra of improving the bottom line by replacing better paid, experienced employees in favor of inexperienced people who accept far less than the market rate for the position. They tend to be almost as cult-like as the anti-vax crowd, latching onto any and every justification for their belief regardless of how ridiculous or misinformed it may be.

    10. Re: Bitter much? by WinstonWolfIT · · Score: 1

      When I was a Junior, I had an assignment to write a lexical parser. The professor spent basically a week explaining how to build and maintain a stack, something like 400 lines of code. I didn't know much at the time, but I wanted to vomit looking at it. I wrote my parser the sane way -- recursive, about 80 lines. Turned in a printout (dates me), it comes back "see me". The coot couldn't understand it so I had to explain it to him.

    11. Re: Bitter much? by phantomfive · · Score: 1

      Well there aren't many 'professional' programmers who understand cache levels. That's already advanced stuff, you'll need to hire an optimization expert. For most people it's just gluing together APIs.

      --
      "First they came for the slanderers and i said nothing."
    12. Re:Bitter much? by admin7087 · · Score: 1

      It's also very common to hire people with higher degrees than needed. Back when I was young, one guy at our school was so good he got the highest possible final degree in every discipline. He then went on to study mathematics, where there was a more level playing field for him. Then he became an SAP consultant. Another friend of mine studied physics. He is now working for Siemens in middle management (I presume). I also knew a mathematician who did his Ph.D. in something very complicated I couldn't possibly understand. Then he was hired as a mathematician by an economics professor and told us that he was laughing his hat off at how ridiculously easy the tasks were that the professor wanted him to solve. But the payment was good and it was definitely easier than to try the postdoc grind in mathematics.

      In a nutshell, this phenomenon is not limited to CS at all. Many companies prefer to higher people with degrees that give them strong math skills, even if they don't use them in their job.

    13. Re: Bitter much? by Anonymous Coward · · Score: 0

      Heh. Unfortunately, those 10 lines of code are in recursive LISP and never actually complete

      I actually studied computer science at MIT. (Got out of it as a major really, really fast, liked hardware more.) The intro to compute science course, called "6.001" because MIT uses numbers, not usually course names, was taught in Scheme, and when I was a freshman it was taught by Jerry Sussman. (One of the authors of Scheme, and one of the authors of the textbooj, "Structure and Interpretation of Computer Programs,".) And oh my *god*, did that course teach bad habits that I saw turn up later in Java and C++ by those languages's original developers. It taught layers of abstraction as if it actually *solved* anything, rather than simply passing off the work to someone else. It taught tail recursion as the ideal, not as what you fall back to only when iteration can't do the job and taught a complete refusal to look at computational requirements. When I wrote my code *efficiently*, by doing the assignment and a second copy of the assignment with the search order reversed, the mis-taught teaching assistants kept insisting on marking down my work for not doing it the way the'd been taught. On several occasions, I had to bring my work directly to Sussman because the teaching assistants had, effectively, learned the wrong lessons. It was as if they'd learned how to use a wrench, but they could only hold the wrench with a specific hand in a specific position to solve a specific problem and had never leaned to use it *as a wrench*. If you turned the wrench over to make it fit better, this "not doing the assignment".

      I tried to talk to Sussman about this, but he was a *very* busy man with hundreds of students. I'm afraid that the theoretical elegance of such programming led to a *lot of very bad code* because the course taught the programmers to ignore the upper and lower level systems beyond their particular assignment of the moment. Part of the later result for people trained this way was a lot of inherent but incorrect assumptions about how API's actually worked, and chaos when the people who should have written specs *refused* to peer beyond their layer of abstraction. It still drives me nuts.

    14. Re: Bitter much? by K.+S.+Kyosuke · · Score: 2

      Heh. It surely sounds to me like you took all the wrong lessons from that course. I mean, a lot of people do, but I'm not sure that's a problem with that course itself.

      --
      Ezekiel 23:20
    15. Re: Bitter much? by Tranzistors · · Score: 1

      More like

      Bjarne Stroustrup was so in-touch with modern hardware and its L1 cache that he surprised you by teaching that doubly linked lists give shitty cache usage.

    16. Re: Bitter much? by Anonymous Coward · · Score: 0

      I think he's wrong about a lot of his facts. At least, all the CS professors I've met can program.

      I have met some CS professors who cannot programme and others who could programme but refused to write comments. The other CS professors were able to write programmes in a variety of languages with a few of these people coming from industry into academia.

    17. Re: Bitter much? by godrik · · Score: 4, Interesting

      One professor would literally hand-wave "Those are implementation details."

      But it depends what you teach. I teach computer science. And when I teach algorithms I could not care less how some of the bricks are implemented. I care about teaching correctness and complexity analysis.
      Your example on doubly linked list that trash the cache are a particularly good example. I don't even care that there are trashing the cache because they just change constant. And ignoring them enables me to get my students to focus on something more important in that class: Is it correct? What is the complexity?

      Now when I teach High Performance Computing, I typically tell them that the only thing they should care about is the performance. And therefore the complexity may not be as relevant as before. There is even a very famous case in matrix multiplication that highlights that fact. Because constant definitely start to matter. But you need to care about different things at different point of the curriculum if you plan on driving the concept of the day through the students' brains.

    18. Re: Bitter much? by serviscope_minor · · Score: 5, Insightful

      Outside the academic ivory tower

      I've come to the conclusion that anyone using the phrase "ivory tower" is probably an idiot with a chip on their shoulder.

      we write programs to run on REAL hardware today

      Well done you understand your job. However it's the height of arrogance to assume that because you don't understand academic jobs that they're somehow worthless.

      Hell, it was just a six years ago that Bjarne Stroustrup was so far out-of-touch with modern hardware and its L1 cache that he was surprised to learn that doubly linked lists give shitty cache usage.

      It takes a special kind of arrogant to take someone who is telling people why a technique is bad and go herp derp he's a stupid he doesn't know its bad.

      --
      SJW n. One who posts facts.
    19. Re:Bitter much? by lsllll · · Score: 1

      Yeah, like the part about game programming. It's funny. I have volunteered a few times on career days at my wife's high school to talk about programming. Most kids said they want to program games. I say "Okay, then brush up on your math and physics." They asked why, to which I had to respond about all the physics and math that is involved from the moment a sniper in a game pulls the trigger to the moment that the bullet stops: Kind of gun, kind of bullet, wind speed, trajectory because of gravity, slowing down of the bullet because of air friction (which is dependent on air temperature and altitude), the material it first hits and the angle, once it passes the material, how much in the body of the enemy will it go before it comes to a halt, will it come out from the other side. I'm sure I'm missing some other parameters, but just try to figure out the details behind this simple thing in the game and you realize how much math and physics you'll need to have. Now add the complexity of translating all that into code and graphics.

      --
      Is that a roll of dimes in your pocket or are you happy to see me?
    20. Re: Bitter much? by Anonymous Coward · · Score: 0

      In the last 30 years, double linked lists have bad cache performance.
      Sound like you need to start actually learning to program on a real computer.

    21. Re:Bitter much? by Darinbob · · Score: 1

      You know how Einstein got bad grades as a kid? Well, mine are even worse!

    22. Re: Bitter much? by Darinbob · · Score: 2

      Yes, implementation details, because the profs are teaching a different subject from implementation details. That's an exercise for the students. One does learn a lot more if they have to think about what they're doing rather than copy snippets of code together. Which today is a problem because snippets of code are everywhere and so easy to find.

      As for Stroustrup, I can see that. He started back when caching was rare except on the highest end computers. However paging was a big deal, and the earliest C++ programs did have poor paging performance because related code or data would be spread around, whereas higher level languages would sometimes do better because of mark-and-copy garbage collection.

    23. Re: Bitter much? by Anonymous Coward · · Score: 0

      The best programmers I have worked with were math majors.

    24. Re: Bitter much? by Anonymous Coward · · Score: 0

      Did this have a point?

      Professors who are bad at their jobs exist.

      It does not follow from there that professors are a problem.

    25. Re: Bitter much? by nedlohs · · Score: 1

      How do you think a video of someone explaining that lists interact badly with caches is evidence of that someone being surprised that lists interact badly with caches?

    26. Re: Bitter much? by UnknownSoldier · · Score: 1

      > And when I teach algorithms I could not care less how some of the bricks are implemented.

      Why would you only teach 50% of the subject???

      Comp. Sci. is NOT just Theory. Back in the Real World (TM) Application is just as important as Theory.

      > I care about teaching correctness and complexity analysis.

      That is good, but neglecting to teach 50% of a subject shows you are a crappy teacher.

    27. Re: Bitter much? by Anonymous Coward · · Score: 0

      He does not teach half of the subject. He teaches the basics of the subject. HPC encompasses this kind of thing. Any teacher introducing caching issue during an introduction lecture to linked list is insane and should be fired immediately.

    28. Re: Bitter much? by UnknownSoldier · · Score: 1

      > I've come to the conclusion that anyone using the phrase "ivory tower" is probably an idiot with a chip on their shoulder.

      Ad hominem much ?

      I've come to the conclusion that anyone using the excuse "Implementation details" is probably an idiot teacher who believes the delusion Theory comes before Application.

      FTFY.

      > you don't understand academic jobs

      Spotted the shitty teacher who can't code and tries to justify it.

      Computing Science is BOTH Theory AND Application. Academics who teach ONLY theory are literally missing HALF of the equation.

      If you were a music teacher you would basically teach Music Theory and say that "Playing the instrument" is just "implementation details." Are you really THAT fucking stupid??????

      Theory ALWAYS comes AFTER Application. Application PROVES that the Theory is correct.

      We write code for PEOPLE to READ, otherwise we'd still be using assembly.

      Do you teach students HOW to name variables?

      Do you teach students the pros AND cons of the various indentation style ?

      Do you teach people HOW to write CONSTRUCTIVE comments? i.e. Document WHY not the how.

      Do you teach students BOTH the and Pros and Cons of various programming paradigms? Do you discuss Functional? Procedural? Why OOP is fine for minimizing coupling, but do you mention that OOP is shit for high performance ?

      When you teach Radix Sort do you mention that O(3n) is NOT equal to O(n) in the Real World ? Do you teach HOW to modify Radix Sort to sort float32 numbers? Or do you hand waive that with the bullshit "Left as an exercise for the reader" ?

      Do you teach the nine different types of binary searches?

      Do you teach the 32 different ways CRC32 can be implemented? Do you mention the 4 that are standardized?

      Riiiight, I'm the idiot for calling out the bullshit of Theory without Application is _exactly_ why those in the academic ivory tower tend to be blind.

    29. Re:Bitter much? by Anonymous Coward · · Score: 0

      You pretty much proved his point in this one response.

    30. Re: Bitter much? by serviscope_minor · · Score: 1

      Ad hominem much ?

      No, much. Ad homenim is "The reason you're argument is wrong is because you're an idiot". This is "your argument is wrong because reasons therefore you're an idiot". Quite different, though it doesn't surprise me it's beyond your grasp.

      Computing Science is BOTH Theory AND Application. Academics who teach ONLY theory are literally missing HALF of the equation.

      That I think qualifies as "not even wrong". some bits are pure theory, some pure application and some a mix of both. It's fine to teach the just theory for the theoretical bits.

      Spotted the shitty teacher who can't code and tries to justify it.

      If it helps you sleep better ot believe that then sure go ahead.

      Theory ALWAYS comes AFTER Application. Application PROVES that the Theory is correct.

      You literally contradict the first sentence in the second.

      Riiiight, I'm the idiot for calling out the bullshit of Theory without Application is _exactly_ why those in the academic ivory tower tend to be blind.

      Try implementing a modern crypto algorithm or a modern error correction code without Galois theory. That predaes the existence of computers by over 100 years, never mind the existence of modern techniques.

      But sure, the application came first because angry dude with a chip on his shlder the size of colorado said so on the internet.

      --
      SJW n. One who posts facts.
    31. Re:Bitter much? by Anonymous Coward · · Score: 0

      It's more likely that it was written by someone with an MBA who adheres to the typical MBA mantra of improving the bottom line by replacing better paid, experienced employees in favor of inexperienced people who accept far less than the market rate for the position. They tend to be almost as cult-like as the anti-vax crowd, latching onto any and every justification for their belief regardless of how ridiculous or misinformed it may be.

      Why is it that every time something goes wrong...there's usually an MBA skulking nearby in the shadows?

    32. Re:Bitter much? by Anonymous Coward · · Score: 0

      MBA here. We don't all think that way. But at least you're grasping the likely motive of the author; whereas everyone else here is busy arguing over whether or not a degree is a good thing.

  5. Bean Counter by Anonymous Coward · · Score: 0

    Sounds like someone wanting back the coding monkeys, who probably have no clue of the greater picture and a some point wonder why the bloat hasseled gozilla app they mangled together consumes all resources of the newest available hardware.

    Go back to your bean counter and shut up!

  6. In sumary by Anonymous Coward · · Score: 0

    Arrogant ass says other people are arrogant ass! News at 12!

  7. Same for other trades by Anonymous Coward · · Score: 1

    No need for economics, law, mechanical engineering, biology, chemistry, physics, math, ... majors either.
    In 30 years, I have never worked at a place that required the skills of any major, and yet, they are required by HR.
    I guess they believe it serves as evidence you can think.

    1. Re: Same for other trades by Anonymous Coward · · Score: 0

      I've never been to a doctor with a problem that couldn't have been handled by a nurse with a couple of years vocational training. I bet 95% of doctor's visits are the same.

    2. Re: Same for other trades by brantondaveperson · · Score: 3, Insightful

      Yes, they probably are. That 5% is what the doctors spend so many years training for. It's great you've never had anything serious. One day, you might do. Should that happen, be sure to thank the doctors who save your life.

    3. Re: Same for other trades by Anonymous Coward · · Score: 1

      My experience is that the family doctor doesn't know more than I can't with reasonable certainty work out myself online. But then the specialist surgeon, that's a completely different story. The family doctor prescribed me drugs to mask the pain and left me for months saying just wait... The specialist had me in an MRI and CT scan within 2 days of meeting me, got me a spinal injection and used his expertise and training to actually make me feel better.

  8. No, we don't need to use CS in business by Anonymous Coward · · Score: 0

    Computer science is a research discipline. Programming is a trade.

    1. Re:No, we don't need to use CS in business by Anonymous Coward · · Score: 0

      Programming is a discipline of CS. You can program without any trade involved.

    2. Re:No, we don't need to use CS in business by Tough+Love · · Score: 1

      The vast majority of CS grads will not go into research, they will be developers, usually upper tier.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    3. Re: No, we don't need to use CS in business by orlanz · · Score: 1

      Not that I have seen. Most true CS majors go into things that need algorithm design and data modeling giving a restricted environment. Embedded, kernel, drivers, hardware, microprocessors, encryption, machine learning, etc.

      But those are real research leveled CS degrees. There seems to be a lot of colleges that just provide job training in programming language of the month or example driven learning and call it CS. These are no different than vacational schools and I wish they would just say that.

      I DO see a lot of CompE in programming thou and this appears to work OK. They get projects done. It's rare that someone needs to think deep about a algorithm running on IaaS. None of their bosses will be around nor will they figure out the issue when stuff hits the fan a few months later. They will just replace that product anew like they replaced the prior one.

  9. This tells you everything to know about the articl by Anonymous Coward · · Score: 0

    By Anonymous

  10. Trolling by Anonymous Coward · · Score: 3, Insightful

    So basically this magazine allowed an anonymous troll to write a flame bait piece for them. What an outstanding feat of journalism!

    Sure, there are probably a lot of instances where someone with a degree is overkill for the job, but this disdain for education is appalling. I wish the anonymous coward (and in this case it is not some cute ./ term but the very definition of the words) would tell us where he works so I can avoid hiring their services forever.

    1. Re:Trolling by Anonymous Coward · · Score: 0

      Wipro

  11. Depends on if you want good software or not. by Anonymous Coward · · Score: 0

    If you want shit software that barely functions, by all means, make a physics major write it. If you want good functioning software, make a CS major write the software but let the physics major specify the algorithms.

    1. Re:Depends on if you want good software or not. by Tough+Love · · Score: 4, Funny

      Let the physics major debug it, thereby proving themselves.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    2. Re:Depends on if you want good software or not. by Anonymous Coward · · Score: 0

      I've been to engineering and math faculties. I've seen their code. Yes, they can program and they can produce things that work right here and now.

      However, the next project a semester or two down the line has to scrap everything and start over because they cannot understand, maintain, reuse or integrate the code. In the end they often hire CS majors to fix their mess. Good way to get a paid part-time position for the semester.

  12. Institutions breed arrogance, so does... by Anonymous Coward · · Score: 1

    > Institutions breed arrogance.
    Nothing compared to that of the self-taught programmer. (Not a CS myself, but as an old dog I see both kind hired)
    The especially the new graduates, are very aware of the fact that they have limited real-world experience. And are easier to get to, regarding the trade-off of "correct" code vs. company spending. While the self-taught usually have little understanding of the fact that we'll have to revisit the code in 6 months.

    1. Re:Institutions breed arrogance, so does... by Tough+Love · · Score: 2

      The self-taught usually don't know what they don't know, the recent PHP thread comes to mind. There are exceptions of course, but they are rare.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    2. Re:Institutions breed arrogance, so does... by Anonymous Coward · · Score: 0

      I am self taught (started programming at the age of 7), but later I got education that is somewhat equal to CS I think (there was even one course about PHP).

      I did learn some new languages (like Java and PHP) because I had to do some school work with them. I didn't learn that much at the school, but instead I learned at home when working with the assignments. It become really obvious to me on how different level I was with the others who only knew what school had taught them. I really can't imagine that they could do actual work based on things they learn just on the school.

      But you are right that I did not know what I didn't know, but school did not help with that either. I kept improving and I was really good after about 10 years of professional work. Then I stopped improving. I thought that I have just become so good that there is nothing to improve. After about another 10 years of professional work I met a colleague who suggested some books to me and I was able to get my programming to a new level once again.

      Currently I know several things that I lack, but I am not very interested in improving them. It is not because I wouldn't want to get better, but I want to keep the work I do to something that I like doing. So when I encounter things that require skills that I don't have, I request help from others that know those areas better than I. I have also learned that you really get best results when you have different kind of people in your team. Someone who likes to solve strange problems, someone who likes to do simple grunt work, someone who likes to make big designs etc.

  13. TL;DR by Kremmy · · Score: 3, Insightful

    "I don't want to pay for people who understand what they're doing."

    1. Re: TL;DR by Anonymous Coward · · Score: 0

      Quite right: âoebecause I am ignorant, I feel more comfortable surrounding myself with other ignorant peopleâ.

      Thatâ(TM)s what happens when you have ignorant management ... ah leaders

      Also thatâ(TM)s why tech companies need too many people to do one and the same thing all over again without any real progress.

    2. Re:TL;DR by Anonymous Coward · · Score: 0

      Nailed it. I come across dudes like this all the time. They want 2 years of work in 3 weeks. They scope creep the hell out of everything. Zero commitment on what is need to be done. The 'cs geeks' are gumming up the works with 'perfect code' they complain to management. They burn out whoever is unlucky enough to land on their project. Then blame the 'programmers' for not doing it. This article reeks of that junk.

      My favorite one I was assigned into to help rescue after the dude bailed out and some poor lady was assigned to pick up the pieces on a multimillion dollar project. "let me list out the issues you are having". "how can you tell it runs badly I never gave you a demo?" "your code tells me, and here is what you need to hire to fix it and here is exactly how to fix it". That is what the CS degree gave me.

      https://www.buzzmaven.com/old-...

      Do not listen to us at your businesses peril. We charge *large sums* to fix things after the fact. Up front we are reasonable. After the fact we are done with your shit.

    3. Re:TL;DR by Anonymous Coward · · Score: 0

      I mean why should medical doctors need to learn biology? They just write the prescriptions the drug reps tell them based on the patient's symptoms.

  14. Success without college by Tough+Love · · Score: 5, Insightful

    Another success without college article, usually writen by someone who did not go to college. Sure, there are auto didacts able to learn good software engineering principles on their own, but few possess the necessary self discipline. To learn to think you need to hang out with thinkers. To learn a subject well it helps enormously to have good teachers. To learn discipline it helps to have structure. Nothing beats college for that, it's an opportunity you should seize if you possibly can.

    Never mind the parities, networking and abundant supply of premium specimens of the opposite sex.

    --
    When all you have is a hammer, every problem starts to look like a thumb.
    1. Re:Success without college by Anne+Thwacks · · Score: 3, Insightful
      self discipline. Nothing beats college for that,

      Dead right: nothing is the clear winner compared to college when it comes to discipline. As a former mature student, I am in a position to speak on this.

      --
      Sent from my ASR33 using ASCII
    2. Re:Success without college by Tough+Love · · Score: 0

      You graduate by having the discipline to get your work done, or you cheat. Which one were you?

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    3. Re:Success without college by TeknoHog · · Score: 4, Insightful

      nothing is the clear winner compared to college when it comes to discipline. As a former mature student, I am in a position to speak on this.

      It's interesting you mention being a mature student. I've gone back to the university a couple of times after an early graduation and a few years in the workforce, and it's meant a huge difference to my learning. In that position, you (a) appreciate the value of your education much more, and (b) you have some real-life basis for things like "hey, I could use this theory in my field" and "nope, it doesn't really work like that".

      I've also come to reflect this "reverse order education" in other aspects of my life. For example, I've dabbled in electronics since about the age of 8, and of course it was much later that I learned enough theory to design more complex circuits myself, largely through formal education. I'm worried about students that take years of theory before they get to do anything hands-on; by that time they might realize they're in the wrong field.

      More specifically, it's an issue with the vocational vs. academic divide: if you want to dabble in electronics, you go to the trade school. Or if you prefer to learn quantum theory for electron transport in solids, go to the university. But for certain things you need people that know both, and there isn't a formal eduction path for such a thing, so people need to learn by themselves. Indeed, there were times when I did consider the more vocational route myself, though I'm now glad I didn't. Because you can usually learn the hands-on bits about electronics and programming yourself, but something like advanced math takes a bit more discipline.

      --
      Escher was the first MC and Giger invented the HR department.
    4. Re:Success without college by jpaine619 · · Score: 1

      self discipline. Nothing beats college for that,

      Dead right: nothing is the clear winner compared to college when it comes to discipline. As a former mature student, I am in a position to speak on this.

      Yeah.. Nothing beats college for discipline... Certainly not the military....

    5. Re:Success without college by theweatherelectric · · Score: 1

      Certainly not the military

      Militaries don't teach discipline, they teach obedience. It's not the same thing.

    6. Re: Success without college by Anonymous Coward · · Score: 0

      Self discipline is obedience to one's own goals.

    7. Re:Success without college by swb · · Score: 4, Interesting

      I think obedience is doing what you're told, discipline is doing it on your own without being told again.

      I've never been in the military but I've worked with a couple of guys who have and they all carry a certain amount of military discipline with them, even the ones that say they hated the military.

      Now maybe it's worthless self-discipline, but nearly all of them were *extremely* tidy. Personal work spaces kept fucking spotless, and whenever they dealt with some cabling or something else that would be easy to keep on the slightly chaotic side they all were completely OCD about organization.

      They were all extremely neat in their personal presentation, too. IT has a lot of fucking slobs, but these guys were totally neat -- shirts tucked in, shoes shined, etc.

      Oddly, all of them deny it was because of the military but I think they get it drilled into their head so much it's part of their identity.

      If I had a criticism of them its that they're prone to low initiative on problems, preferring to report conditions and await instructions. American business culture mostly isn't like that, though, and their trained-in desire to await orders vs. committing on their own accord seems to be the only real drawback.

    8. Re:Success without college by swilver · · Score: 1

      To learn something well, you only need a genuine interest and curiosity on the subject.

    9. Re:Success without college by theweatherelectric · · Score: 1

      If I had a criticism of them its that they're prone to low initiative on problems

      I've also worked with former military people and I have exactly the same criticism. They've all needed close supervision and to be told what to do. I found it immensely disappointing.

    10. Re: Success without college by Anonymous Coward · · Score: 0

      And in the military, you follow someone else's.

    11. Re:Success without college by Anonymous Coward · · Score: 0

      "parities"
      Yes, this is typical writing from a college trained CS graduate.

    12. Re:Success without college by Antique+Geekmeister · · Score: 2

      There is a famous quote about this from Vince Lombard: "Only perfect practice makes perfect" Flawed practice reinforces the flaws. And learning entirely on one's own is likely to re-inforce beginner's flaws without some competent feedback to guide the work and correct them.

      This is not to denigrate the self-taught, or the genuinely interested student of a field. But some help learning to do tasks well can be critical to do robust, effective work.

    13. Re: Success without college by Anonymous Coward · · Score: 0

      Found the folks who never joined!

    14. Re:Success without college by sls1j · · Score: 1

      Part of self-learning is recognizing when you need a mentor and seeking one out.

    15. Re:Success without college by loonycyborg · · Score: 1

      Colleges are overpriced so much to the point of being near scams. Yet the most of them you can expect is some cursory overview of basic principles, maybe some advanced theory classes that are useful only for compiler writers or scientists. Providing real skills was never objective of colleges, that's the job of apprenticeship programs and trade schools. There is no trade school for programming yet? Then apprenticeships are the only way. Only nobody wants to reduce income by employing not (yet) able newbies. They should not blame college for their shortsightedness.

    16. Re:Success without college by Anonymous Coward · · Score: 0

      My experience working with a former military person was the opposite. He was quick to take the initiative, excellent at solving problems on his own, and VERY efficient. Where other people tend to spend time over-thinking issues and over-designing while trying to decide the "best" or "most elegant" approach, he was quick to analyze the problem, find a workable solution that did exactly what needed to be done, and implement the solution without unnecessarily spending time trying to decide whether it was the most impressive way of accomplishing the exact same thing. I would love to work with more people like that.

    17. Re:Success without college by Anonymous Coward · · Score: 0

      Another success without college article, usually writen by someone who did not go to college. Sure, there are auto didacts able to learn good software engineering principles on their own, but few possess the necessary self discipline.

      I learned Quantum Electrodynamics all on my own.

    18. Re:Success without college by Tough+Love · · Score: 1

      Whoops, I read an ambiguous interpretation of the GP post, seeing sarcasm that wasn't there. Please mod the above to oblivion.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    19. Re:Success without college by Darinbob · · Score: 1

      I understand that college is more difficult to afford these days. But if someone can do well by being self taught and having self discipline, they can always do better by adding college to it. If someone has no self discipline, then maybe college can teach that or at the very least college gives them a leg up out of the food service industry. So if someone can afford to go to college these days, then it's in their best interests to do so.

    20. Re:Success without college by Anonymous Coward · · Score: 0

      Never mind the parities, networking and abundant supply of premium specimens of the opposite sex.

      For my college experience, at least, that translates to "LAN parties, gigabit uplink, and endless supply of porn."

    21. Re:Success without college by Tough+Love · · Score: 1

      No larping?

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    22. Re:Success without college by Anonymous Coward · · Score: 0

      Wasn't in the military but can see where they are coming from. I don't "await orders" so much as wanting my responsibilities clearly defined and being held accountable to them. I just really hate having to eat shit when something goes wrong that I didn't know I was accountable for until after the fact.

    23. Re:Success without college by Anonymous Coward · · Score: 0

      Actually they teach obedience and discipline. Not every soldier learns both lessons.

    24. Re:Success without college by swb · · Score: 1

      That's the extreme side effect of business culture, the "gotcha entrepeneurism".

      If it works well, you might get rewarded or at least not punished to the extent we like what we got.

      If it goes poorly, we'll punish the shit out of you for not getting all the approvals we wanted. We'll also punish you for not showing enough initiative.

      Basically, take risks and we will blame you if you fail but provide no guidance on what we want as an outcome.

    25. Re:Success without college by Anonymous Coward · · Score: 0

      "Teach" is an interesting choice of words. There are so many more descriptive words like "browbeat," "condition," "indoctrinate," "inculcate," "brainwash"...

    26. Re:Success without college by jpaine619 · · Score: 1

      Sounds like someone who has never been in the military or, more likely, is actively hostile to the concept and implementation of the military.

      Yeah, they teach obedience, but they absolutely teach discipline as well.

      If you think that a military member's every move is the result of an order.....

      Self discipline and unit discipline are absolutely taught. I suspect, however, that you don't really care. You'll just keep spouting off your bullshit and patting yourself on the back.

    27. Re:Success without college by jpaine619 · · Score: 1

      Thank you.

      Yes.. it is drilled into you. It does become part of your character. And yeah, most guys end up becoming neat freaks, of a sort. It's more unusual to run into a slob, in the military, than a tidy person.

      Keep your shit tidy and nobody yells at you :)

    28. Re:Success without college by jpaine619 · · Score: 1

      Your stupid choice of words could be applied to children as well.. Or employees.. or anything.

      Taught is the correct terminology. There were very few things that I was taught, while I served, that were not explained. Granted, I have zero knowledge of how other countries, and for that matter, other branches of my own country's military handle things. But, in the USAF, great care is taken to explain WHY something is done a certain way. There is vast latitude on how you can accomplish things that do not have a set-in-stone reason for doing them a certain way or in a certain order. But, you will get an explanation for WHY those things are they way they are.

      When you teach someone something, you make someone much more valuable than simply training them. You can train a fucking monkey to punch buttons in a particular order. You can teach him what each button does but you cannot teach the monkey _why_ it needs to be pushed. A monkey cares about the results.. Not the reasoning behind the results..

      Trained people also have a hard time adapting or innovating. Someone taught is in a much better situation.

    29. Re:Success without college by theweatherelectric · · Score: 1

      I suspect, however, that you don't really care.

      It isn't about caring, it's about practical outcomes. Harden up, son.

    30. Re:Success without college by Anonymous Coward · · Score: 0

      Yeah, well, the military is not known for being real progressive when it comes to encouraging independent thought.

      You may be "taught" why things are done a certain way (their way), but go ahead and make some innovative suggestions as to how they might improve their operations, see how far that gets you.

  15. My Take... by beheaderaswp · · Score: 5, Interesting

    From my standpoint, this is an earmark of of the end of IT as a professional specialty.

    At this point technicians are treated as hourly workers- if they exist at all. The word "engineer" is being banished from the IT profession. Support is by phone script. The network is built on appliances. Configurations done by subcontractors. Job qualifications require education over experience. Certifications are required- but are generally useless without a degree.

    Programmers are shuffled in and out on contract....code is undocumented. Competence is un-rewarded.

    And management doesn't understand the technology with a mentality that says: "Do the minimum possible to get a short term result".

    The net result is lots of titles like "Network Manager"... "Network Architect"... "Vice President of Information Systems".... ETC.

    And yet none of these people have functional knowledge of real practical networking or server administration. They function as gateways to subcontractors, some of which follow the executive from job to job, and the officer level of the company is so ignorant of the issues involved that it continues.

    Then there's the "Cloud".

    It's the biggest ripoff any company can be subjected to. A multi-layer IT staff that only administrates the actions of sub-contractors. And yet while this management structure can be three layers deep- it does nothing, presents no skill set, and is useless without the added expense of subcontractors which provide "IT Expertise" as a service. And the company... isn't even in control of it's own data. It's security and availability is now preserved by a third party company whose interest is singularly profit.

    So when "CIO Magazine" writes an article saying that CS majors are not needed all I can do is chuckle.

    --
    Another consultant who stuck it out.

    "We are the Priests, of the Temples of Syrinx..."
    1. Re: My Take... by Anonymous Coward · · Score: 0

      +1000 - couldn't describe more accurately how computer industry works in 90%+ of the places.

    2. Re:My Take... by JaredOfEuropa · · Score: 1

      It explains nicely why the profession is in such a sorry state. And while it sounds like the author of that article doesn't know the first thing about programming himself, it would appear that he is in academia teaching CS (from a remark at the end of the article). That makes it even sadder.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    3. Re:My Take... by Anonymous Coward · · Score: 0, Troll

      The "profession" is not in a sorry state: it's precisely where it's meant to be. IT people are treated exactly for their worth: next to nothing. Nobody really needs internal IT departments anymore, we outsourced everything to the Czech Republic (we operate in Italy and France) and got rid of our IT staff. Good riddance, we have 24/7 service now, full redundancy and had no downtime in 10 years. Before we had to deal with unpleasant, know-it-all IT clowns who refused to work on Sunday and wanted a whole floor for themselves. The day we fired them without warning and had them escorted out by security, the whole workforce cheered.

    4. Re:My Take... by Anonymous Coward · · Score: 0

      Lies.

      You probably have shit applications now, but I do hope when SHTF you personally have to work Sundays.

    5. Re:My Take... by Anonymous Coward · · Score: 0

      Very true. But not only in Computer Science.

    6. Re:My Take... by WorBlux · · Score: 1

      The day you outsource IT is the day you've outsourced your trade secrets.

    7. Re:My Take... by Anonymous Coward · · Score: 0

      Hint Hint, dont work for a company like that, but one of said subcontractors, that's where the real IT work is.

    8. Re:My Take... by Anonymous Coward · · Score: 0

      I'm guessing you really mean the folks who provide your tech support. Not the people who create the custom business applications that your company uses to generate it's income.

    9. Re:My Take... by Anonymous Coward · · Score: 0

      The leaders making the decisions will be long gone by then, and, they're not "yours", you are "theirs". They and their comrades.

      It's a big fucking scam and lies upon lies.

    10. Re:My Take... by hey! · · Score: 1

      Well, look at the magazine it's published in. Who actually subscribes to that?

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  16. Epic stupid by HeX314 · · Score: 5, Insightful

    It's almost comical just how false most of these stereotypes and arguments are.

    1) Knowing lots of theory allows you to approach a problem from multiple possible analytical angles. Lacking that kind of critical thinking will make you an excellent drone employee who can execute orders given by smarter people.

    2) I take issue with "rarely used." I know CS people love their esoteric languages, but they are hardly the norm for example code.

    3) I don't think I've met a single CS professor who couldn't write code.

    4) Data structures? You use them all the fucking time. ALL THE TIME. You just don't know it because someone made it idiot-proof, so now even your dumb ass can use them.

    5) There may be some truth to credentials making people more confident, but the same could be said of anyone with any recognized accreditation. Furthermore, I feel like this applies more to businesspeople than scientists.

    6) There's a reason you don't find highly-specific industry trending software tools being taught in "the average cirriculum." It's the same reason you learn to dribble a basketball before you learn to dunk: fundamentals.

    The highlights read like garbage written for adult children.

    1. Re: Epic stupid by Anonymous Coward · · Score: 0

      Agree, epically stupid.

    2. Re:Epic stupid by Anonymous Coward · · Score: 1

      5. "Confident"? Arrogant is the correct word. There is a tendency among academics to believe that while - at best - they are aware that they might not know everything, they certainly know better than the guy who doesn't have a degree. Which does actually happen to be turns out to be false every now and then.

      A degree does not make you omnipotent, unfortunately there are way too many who thinks otherwise.

    3. Re:Epic stupid by next_ghost · · Score: 3, Insightful

      This. Ad 6) A CS degree will teach you about callbacks, asynchronous processing, and all the other fancy stuff you'll use in Node.js, React and any other brand new revolutionary technology that was originally invented in the 1970s. When you know the theory, you can learn the latest shiny technology by reading the manual over a weekend and then coding a small toy project over the next week. If you don't know the theory, it'll take you a year or more before you figure out how those cool but so damn counter-intuitive features really work. And then you'll have to rewrite everything you did over the past year from scratch.

    4. Re:Epic stupid by Registered+Coward+v2 · · Score: 1

      5. "Confident"? Arrogant is the correct word. There is a tendency among academics to believe that while - at best - they are aware that they might not know everything, they certainly know better than the guy who doesn't have a degree. Which does actually happen to be turns out to be false every now and then.

      A degree does not make you omnipotent, unfortunately there are way too many who thinks otherwise.

      Then you are working with the wrong academics. Many I have worked with will accept a better idea and actually enjoy a robust debate about how to address an issue or idea.

      --
      I'm a consultant - I convert gibberish into cash-flow.
    5. Re:Epic stupid by Chelloveck · · Score: 1

      The highlights read like garbage written for adult children.

      -1, Redundant. The summary *already* says it was CIO magazine.

      --
      Chelloveck
      I give up on debugging. From now on, SIGSEGV is a feature.
    6. Re:Epic stupid by david_bonn · · Score: 1

      This.

      I'd add that a lot of the skillset that the article criticizes is often desperately needed.

      That "theorem-proving" mentality is extremely handy if you are writing subtle code. It will at least make that code easier to debug.

      Understanding data structures is very useful when you are tackling a representation problem. And understanding when you have a representation problem and how to deal with the tradeoffs that inevitably happen is a big chunk of most programming projects.

      Being exposed to different programming languages can give you more intellectual tools to describe a problem.

      TFA didn't really mention it, but CS is also useful when you need to design an algorithm. And also for recognizing when you need to design an algorithm.

    7. Re:Epic stupid by gnasher719 · · Score: 1

      That "theorem-proving" mentality is extremely handy if you are writing subtle code. It will at least make that code easier to debug.

      I tend to write code with the attitude "if I had to prove it is correct, then I could (unless I didn't pay attention and there is a bug, then I need to fix the bug first)". It makes life a hell of a lot easier than having code where you don't have the slightest clue if it works outside the test cases.

  17. It's not that CS degrees are bad by Tough+Love · · Score: 4, Insightful

    "It's not that CS degrees are bad, it's just that they're not going to speak to the problems that most of us need to solve."

    What is that problem you need to solve? How to appear to be doing your job when you are actually laying waste to your company's future?

    --
    When all you have is a hammer, every problem starts to look like a thumb.
  18. An Open Secret Known for Decades by clawhound · · Score: 5, Interesting

    This is an open secret that's been known for decades. The best minds that I've work with are almost invariably from other majors. The sharpest programmer that I know came out of the music department. In most positions, technical skills represent about 1/5 of what you need to do a job. Those other 4/5 matter a whole lot. It's easier to teach a humanities person some technical skills than it is to teach a technical person humanities.

    1. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      IMO, the most dangerous types of programmers are the "smart" hotshots who believe that because they've analyzed the program in its current state and found it to be design-defect-free, that it's not necessary to add precondition tests in their functions. These are usually younger programmers who have not had the *cough* pleasure *cough* of maintaining a 20+ year old code base.

      Dear younger programmers: If a function will fail in mysterious (possibly UB) ways when you give it bad inputs, then you need to at least assert the precondition so it will fail reliably in debug builds. Better yet: if it's a managed language, then you should unconditionally throw an exception on bad input! A crash is always better than data corruption.

    2. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 1

      Just try to teach math to humanities... When you are tasked to get a 99.9% availability, you better have to deliver. And that involve math, you know probabilities. Sorry, but not. Everybody can learn to write, but that does not make you a writer and certainly not Proust. Everybody can learn to write in a programming language, that does not make you a programmer and certainly not Ken Thompson.

    3. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      I worked alongside multiple doctorates with no credentials when I started and it was almost always nearly the case that they were slow, useless and out the door at 5PM. Incredibly lopsided. The PhD's in tech outside of academia are seriously hit or miss.

      As a counter-example, the other top programmer had 2 doctorates and was exceptionally gifted. He was single-handedly more valuable than all the other doctorates put together.

      In any sizeable tech company, you can be sure that most of the PhD roster is mostly fluff to convince investors that their idea/product is Officially Scientifical and they even have some high-priests from academia to prove it.

    4. Re:An Open Secret Known for Decades by Cederic · · Score: 4, Insightful

      While I would want evidence a humanities graduate can cope with the logic and other demands of programming, I do agree that this is hardly news.

      People under 35 or so don't seem to realise how rare university degrees used to be. Some of the best programmers I've known didn't go to university. All of the best programmers I've known didn't get a degree in Computer Science.

      That doesn't mean a CS degree is worthless. Any technical degree has merit. It just doesn't mean they're any good at delivering working software in a business environment, which is where the majority of programming jobs lie.

      I have no objection to hiring CS grads but it's fucking lunacy to require it.

    5. Re:An Open Secret Known for Decades by JaredOfEuropa · · Score: 4, Insightful

      The sharpest programmers I've worked with almost all started programming before they graduated high school. They went on to do a variety of majors, a few doing CS, most of them mathematics, EE, physics or chemistry. Point is, they combined a solid grounding in science and mathematics with a passion for programming. I know a few great programmers who are largely self-taught without the benefit of a degree in a related field, but they are very rare.

      For some time, CS majors might not have been the best choice for programmers, but not for the reasons mentioned in that CIO magazine, but because the IT job market was red hot, and CS drew in many students without a real passion for the subject.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    6. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      That's completely true. What is also true is that having a CS degree doesn't make you Ken Thompson, nor does it per default invalidate the opinions or contributions of people who don't have a degree in CS.

    7. Re:An Open Secret Known for Decades by dwpro · · Score: 1

      They may be sharper minds, but they don't have what they need to be a programmer. One counter-anecdote: my wife is from the humanities and is one of the smarter people I know (certainly smarter than me) and she is being forced to learn python to code for her genetics analysis.

      I've spent a fair bit of time attempting to instill some of the fundamentals of programming (separation of concerns, types, organization of code, ) While she's learned enough to get things done, every task is a new exploration of how far you can get before you have to backtrack to the fundamentals (IE: this loop is taking 5 hours, is this something I should expect?). To her credit, her code is documented extremely well, but she has near zero code reuse (copy and modify constantly) and the giant expanse of code and metadata that's not under version control gives me twitches thinking about. She doesn't enjoy the important minutia of coding syntax and debugging, nor patient with the poor documentation of online examples. She hates when instructions are not being extremely explicit about every single step required for someone without a background in the field.

      I don't think any of these are unique experiences for someone being forced to start anew in programming, and I think they represent way more than 1/5 of what a programmer does day to day.

      --
      Millions long for immortality who do not know what to do with themselves on a rainy Sunday afternoon. -- Susan Ertz
    8. Re:An Open Secret Known for Decades by tippen · · Score: 1

      ^ +1 Insightful

    9. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      Out the door at 5? How dare they have a life!

    10. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      you sound retarded

    11. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      Haha no. They leave ASAP because there's only so many hours they can futz around pretending to look busy, without making it obvious they are just a useless, vestigal piece of shit.

    12. Re:An Open Secret Known for Decades by lenski · · Score: 1

      Individual differences are critical.

      I've worked with Ph.D.'s in Math, EE, CS, Nuclear Engineering, Marketing, and their attitudes and capabilities are as diverse as any other human population, though strongly biased toward being very good at what they do. Most are confident, comfortable in their roles, and entirely OK with learning from their co-workers.

      Then again there are exceptions, fortunately (in my experience) not many. I've met a few who were indistinguishable from total dunces and terrifically insecure. It was unfortunate, as it was clear that they *could* know what they were doing, but couldn't get past their issues to really shine as they should have been able to.

    13. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      ...Posting anonymously to avoid karma whoring, replying to my previous post with a forgotten observation...

      I've found that the majority of well-educated co-workers who know what they are doing use their education and knowledge to inform what is usually a deeper understanding of important but subtle aspects of problems and their solutions, both theoretical and in implementation. They either deliver their own work well, or offer (usually valuable) suggestions to co-workers based on their observations.

      The piled-higher-and-deeper dumbshits use their "education" to avoid bothering with details like getting things right, sitting on their educational laurels instead of getting into the work.

    14. Re:An Open Secret Known for Decades by Anonymous Coward · · Score: 0

      It is about probabilities, statistics. What is chance of CS becoming a programmer or a Ken Thompson? Vs humanities?

      There is a distribution and the distribution is in favor of CS, today. Young people with an interest to programming are attracted to a CS curriculum. Motivation, interest and hard work is what matter at the end. AND doing CS studies is strongly correlated with those.

  19. CS major attracts the right people by Anonymous Coward · · Score: 0

    Probably not as much about what you learn in a CS major than who studies it. Typically the people that loves programming from childhood. The fundamentals taught in CS transcends the specific tech and lays a proper foundation. Real world skills are learnt almost exclusively on the job in most of the complex highly skilled jobs, not only IT related. CS majors are the only people that ever performed properly at our sw dev company. Electronics Engineering majors are obviously intelligent but they've never created anything lasting in our factory and are not considered anymore for vacancies.

  20. Same goes for accountants. by AntisocialNetworker · · Score: 1

    Accountants are also obsessed with maths. Get real, who needs skill in the Post Truth age?

  21. Lot of misplaced CS hate by Anonymous Coward · · Score: 1

    If you're studying computer science with a view to having a career in programming then you're doing it wrong.

    If you read computer science and then immediately conflate that to programming then you're doing it wrong.

    If you're studying computer science because you want to have a career either in academia, research, or applied mathematics in the technology industry then you're doing it right.

    So many people misinterpret what computer science actually is to the point where people are studying the subject expecting to become top-tier programmers. It's quite sad really. If you want to be a top-tier programmer then study programming, don't waste your time learning about why computers work when all you really want to accomplish is to learn how they work.
     

    1. Re:Lot of misplaced CS hate by yithar7153 · · Score: 1

      The problem is most universities only offer a Computer Science degree rather than a Software Engineering one, and employers specifically are requiring a BS in Computer Science. I think coding bootcamps are great as I attended one, but there's still a stigma associated with them as bootcamps vary in quality greatly. For example, you have top tier ones, okay ones, and then trash tier ones.

  22. Whatever by Anonymous Coward · · Score: 0

    The depth acquired in a cs postgraduate degree gave us google and every other leading software house. If u teach someone to program just enough to bash out a solution to a basic problem (no pun intended) , that's fine, u might get a cludgy solution that meets a short term business need. But you will never get another Google. It's that elitism that op complains about that changes the world. Lastly, I agree. The op is an amateur who was rejected at an interview for a $1000+ dollar a day job because, he doesn't have a cs degree.

  23. Without education be prepared for dunning-kruger by Morpf · · Score: 0

    Like the math PhD i work with, who thinks he is good, because he coded a bit C++ for his thesis. Still unable to use a debugger (hey, we can print to console) or even his IDE after 3 years of working as a software developer. Writing code that I then need to fix all the time for huge performance bottlenecks, security holes, unmaintainability and outright compiler errors. Using libraries for as many years not knowing why he is doing something (cargo culting his way through) and "explaining" why we can't do things right (in the sense of software engineering), because we are so small, we don't need it, we are so special, this doesn't work for us... yeah sure.

    This is the exact reason why PHP and most of the things coded in it are such a mess. Too many people running into the tides without taking the time to learn swimming in the pool. I certainly would not argue that my CS degree would make me a good physicist, mechanical engineer, medical doctor or landscape architect. So why would a degree in physics or any other field make one a good programmer?

    Sure go ahead and build your software company with autodidacts. Have fun maintaining anything more complex than 1 kloc.

  24. clickbait by Martin+S. · · Score: 4, Insightful

    Clickbait aimed at the hard of thinking

    When a headline asks a question, the sensible answer is always a resounding No.

    1. Re:clickbait by igny · · Score: 1
      --
      In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
  25. The GP is right, ... to a certain degree. by Qbertino · · Score: 4, Informative

    I've been progging for 33 years, since my teens. Classic 80ies computer kid. I do that for a living since 18 years ago. I've finally enrolled in a BSc CS track that I'l pobably manage to complete, after having done my German GED High School diploma 3 years back. I'm in the second semester, only taking a few courses at a time, and pushing a wave of exams in front of me. I do part-time, because I'm working as a professional webdev too.

    Here's my observation and it's 100% spot on with my expectations and one of the reasons I'm doing CS in my late 40ies:

    The basics - Math, theoretic CS ("Theoretische Informatik" ... dunno what that's in english exactly), graph theory, expanded theory of sets and so on are exactly what someone doing anything computer related at a professional programmers and software architects level should know and be able to wrap his/her head around. Being able to algebrahicly express and calculate the complexity of a relational graph in a database is a level or two above simply discussing which goes in what entity. It's tough - boolean algebra is a particularly neat alien monster to tackle if your not into algebra that much - but it's doable and it ups your understanding of what you're doing in your everyday work and it does away with the fog that covers many deeper areas that IT people encounter every day and should know more about. This is the reason you should do CS if you'e doing IT professionally. At least a bit of it on the side, in Kahn Academy or something.

    Point in case: I'm in a CS project group right now reimplementing RSA to learn all the n00ks and crannies about it. Very nice. Slow as hell and crappy n00b code by my 19 year old comrades, but we all (me included) learned new stuff. For instance: Asmetric is hard and demands performance, thus is only used to do a preceeding exchange of a symetric key before the show starts. That's why https handshakes take up 1.5 of the 3.5 second rule for loading and displaying websites. Now who without some CS knowlege is aware of this?

    However, there is the other side that the GP mentions, and this is a very simple cold hard fact that CS faculties need to get into their collective head: The avantgarde of software development is not in academia anymore. The regular skills you're teaching your students are most likely sub-par and will be nigh obsolete once your students leave for the real world. Yes, there is the occasional Scala that comes out of a university and then gets some hype in the industry, but that only works if the Prof who invented it is in the industry himself aswell.

    Point in case here: We're doing this project in IntellyJ Idea already (bad idea imho). The introduction into the IDE was sub-par and the Prof talked bullshit and wrong details about Git. I could've given his introduction on the spot and he would've learned some new things. ... That's because they probably only moved from SVN a few years back.

    Kotlin is barely on their radar and it's already being used in the industry, in non-trivial projects.

    Bottom line: As far as practical skills go, CS is too far behind the curve. I'm sure they are becoming aware of this and many a college is trying to catch up with close ties to the industry, but right now I learn more and better at local meetups than in class. Graph theory and math however I doubt I find some better place to learn that than at my faculty.

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      Say the guy that just barely write and speak one language!

    2. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      non-native english speaker.
      I'd cut that poster some slack.

    3. Re:The GP is right, ... to a certain degree. by serviscope_minor · · Score: 0

      Kotlin is barely on their radar and it's already being used in the industry, in non-trivial projects. Bottom line: As far as practical skills go, CS is too far behind the curve.

      Both wrong and right at the same time.

      The goal of a CS degree isn't to teach practical skills for the next 5 years.

      In terms of being behind the curve, it's usually so far ahead that it looks irrelevant. Look at Kotlin, it's now out there in industry using well established techniques which makes it not especially interesting from an academic point of view.

      It does have things like generics and functional techniques which for a long time were thought of in industry as impractical irrelevant things from academia. Academia should be teaching you the stuff that's so far ahead of the curve it looks irrelevant because people have figured out some of the theory but not the practice yet.

      --
      SJW n. One who posts facts.
    4. Re:The GP is right, ... to a certain degree. by swilver · · Score: 4, Informative

      For instance: Asmetric is hard and demands performance, thus is only used to do a preceeding exchange of a symetric key before the show starts. That's why https handshakes take up 1.5 of the 3.5 second rule for loading and displaying websites

      This has absolutely nothing to do with the performance of the assymetric encryption, but everything to do with the two extra roundtrips it takes for the HTTPS handshake.

      And no, I don't have and never will have a CS degree -- I only have a solid interest in how stuff works (tm), which has led me to expand my knowledge in all kinds of areas.

    5. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      Say the guy that just barely write and speak one language!

      Wha? You couldn't even write that sentence correctly. How the hell are you able to write code that works?

    6. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      As far as practical skills go, CS is too far behind the curve.

      The only practical skill you need to learn in CS is to learn how to quickly learn new things for a project, when certain types of paradigms are the best approach for a project if you're the one who actually is helping decide such a thing, and to be flexible with the demands of what's most important to the task. The actual base theoretical stuff is no newer than about the 1970s. In some ways Computer Science is a misnomer and should be called Computer Mathematics.

      I'm sure they are becoming aware of this and many a college is trying to catch up with close ties to the industry,

      To a certain degree that is useful, but for the most part that's entirely use. That which is hot to the industry today will likely be obsolete (at least as far as entry level jobs) in 5 years. So, sure, learn one thing the industry does for one course. Most of it should be done in a variety of languages precisely because you never know what you're going to use.

      but right now I learn more and better at local meetups than in class.

      Welcome to College. Where about 10-50% of the actual learning occurs directly related to class. To make a reasonable analogy, what you're saying amounts to me thinking I can become an Olympic champion because I spend a measly 10-20 hours in class exercising and practicing my technique. Most people taking CS degrees have the other 92 hours a week (not counting sleep) to exercise and practice their technique, so that's the order of expectation on what you'll be facing in your competition. It is to me the major reason why an early full-time College life vs a part time College life is such a major thing: it grants you 4 years to focus on your craft without massive distraction.

      PS - If all you're aiming for is to become familiarized with the latest tech and want to just jump straight into a job, you should look into an Associates degree in programming or the like. While you definitely don't need a CS degree as people can definitely become familiarized enough on the theory and applicability of computer theory on their own, most people who fast track obviously are trying to avoid actually doing that. That almost always means losing a lot of total comprehension.

      PSS - If you think so far the actual hardcore-ness of the curricula is lacking, that's mostly because the first two years are heavily into getting people up to speed and weeding out those who fail on even the basic things. I know personally it didn't become at all hard until the last part of year two. By year four it was mind numbing in some ways but in a good way.

    7. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 1

      Sure, buddy. If that’s the case, why bother with the symmetric encryption at all? It just complicates everything so you should use asymmetric for the whole conversation?

      It’s programmers like you who make my mobile phone run too hot. Please stop “programming”.

    8. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      Knowing that one type of rock sparks, and another type doesn't, is all you need to know in order to start a fire. Knowing why your rock sparks doesn't help in that equation. Knowing the details behind code structures and algorithms doesn't help you build a massive codebase without it imploding or needing a complete refactor. And so it goes with CS grads, they understand the complexities behind interfaces that exhibit principled and predictable behaviors. But non-grads can also reason about those behaviors through observation. I'll take a less than optimal but highly maintainable codebase over a lightning quick heap of shit any day.

      The reason you should take CS is to exhibit your own ability to understand complex ideas. You're going to need a certain degree of problem solving abilities to build clean and optimal-adjacent software. Having a degree says you are equipped to learn how to solve those problems because you've shown that you can solve similar problems over there in CS land.

    9. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0, Informative

      If you want, "practical skills," go to a Trade School.

      Want to learn how to think? Maybe go to College. YOUR problem is that you think it's supposed to be like a Trades School when it's more a discipline than anything else in this case.

      The schools may be inadequately teaching the courses, but it doesn't lead to YOUR supposition that he's partly right. He's NOT. But then, you're probably not having Mechies and EE's honestly ask where you got your Engineering degree, do you? Hehe...Kotlin? It's WORTHLESS and only sort-of used in the industry. The moment you used that statement...you lost and you lost any argument, because you're just flatly CLUELESS. You're better served with other tools. Kotlin's only used by the wonks that like JetBrains' stuff. Seriously.

    10. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      I know a fairly large number of people who are unable to spell correctly and still are very good programmers, physicists or mathematicians (Even one who is a famous writer...). Some of them have got severe dyslexia, others are not writing in their native language.

    11. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      And no, I don't have and never will have a CS degree

      I do, and back at school I was told that purely asymmetric encryption is much slower than symmetric cyphers (like DES or AES), which is why real applications use hybrid cryptography: the expensive public-key operations are performed only to encrypt (and exchange) an encryption key for the symmetric algorithm that is going to be used for encrypting the real message.

    12. Re:The GP is right, ... to a certain degree. by Anonymous Coward · · Score: 0

      Businesses write Java, language specs which are HORRIBLE! 'Nuff said.

      Kotlin, while I don't use it, from what I've read so far sounds like going down the same vile paths that Ruby and Rails did, not too long ago. While Ruby has very nice and clean syntax, how you can abuse the language, especially with Rails, under the never ending temptational umbrella of "cleaner code". Trhough unintentionally making it less explicit and adding dependencies where none previously were required, it's an effective lock for making code hard to refactor, or even do cross-cutting changes without later full rewrite. I'm sure it can be used for good, and in the start it will. But all experience shows that then it won't.

      Ironically, this is what CS should explain pros and con's about. And you're right, CS / Academia are often far removed from practical concerns, (ie. what is W3C?), though do provide needed fundamentals that can aid someone figure stuff out on their own.

  26. Re: Without education be prepared for dunning-krug by Anonymous Coward · · Score: 0

    Agree, we hire only CS majors now after stints with every conceivable engineering major.

  27. The next step by Anonymous Coward · · Score: 0

    We've gone from articles about how CS grads can't code to who needs CS grads. LoL

  28. if you want to learn the flavor of the months.. by Anonymous Coward · · Score: 1

    then you don't want a degree. you want crash courses or tech school.

    a university degree IS SUPPOSED TO provide you with the 'well rounded' curriculum. and that includes the analytical thinking, logic and reasoning, and other stuff the summary dismisses as useless.

    with your cs degree you should be better equipped to learn next month's flavor... but the university isn't going to teach it. they don't have to. a degree should have a longer lifespan than rails, ffs.

  29. Many modern skills are ignored by Anonymous Coward · · Score: 0

    Many modern skills are ignored. "If you want to understand Node.js, React, game design or cloud computation, you'll find very little of it in the average curriculum... It's very common for computer science departments to produce deep thinkers who understand some of the fundamental challenges without any shallow knowledge of the details that dominate the average employee's day."

    Luckily, and thanks God. Node.js? React? srsly?

  30. There is some truth in the article by szabo.m.peter · · Score: 1

    Depending on what you want to achieve, I think the article has some points.

    In my experience physicists are very-very smart people who are used to tackle hard problems, where also a partial solution is a celebrated result. This can be good, or bad. If you mainly solve one-time problems with software (i.e. your IT system is a concrete tool with a relatively limited feature set, restrained deployment and lifespan), then these traits are beneficial. It takes a shorter time from problem statement to results, and honestly a 99.5% solution at quarter of the price is quite a good deal.

    However, if you plan to produce something that is developed, maintained, upgraded at several thousands of customers for at least 5, but rather 10+ years (i.e. your software/system is a product, and not a tool) suddenly the rigorous discipline (that was considered nitpicking by the management) pays off. Just chain 10 of the 99.5% solutions together, and let them run each hour of the day. The result is ~30% reliability at a single deployment! Suddenly the statement that someone is more interested in the correctness of the software rather then the results does not seem so bad right?

    According to my limited experience, the solution is banal: mixed teams from different disciplines and backgrounds, CS majors included!

  31. whoever you hire is going to require training by Idimmu+Xul · · Score: 1

    ive been hiring and in charge of development for the last 4 years and even with seasoned professionals i constantly see

    * no logging
    * over optimising unncessarily

    your developer wont be good until theyve worked with you for a year

    --
    The problem with slashdot is that most of its users were bullied and stuffed into lockers as kids!
    1. Re:whoever you hire is going to require training by GuB-42 · · Score: 1

      There are different ways of doing things. I've worked with projects that do extensive logging, some with none at all. Sometimes, optimization of every part is important, sometimes, well, just throw hardware at the problem. They all work provided you have a good vision.

      Adjusting to your vision of the project requires a bit of time, but 1 year sounds like a lot. The only project I spent that much time getting fully operational is a 3Mloc, 20+ year old monstrosity that did the work surprisingly well considering how messy it is.

  32. Somebody wants cheaper coders by gweihir · · Score: 2

    And they ignore that the cheap coders used so often today are already hugely expensive because of their low level of competence. Making this even worse will drive costs for software up, not down.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  33. Idiocracy by Anonymous Coward · · Score: 0

    There is a rise of Marxism and something that resembles Nazism in the United States happening right now. Part of the problem is the sheer size of the government. When the government promises you healthcare, instead of doctors, you know something is amiss. When a leader sees waste in the budget and simply adds more waste in an attempt to fix it, the result is a bunch of wolves deciding to eat the sheep for dinner, except the sheep are the competent who built a foundation for the society, and those people are replaced with those who wish to prey on society for their own benefit.

  34. Ignore complexity at your own peril by Anonymous Coward · · Score: 0

    Computer science is about recognizing and dealing with complexity. Failure to do that right leads to applications that don't scale. "We'll throw more hardware at it" is the surest sign you need people who know CS.

  35. The world has gone to sh*t by c++horde · · Score: 2

    This literally was the most idiotic article I've read in sometime. No wonder the author wrote it anonymously. Apparently CS majors are mathematicians, yea, well, I guess he hasn't seen the part where an undergraduate is no longer required to take the mathematics that was once required. I went into a company that had written close to 50,000 lines of code to solve a simple over-time calculation. It was extremely moronic. Their "best developers" from India with CS degrees had written it. All 22 of them. They complained to me their billing was always wrong and would never balance. That part of the code base was a disaster that I wouldn't wish upon anyone. Four simple piece-wise mathematical functions I derived and implemented in about 30 lines of code fixed all of it and replaced 50,000 lines of debauchery in about a day. To boot, I created a proof. There is no telling how much they spent on this stupid issue, but having one person trained correctly could have saved everyone a lot of time and money. I immediately returned to visualization systems, and asked not to be involved in those types of projects again. Amazing how management was dumb founded. I quit a year later. They ended up on f*cked company, then I started my own company. My belief, there isn't enough math taught in a CS degree now, let alone any other degree. When you're faced with a real problem, the mathematical tools escape most today. Pattern identification can only be taught through rigorous mathematics. My recommendation, don't listen to CIO's. Fire the CIO and get a competent COO. People have become lazy, entitled, and now believe the tools that built civilization are unnecessary. This is a real problem that unfortunately mathematics can't fix.

    1. Re: The world has gone to sh*t by Anonymous Coward · · Score: 0

      I agree. And I stopped taking Slashdot seriously a long time ago. When it comes to CS-topics, there's just too much jealously here. Jealously, and the Dunning-Kruger effect. It just makes me smirk.

  36. How about we fire everyone else? by Anonymous Coward · · Score: 0

    Getting rid of the few people who can still think sounds like a recipe for disaster, but feel free to try it.

  37. I can't remember who I'm quoting... by Anonymous Coward · · Score: 0

    ... but my reply to this would be "I recommend that all my competitors follow that advice".

    (it was someone from NANOG)

    Seriously, please. Don't hire the smart guys, the ones that are really into it, that love all the bits and pieces, hire the useless drones that have heard that if you are a programmer, you get to sit on your ass and get paid. PLEASE.

  38. The difference by Anonymous Coward · · Score: 0

    between a programmer and a computer scientist is the same as that between an electrician and a physicist. For some jobs you the former for others the later.
    You just have to know what is neededand that is a problem when you are just a business graduate.

    1. Re: The difference by Anonymous Coward · · Score: 0

      That's a superficial, theoretical distinction that I've never met in a real world workplace. You will never get a ready-to-go description and solution to a programming task as an employee. It is never about just typing in some code. What you will get, are vague hints, and you'll have to figure out what is needed by yourself. As a programmer/developer you are expected to not only know programming, software engineering, and computer science, but also the domain of the customer. Programming is really just a small part of it. It is the understanding, knowledge, thinking, analyzing, learning, creativity, and problem solving that's the hard part. All programmers/developers have to do these things in their work, every day.

    2. Re: The difference by Anonymous Coward · · Score: 0

      Also, I'll add a couple of things. People are writing about well known, open secrets in the comments. I'll give you the true secret: Customers don't know what they want, they only have vague ideas and foggy minds. The sales and suit-people have no idea of how difficult it will be to meet all the the customer's ever-changing whishes, so they underestimate and oversell. Then a bunch of managers starts planning on a high level, but still just vague visions, nothing really usable, and mostly buzz-words. In the end it's really the developers/programmers who have to take the responsibility, and do all the thinking, problem solving, and creating. That's the truth in the real world.

  39. Problems with non-CS majors... by borgheron · · Score: 2

    Non-CS majors are likely not to recognize intractable (NP-complete) problems when faced with them. I have seen many non-CS majors who call themselves programmers ignore (or just plain not be knowledgable of) simple approaches / heuristics to solve these problems. Also, non-CS majors tend to be unaware of time saving solutions to problems and will often go for the "straight forward" or "brute force" approach which ends up being more costly algorithmically (the difference between solving something in O(n) vs O(1) can be horribly expensive).

    I don't know why questions or assertions like this come up every so often within the community, but I find it deeply concerning that many people hold the opinion that CS isn't needed or that an institutional education makes you arrogant. By definition, someone who is intelligent is flexible and willing to change... if they are not, then it's a problem with the person, not the institution.

    CS is needed. Make no mistake. If you don't have someone who is a problem solver and knows what they are doing on your staff, you're wasting time and, possibly, lots of money. There is a reason why Google looks for the best of the best from CS programs all over the world.

    --
    Gregory Casamento
    ## Chief Maintainer for GNUstep
    1. Re:Problems with non-CS majors... by next_ghost · · Score: 1

      There's a simple reason why this question keeps coming up every so often: Code monkeys are cheaper than real programmers.

    2. Re:Problems with non-CS majors... by Anonymous Coward · · Score: 0

      And I have seen CS majors stopped in their track by a NP-complete problem, saying that the problem can not be solved.
      But in the real world, large NP-complete problems can still have acceptable solutions.

    3. Re: Problems with non-CS majors... by borgheron · · Score: 2

      Then whoever they are they are not experienced or they donâ(TM)t know what they are talking about. This demonstrates what Iâ(TM)m talking about. NP complete problems are not unsolvable they are non polynomial. The solutions are done via heuristic approaches. For example: your cars gps is solving an np complete problem (routing) by using what is called a greedy algorithm. It will find itâ(TM)s way from point a to point b, but it may not always be guaranteed to find the optimal solution. It can only find an acceptable solution in polynomial time. Finding the optimal solution (I e the absolute best solution) is what takes non-polynomial or NP time. So whoever was stopped in his tracks is full of shit.

      --
      Gregory Casamento
      ## Chief Maintainer for GNUstep
  40. No deep thinkers? :) Good luck with that :) by l3v1 · · Score: 2

    " most businesses don't really need programmers to be deep thinkers"

    This whole writing is a large pile of stinking bullshite. You don't need people with knowledge? There are plenty of those. You only need shallow coders for a short un-important job who'll move along after the job? Even more of those. Good luck building a company for the long term using such people.

    Plenty of "programmers" and "coders" are out there with some level of lanuage knowledge, but what people like the writer above don't always realize is that they usually need people who solve problems, and the ones not being deep thinkers are seldom capable of that. The iidiotic examples about NP completeness shows how the writer is a bigger idiot that those people (s)he praises.

    And the bashing of maths, arrogance, etc? It seems the writer is a disgruntled lunatic, toxic and unproductive. Someone I'd really never want to work with, ever.

    --
    I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
    1. Re: No deep thinkers? :) Good luck with that :) by Anonymous Coward · · Score: 0

      I agree.

  41. The question by Anonymous Coward · · Score: 0

    TFA is essentially a restatement of timeless question we always loved to harass our teachers with "When will I ever use this?"

  42. Reminds me of the joke American Harvard CS:50 by Anonymous Coward · · Score: 0

    The "quintessential" computer science class, which is more like a stage for the current lecturer to perform on, to woo and wow the students, and when they leave the class they have only picked up tiny scraps from a mish-mash of random topics.

    No wonder American students are so behind that the big companies have to hire foreign talent on H1B visas to stay afloat.

  43. The Purpose of Education. by geekmux · · Score: 0

    Institutions breed arrogance. "...the very nature of academic degrees are designed to give graduates the ability to argue one's superiority with authority. "

    Maybe that was the "very nature" of degrees from Trump University, but normally the nature and purpose of academic degrees (a.k.a. higher education) is to give graduates the ability to argue one's educated opinion with knowledge and/or experience.

    And besides, modern society proved long ago you don't even need a high school diploma to give someone the ability to "argue one's superiority with authority." Take a look at any online forum ever created for evidence of that.

    1. Re:The Purpose of Education. by Anonymous Coward · · Score: 0

      Furthermore, those degrees usually do not teach you that, what needs to be done in whatever position.
      They DO tell the employer that you are a) able to learn new things in this ever-changing field and b) finish what you have started.
       

    2. Re:The Purpose of Education. by geekmux · · Score: 1

      Furthermore, those degrees usually do not teach you that, what needs to be done in whatever position. They DO tell the employer that you are a) able to learn new things in this ever-changing field and b) finish what you have started.

      Uh, no, they don't tell an employer either one of those things. They certainly don't guarantee them.

      First off, I find the whole "finish what you have started" validation to be ridiculous and very outdated. I work with plenty of skilled professionals who lack a degree that finish what they start every day. Just because a sprinter has never completed a marathon doesn't automatically mean they're some lazy half-assed athlete, and yet that is exactly what is implied when we attempt to pre judge those who have skills, but lack a degree.

      And as far as a degree telling an employer about your ability to learn new things, a 20-year old IT degree is almost worthless today from a technical perspective, and it tells me nothing of someone's ability to learn NEW things in an ever-changing field. A degree only tells me you were capable at some point, not that you are still capable. I will only learn that through direct observation and experience.

  44. degrees are not sets of technical skills by Anonymous Coward · · Score: 0

    most degrees poorly prepare kids to jump straight into a job because they're not intended to do so, they're intended to give you the background/framework to learn quickly the specific skills you need for a given job and they "prove" that you to some degree are able to learn and work towards a goal

    that being said, what would serve this nation's economic interests better is if we had more community college programs that are in fact specific skill oriented and made accessible to people of all ages that want to get jobs in IT

    what would be especially beneficial is if they offered some kind of starter course in IT that shows students many of the potential tracks a career can take and evaluates them for preferences and suitability so that the people that just are never going to be programmers can figure that out soon before they've wasted 2 years finding out they hate it

  45. That's the problem by Anonymous Coward · · Score: 0

    The problem is that businesses need to get actually good CS graduates that use the subjects that are taught but rarely used. That they don't is why we have all the problems with software that we have now. The snobbery is just with Ph.D.'s, but that's not specific to CS. Theory does not distract, it informs proper engineering. Lack of theory and principle underlying most software is why there are so many bugs and security holes everywhere. You don't need to be taught how to use node.js in school in order to understand how to use it at a job if you understand how languages work in principle. Whoever wrote the article doesn't understand what the problem is that they need solved.

  46. Hate speech by Anonymous Coward · · Score: 0

    "I don't understand what you're doing so it must be wrong. Also I'm super great because I said so and you're not, so give me all of your money or at least work for very little."

    Go to hell.

  47. hire?? by Anonymous Coward · · Score: 0

    Why hire anybody? Shouldn't all IT work be done by unpaid "interns"?

    Why should businesses be fouled up with the stench of CS majors? If they had wanted REAL jobs they should have done a business degree.

    (PS not sure where my dripping sarcasm ends hurtful reality begins here.)

  48. What of the MBAs by Anonymous Coward · · Score: 1

    And yet not a single mention of the uselessness of MBAs. Funny how businesses. particularly tech based ones, fail to realize that they don't sell power point slides, they sell software based services, and yet the development staff is the least respected in the organization.

    1. Re:What of the MBAs by Registered+Coward+v2 · · Score: 1

      And yet not a single mention of the uselessness of MBAs. Funny how businesses. particularly tech based ones, fail to realize that they don't sell power point slides, they sell software based services, and yet the development staff is the least respected in the organization.

      Actually, they are selling neither - they are selling a solution, a new way of doing business, or something else to satisfy the customer's wants. Far too often the sales people focus on why the product is great and the tech folks love all the neat technology; both fail to see what the customer really wants. I've een in meetings with both and the development folks mock the sales people and the sales people think the development folks are a bunch of prima donna nerds; all the while both miss the point of unless you deliver what the customer wants and sell it whatever you do is worthless.

      --
      I'm a consultant - I convert gibberish into cash-flow.
    2. Re:What of the MBAs by Anonymous Coward · · Score: 0

      MBA's should focus on sustainable ICT and sustainable project management.
      If you are not using your subject matter experts wisely, others will eat your lunch and market share. Take Apple. They are brains rich and hire the best, and value experience, while Samsung screwed up by entering the fashion business and anorexic battery slimness Take HP. They got rid of the brains, put Carly in charge and reinvented themselves down the river. CIO magazine is full of buzzword chasing and vision/delusion. The top companies err on the side of taking on the stuff that demands skilled people.

      Sure you can downgrade your staff to shave some pennies. but when there is a screwup, recovering may be impossible. Google and Facebook are mopping up.

  49. Depends on where you are looking, I guess by muecksteiner · · Score: 1

    I think the article is far too one-sided, but he does have some points of sorts. A lot, and I really mean a huge lot, depends on where you are looking. For instance, in Vienna, Austria, the place I studied CS, there is a proud (?) tradition that the typical CS professor knows jack all about actual software development or programming. Because that is for peons, you understand - they are there for Better Things (tm).

    As a consequence, CS curricula there are, while not totally terrible, not particularly excellent, either. You can learn a lot there, typically not from the professors (who tend to be Big Picture guys, and hate questions on what they actually do all day, or what their core competence is, aside from being tenured and getting paid quite a lot), but rather from some over-worked assistant or tutor who actually knows what they are talking about.

    But there are plenty of other unis and countries where CS professors are of course fully aware that CS != programming, and where they do not discount programming abilities as a useful tool for a CS graduate to master. From my limited experience with U.S. universities, this sort of divide seems to run right through the academic landscape there: some unis are "hands on plus all the theory you want", while others are like the article portrays. And which is which is sometimes hard to say.

  50. More broadly, we should look at academia by alternative_right · · Score: 0

    Degrees teach theory, not applications. This is great for theoretical sciences like literature and philosophy, but not as good for IT.

    Apprenticeships are underrated, since most of what you need to know you will learn on the job anyway.

    Too few CS majors know how to code from basics and "hack," or be adaptable, for lack of a better term. This is producing stodgy, insecure code that no one is aware of.

    High turnover ensures organizational memory is lost.

    It would be better to take intelligent people and send them to coding boot camp than to rely on academia. The same could probably be said of most of other academic disciplines as well...

    1. Re:More broadly, we should look at academia by lucasnate1 · · Score: 1

      Are you sure it's that great for literature? I wonder if the correlation between good writers and literature graduates is higher than the correlation between good programmers and CS graduates. I would actually suspect it is lower, considering how postmodernism/PC/capitalism (the first two deny the existence of quality, the third insists that quality only exists in what earns money) messed up humanities.

  51. Where he works ? by Crashmarik · · Score: 2

    I'd start with Equifax

  52. What an idiot... by LordHighExecutioner · · Score: 3, Interesting

    throwing away the importance of modern math and CS theories is suicidal. Never had to do with problems due to rounding errors, for example ? Try fixing them without somebody with skills in CS and math! The author of TFA is probably somebody involved with the development of web interfaces, and we just appreciated the results of many years of progress in web development.

    1. Re:What an idiot... by Anonymous Coward · · Score: 1

      I have personally had to explain the limits of IEEE floats to a bank. They needed to calculate the "cash on hand" in the billions of dollars or higher. The QA testers entered 5 Quintillion dollars and got "not a number". I had to prove that the 64-bit IEEE float the GDP of rich nations. This all required a class in computer architecture in my CS degree.

  53. Programming isn't easy by Anonymous Coward · · Score: 0

    Having had to deal with the legacy of "someone from a physics lab who knew a bit of Python" or equivalent several times over my career, all I can say is that those who heed this advice will reap the "rewards" of it.

    Writing computer programs is easy, any fool can do it.

    Writing maintainable and efficient programs is difficult. This is where education and a creative spark are required.

  54. Security and privacy by Anonymous Coward · · Score: 0

    They were stressed much in my CS curriculum. I could code circles around the coders that came from nonCS trained environs. I had no problem reviewing APIs for any of the topics mentioned in the article. Sounds like the author was a nonCS major and was outside looking in.

  55. Author doesn't know what a proof is. by Anonymous Coward · · Score: 0

    "He’s not really interested in delivering code that does the work as much as proving his code is correct. Okay."

    So the code is proven correct. Is that good? I'd rather have code that "does the work". I do the work all the time. I do the best the work.

  56. There is a difference in applications by Anonymous Coward · · Score: 0

    Computer Science is not the solution path for all computer related careers, not for all of those focused on programming real time tools, and especially not all of those related to business applications. Other degree paths are better for those points - namely Software Engineering (not necessarily Masters level or even Bachelors) and Information Systems (PhD/Masters/Bachelors). On the level of raw output talent itself is an optional input, since its value is in reducing time required for production; an alternative and potentially cheaper path for some programs is simply to divide the development into cogs programmable by anyone given a strict framework. That is the major demand as computer controls gain wider usage in other industries. Of course the high end innovation and research requires a research degree, but most uses are not that.

  57. my 2 cents by BeemanIT · · Score: 1

    Lately I've noticed that courses have gotten better in college. However If your writing the article with the mindset of many useless electives that have nothing to do with the degree your pursuing then yes I could see his point.

  58. That article gives all the reasons why you need CS by Anonymous Coward · · Score: 0

    Where do frameworks like Node.js, React etc. come from? Who can help to make JOINs screamingly fast? Who built the standard data structures that are fast and correct?

    The article reads like "Who needs cow rearing and dairy processing degrees if you can buy milk in cartons." It is apparently written by someone who doesn't have the intellectual abilities to see the beauty and deep thinking that our modern world is built upon. Guys like the author would still be throwing rocks after squirrels to catch dinner if it wasn't for these "arrogant snobs" who carry stupid specimens like him along in their wake.

  59. In Other Words by jmccue · · Score: 1
    TI;DR

    Management does not want to know the business process (or in other words they want to just sit around and do nothing).

    So the Business only wants Business Analysts who can do a little IT.

  60. For management, yes. by Anonymous Coward · · Score: 0

    Not for programming, buy it will be a good thing to have someone who already knows the company to take over when changing managers.

  61. Hiring manager here by Anonymous Coward · · Score: 0

    I run a group in a large organization that focuses on all matters of information security. When hiring, I don't ask about degrees, but I do ask and test ability to code. Based on my experiences not every CS grad proficient in reading and writing code.

  62. It depends by Amiga+Trombone · · Score: 4, Insightful

    I'm old enough that when I got into programming, CS degrees weren't really that common. Most companies were hiring programmers by giving aptitude tests and training people in house. I eventually did end up going for a university degree, after I had been programing for about 10 years, but dropped out after my third year because there was little relevant to the work I was actually doing and the skills I actually needed. For a lot of projects I worked on, being a virtuoso programmer was a lot less important than subject matter expertise. At one time most accounting software was written by people who were accountants that were trained in programming as a sideline.

    I've found CS degrees are analogous to music degrees. Having a advanced degree in music doesn't make you Jimi Hendrix, but on the other hand if you want to be a symphony orchestra conductor or write arrangements, you're probably not going to get too far without one. But I've certainly met plenty of musicians with advanced music degrees who could barely play their instruments. And I've met plenty of terrific musicians who have had no formal training at all.

    Likewise, there are talented programmers with CS degrees, but a CS degree is not a guarantee of talent. And there are plenty of talented programmers with no degree at all.

    Personally, my programming career would have gone just fine if I'd never gotten anywhere near a university, but then, I spent most of it in corporate IT. I wouldn't have a clue where to start writing a search engine, but then, it's highly unlikely I'd ever have been asked to write one.

    Whether you need CS majors or not depends on the work you need to have done. If you're going to develop compilers and OS's, then yeah, probably a good idea. If you're doing routine business applications, then probably not so much.

    1. Re:It depends by Anonymous Coward · · Score: 0

      there was little relevant to the work I was actually doing and the skills I actually needed

      that's why it's called the Certificate of Obedience.

    2. Re:It depends by Anonymous Coward · · Score: 0

      You DO realize that you invalidated your remark there?

      I wouldn't have a clue where to start writing a search engine, but then, it's highly unlikely I'd ever have been asked to write one.

      I'd think that you need to stick to pontificating on precisely and ONLY on what you clearly know- because that would be a "routine business application". And you explicitly said you didn't know about the other. BE SILENT before you remove any remaining doubts on yourself.

  63. World shocked: doctors make horrible nurses and vi by Anonymous Coward · · Score: 0

    Cio recommends filling technician role with technicians....

  64. Better question. by gerald.edward.butler · · Score: 1

    Do Businesses really need to hire managerial/business "school" graduates? After all, can you name a single f-ing company that was started and built into something useful by business school graduates?

    1. Re:Better question. by Anonymous Coward · · Score: 0

      None. So now that we know that universities don't produce either great managers or great developers, what does that tell you about the value of universities?

  65. A fish, or how to fish by Anonymous Coward · · Score: 0

    It's better to teach folks how to fish. A general understanding of a tool is more useful. The syntax of one language and the key bindings of one IDE has limited value.

  66. Ob. The Daily WTF by Sigma+7 · · Score: 1

    There's a certain website that catalogs disaster in the IT industry. First two examples in the article:

    Theory distracts and confuses: Lack of theory causes people to implement O(n^3) procedures when there's already a stock solution that does something default. In one case, someone managed to do an O(n^2) insert for a hash table.

    Academic languages are rarely used: I haven't seen these "academic" languages either in the wild, nor in the classroom. However, users should still be able to port their knowledge over. Also, that site does document some esoteric languages (although giving them alternate names such as "MUMPS"), some of which are really wrapped around PHP.

    When I jump to the last point to analyze it to sandwich the list, the article's starting to look like anti-intellectualism. I also see no solid recommendations on what the author wants - the intro starts with him saying that so many programming languages are a bad thing, but finishes with saying that "angular" and "react" - two different ways of doing JavaScript - are good. Reeks a bit of hypocrisy there.

  67. Businesses need business programming by Anonymous Coward · · Score: 1

    It is a mistake to think a a CS major will be a good fit as a programmer in most businesses.

    If you're writing something novel as a product and you have a group of people who have some experience building a product (this includes a lot of new CS folks, but depending on the schools involved not the majority) then you can absorb new CS people. Be sure to watch their code and their behavior -- it is very likely they will not see the forest for the trees and will need guidance.

    If you'd doing work on existing code in a business, turnover and sensible worker-efficiency is your concern. You are much more interested in paper flow (and virtual paper flow) and interface design than how the machine works under the hood. You need the talent in house to avoid the sort of "write it in VB" reaction that computer-idiots come up with (don't just let the receptionist write your inventory system because he's interested in trying), but you do not need or want clever programming. You want older experienced hands. They often come from liberal arts fields. You do not need theory or math -- you need to be able to see how your code's behavior impacts the workers and how the internal structure of your code is digestible and maintainable by others in your team with different skill-sets than you. Yes, you want to avoid techniques which run fast with 30 users but don't scale to 3000, but you don't want the project run by only people for whom that's the really huge concern when the code is not going to have 300 simultaneous users.

    Typically a young CS major is the last person you want on such a team. A CS major who has been doing business programming for long time and who has social skills is a great find -- YOU WANT THAT PERSON -- HIRE HIM/HER IMMEDIATELY. But often new CS people will be more costly in terms of the mistakes they make that you understand. This is true for new grads on most levels.

    Experience programming can come to people with any major, so look for that experience, not the initial degree. Social skills and the ability to see through other people's eye are a little more likely in non-CS degrees, so keep that in mind when looking through resumes.

  68. He recommended physicists for engineering role by raymorris · · Score: 4, Insightful

    He sounds to me like he recommended hiring physicists for an engineering role, because he's unaware that software engineering and systems engineering exist. He thinks computer science is supposed to be programming.

  69. cs by Anonymous Coward · · Score: 0

    A degree gets you in the door, Ability get you the pay.

  70. CS kids are self-selecting by Anonymous Coward · · Score: 0

    For most kids, CS is a technical degree like accounting. Kids who get one are usually scared about getting a job and choose their degree accordingly because they're not the sharpest tools in the box. This is not true for the top 5% or so of them, but the lower 95% will never amount to anything spectacular. Don't hire them. You're better off with the top 30% of the liberal arts students -- they're smarter, more self confident, more flexible, etc. Get them to read CS books (Data Structures, not Python in a Hurry). The ones that work out will be better programmers than most of the CS applicants.

    CS people from Stanford and MIT don't understand this. The vast majority of the kids who go to Iowa State or OSU and get a CS degree are unimaginative, know it, and are scared they can't compete. You don't want them as hires. Hire people who know how to read.

    Look in popular culture for characters with a bachelor's in accounting or an associate's in business. These are the same people who get CS degrees at most schools.

  71. Bc completely unaware software engineering exists by raymorris · · Score: 5, Informative

    Sounds like the author is completely unaware that software engineering and systems engineering are fields, and people get degrees in each. He thinks computer science is the degree for programming. Realizing that computer science teaches a lot that isn't programming, he suggests hiring a physicist who learned a little programming.

    Maybe an analogy will help him:

    If you want to design and build a physical thing, such as an engine, you get an engineer to design it. The *science* of how an engine works is physics, applying that science is engineering, not physics. Specifically, you want a mechanical engineer.

    Similarly, applying knowledge to design computer-based systems is the job of an engineer as well, a different type of engineer. Either a software engineer or a systems engineer. The difference is that while an engine needs to be designed in detail, blueprints made, before it is built, for software the detailed blueprint *is* the software. You don't need the extra step of machinists physically constructing it after the blueprints are made.

    Computer science is to programming as physics is to engine design.

    Computer engineering, like mechanical engineering, is a degree that teaches you how to design robust, cost-effective things. Programs in the former, machines in the he latter.

  72. From an old timer ... by johnlcallaway · · Score: 4, Interesting

    I have only taken two computer classes in my 40-year career -- Fortran and Cobol. The first was for the credit in case I ever got a degree, I had already taught myself Fortran because I had already taught myself BASIC for a project in my calculus class (I was a math major) and realized I could teach myself far faster than the school can. I took COBOL because I was a computer operator and they wrote programs in COBOL, and I didn't want to stay a computer operator. Every other programming language I've learned since then has been on my own. Except for C++, I took an online course for that.

    It doesn't take a CS major to be a programmer. It does take someone who can understand logic and I believe has spatial awareness, the ability to 'see' how chunks of code and external processes fit together and be able to manipulate them in their head. The best programmers I've ever met were musicians, and I think it's because the best musicians have a high degree of spatial awareness so they can 'fit' different parts of a piece together in their head.

    There are different types of programmers. There are those that need a spec to get anything done because they aren't able to figure it out on their own. Some CS work will help with that, but I think at some level you can't teach it. It's like teaching me to play the piano .. I can learn where the notes are but I'll never be a concert pianist because I just don't have the dexterity and coordination. That's why I play the saxophone instead of the piano. Then there are the natural programmers that just get it, CS will help them get a job because it checks off a box in HR, but for the most part, they are very capable of learning themselves.

    While I believe all aspects of CS can be learned on one's own, they can also be taught faster. Testing techniques, architectural designs, data designs, and a whole host of things can be learned by googling. But, if one doesn't know something exists, one may not be able to find it. A CS degree, at a minimum, should provide exposure to a wide range of knowledge that can be extended as one needs it and technology changes. Let's face it, while we may have come a long way since I wrote assembler, deep down inside, it's still all ones and zeroes, registers and memory.

    Idiots abound, both untrained and trained. If companies were more focused on hiring smart people, paying them well, and then hiring the next level down and letting the smart people mentor them and give them the tedious tasks, we all get a lot more done.

    Regardless of what degrees they have. Degrees don't mean squat, one has to actually talk to someone to figure out if they know anything.

    This isn't mean to disparage learning things, I'm only saying the HR department needs to look past the degree to the person before making decisions. I've known very smart people with and without degrees, and the same goes for idiots.

    I'd rather have smart non-degreed workmate than an idiot with a degree. Ok .. I'd rather have a genius with a degree, so the actual order is:
    1. A genius with a degree.
    2. A genius without a degree
    3. The rest of the idiots for tedious tasks, a degree is irrelevant.

    --
    I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
  73. software architects by Kenneth+Stephen · · Score: 4, Interesting

    Sigh. I hear this argument often, but its not true. You don't need a separate person as an architect when your project is small. Do you need an architect for putting together the barn behind your house? No. But its not because an architect isn't needed. Rather its because, building the barn is such a small problem that the builder (programmer) can perform the trivial architecture piece all by themselves (in most cases, in their head, without needing to formally declare it on paper).

    It takes a while before college graduates deal with the big problems. Until one understands that big problems come with challenges that require a different approach, its hard to understand why an architect is needed. To go back to the example of the parent post: the architect isn't specifying how exactly one needs to implement the code. It is a false argument to say that they are taking away anyone's flexibility in that area; this viewpoint makes it clear that the poster doesn't know what an architect does. To go back to the building analogy: suppose the customer comes to the builders and say that they want an office building. Who gets to make the decisions on what it should look like, how tall it should be, how many entrances and exits, where does the supporting infrastructure (pumps, networking and telephony equipment, etc) go? Its not the builder or the electrician, or the brick layer or what ever the trade is. They are not laying down the vision of what to build. The architect - whether it is civil engineering or software engineering - is describing what it is that you need to implement - not how. An architect is NOT a lead developer. If you have to blame someone for taking away your flexibility in programming style, blame the lead developer.

    --

    There is no such thing as luck. Luck is nothing but an absence of bad luck.

    1. Re:software architects by Darinbob · · Score: 1

      Right, but if the entry level person only knows how to hammer nails then that person will never get their own project. However the person who knows how to build a house may start off just hammering nails to get the first job but over time will get promoted. That means the person will have both the skills as well as experience.

      Architect is overblown here. Lead developer is better, but that lead developer cannot be the person who has no skills. Just like the construction foreman needs to know more than just how to hammer.

    2. Re:software architects by Ensign+Nemo · · Score: 1

      Almost all architects, in software and RTL, that I've worked with over the past couple decades, don't work with the implementers unless forced to. Software architect is a joke title. It has nothing to do with flexibility. it has to do with most of time their crap just doesn't work that well and the always forget something important.

      Most of the ones I've had the (mis)fortune of working with basically spend all their time in Excel or Matlab doing modeling. But they almost never prototype anything, so you can guess what very often happens. "But it works in the model."
      "Software architect" should be an entry level position because most of the crap they come up with needs to be reviewed by the implementers anyway.

    3. Re:software architects by Greyfox · · Score: 1

      Yeah. I worked at a satellite company a couple of jobs ago, and there was no one there who could tell you how the entire ground system worked as a whole. There were a bunch of very siloed departments that could tell you their little piece of it, but no one who knew the whole thing. And you might think they were getting along well enough despite that, but the fact of the matter was their software was very much preventing them from taking on new customers or business. It was effectively impossible for them to grow, while I was there.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    4. Re:software architects by Anonymous Coward · · Score: 0

      This is why lead developers are architects, yes?

      So in practice, you CAN blame 'em!

  74. No they donâ(TM)t. by Anonymous Coward · · Score: 0

    And a CS major will likely not work as a programmer.
    But they can hire CS majors in different roles. Architects is one place but there are many positions that are above the programmer.

  75. Never hire more than 10% in any single degree by Anonymous Coward · · Score: 0

    Never hire more than 10% in any single degree for any role.
    Companies need people with different skills to make the best choices, best products, best profits.

    That includes CS, engineers, history, English, Math, psychology, law, and a few others like sales and marketing.

    Give me a sales/marketing guy who can code! I'll put him with a CS major and step back.

    1. Re:Never hire more than 10% in any single degree by wonkavader · · Score: 1

      This is really good advice. I don't think you can follow it as a rule, but trying to follow it in general will provide better in-house solutions.

  76. By Neruos by Anonymous Coward · · Score: 0

    node.js is web scale, if can be used for any problem, mongodb for life!

  77. Defending ignorance by dpons · · Score: 4, Informative

    This needs to be repeated: "The idea of programming as a semiskilled task, practiced by people with a few months' training, is dangerous. We wouldn't tolerate plumbers or accountants that poorly educated. We don't have as an aim that architecture (of buildings) and engineering (of bridges and trains) should become more accessible to people with progressively less training. Indeed, one serious problem is that currently, too many software developers are undereducated and undertrained. Obviously, we don't want our tools--including our programming languages--to be more complex than necessary. But one aim should be to make tools that will serve skilled professionals--not to lower the level of expressiveness to serve people who can hardly understand the problems, let alone express solutions. We can and do build tools that make simple tasks simple for more people, but let's not let most people loose on the infrastructure of our technical civilization or force the professionals to use only tools designed for amateurs." - Bjarne Stroustrup

    1. Re:Defending ignorance by wonkavader · · Score: 1

      And yet we do -- we hire CS majors. They do not know how to write business software, how to gather requirements, how to look at the costs to the organization and design solutions.

      CS majors are, at virtually all the second and third class schools around, taught to code and understand code/computers, not how they work in our companies or fro our workers.

      You are absolutely right in your quote. We should not be looking for untrained people to write our software. A CS degree generally only addresses part of the lack of competence.

  78. You can self study, saves years and thousands by Eravnrekaree · · Score: 0

    I don't have a CS degree and know more than many CS people do. I never finished college. There is this mentality that there is something magical about a university campus that you can only learn things there rather than anywhere else. I know all about hash tables, parsing algorithms, math, 3D programming, b-trees and all the rest. Rather than just knowing how to write a bash script, I do know about underlying computer science theory and concepts. I am not using SQL without having an underlying knowledge of how the data structures work, the performance trade-offs, and so on, In fact I know more than enough to write my own SQL server if I needed to. So I do have in depth knowledge, rather than just shallow knowledge. I know assembly programming and CPUs work on a very low level. I could write my own operating system if I needed to. Since I have never been to college, none of this should be possible according to the University Lobby, because there is something magical about the piece of ground the University sits on that they have an exclusive monopoly on such knowledge.

    I have never once set foot in the CS department of a university. Universities do not have a monopoly on knowledge, and should not. In fact, the fact is Universities are indoctrination centers and do promote dogma. Going to a University, you are mindlessly imbibing and regurgitating facts on demand, some of it you will never use or need and some of it which is propaganda and manipulation. Garbage in, garbage out. Education is a way of live, its not a place, a university campus, or whatever.

    You go to a University and you spend years learning things you will never use and things which you could learn on your own for a fraction of the cost. It takes years of of your life. 4 years is a long time to spend without any real income, thats a big chunk out of you life that you cannot get back. I think people should be able to start living life at the age of 18 and that means you have a well paying job at that point, it means you are married, you are having your first children, raising a family, in your life career, maybe with an apprenticeship so you can start learning and making money at the same time, and that we can use a mix of apprenticeships and self study for people to learn. As people spend several years at their work, they accumulate more raises and income and seniority pay.

    Until one is married, has a family, is in their life career and supporting them with their own income, they are not a man or a woman, they are still a child in adolescence. Becoming an adult means you take responsibility for your family and begin to raise a family and other things an adult does that really keeps the world turning. College is in many ways a disease, its responsible for pushing back adulthood well into the late 20s and even 30s. Expensive 6 year masters degrees is why we still have depressive, unfulfilled young people living in their parents basement (yegads) at age 30. It is truly a perversion and corruption of things.

    I view Universities as a scam and that the University lobby has a vested interest in pushing the idea that everyone has to go to a University because it is their business model. The only people that might need that kind of environment are doctors but that is a specialized field with highly specialized requirements.

    It may be surprising to many that it once was the case that all sorts of professional people never went to college, back in the 1700s and 1800s. Some of our founding fathers (in the USA) never formally attended college and were self studied, being raised in highly literate families, educated by relatives and their parents, with personal family libraries that encourages their children to self study on their own. Many parents who were a lawyer themselves would personally instruct the children on their trade and their children would learn it from their parents.

    I can understand why CS people might be apprehensive about this article, After you spent $200,000 for a degree to learn things you could have learned

    1. Re:You can self study, saves years and thousands by Anonymous Coward · · Score: 0

      Boy I don't think I could write a post that sounds more like an overly religious southern hick than this.

  79. disagree by Anonymous Coward · · Score: 0

    I dropped out of college to get paid. I was much more likely to produce what was needed to keep the paycheck flowing than I was to do schoolwork that felt disconnected from the real world. While you were in school I was taking low paying tech jobs in places where I could work with talented people. I did the equivalent of a software apprenticeship. I had good mentors and I worked on a variety of problems. One does not need college to produce great software and be very successful.

    1. Re:disagree by anegg · · Score: 1

      I dropped out of college to get paid.

      That's funny... I dropped out of college to get laid. Got a decent job (along with some tail) after chasing a girl to another part of the country. Eventually went back to school so that I could get a degree, telling myself and others that I only needed to get the piece of paper to get the salary (because I could do the work already). When the dust had settled and I had a number of years of experience under my belt, I realized that I had learned a great deal at college, not all of which would have been available to me with on the job learning. Oh, I also scored a great salary right out of school (because I had the piece of paper). On the other hand, I have two friends who went to the same vocational high school as I did and who work in the same field. They have also been very successful, without college degrees. It is a funny world.

  80. trades / apprenticeships can work good in tech vs by Joe_Dragon · · Score: 1

    trades / apprenticeships can work good in tech vs theory loaded people and the trades / apprenticeships people are not 60K-80K in the hole when they are done with school.

  81. Depends on the job by Anonymous Coward · · Score: 0

    Some positions di require a very specialized skill set, but in many cases, no they don't really need to. The highest graded CS grad may be, and definitely sometimes is, worthless in the real world. The same goes for many other jobs and degrees.

  82. Re:Without education be prepared for dunning-kruge by Anonymous Coward · · Score: 0

    dunning-kruger also predicted your post, as it also says that people that believe they are more intelligent tend to overestimate how much more intelligent.

    Just because you have a degree doesn't mean shit. CAN you actually do it? That's the real test. All this is just talk. I'll ask the guy who actually fixes shit, degree or not, for advice.

  83. Definitely not necessary! by Anonymous Coward · · Score: 0

    I started out as a computer operator with a company. I wanted to get into programming, but they would allow me the privilege. I went to another company as a computer operator, expressed a desire to be in programming, and they moved me into programming 9 months later. I had self trained myself in IBM Cobol and assembler, but had no experience with actual programming. There wasn't any training given to me upon being sent upstairs, but I just asked a lot of questions about errors in my listings to people who were willing to help. It took about two months to become proficient in coding. A degree in CS is definitely not necessary if a company has a training program in place.

  84. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    It really shows a lack of knowledge for the field. Saying Computer Science Degrees suck because there are many fields in that area. I did one, granted it was an AA, in Network Design because my local community college offered the Cisco Networking Academy and a couple more classes and I had an AA out of it. There are also 4 year computer science degrees in Security, Network Operations, or many other fields.

  85. It all depends on the type of programming by CaroKann · · Score: 2

    It really depends on the type of programming/systems work that needs to be done. Full stack development is different from back end development, which is different from database development, which is different from business logic development, and so on. Each of these require a different set of knowledge and skills.

    Overall, you need the ability to think logically and to be able to understand how the entire system works together.
    For some tasks, such as analyzing/implementing business logic, an understanding of the business itself, the ability to manage people, expectations, and timelines, and good communication/documentation skills are paramount. If you're working within a system that is designed to hide away much of the technical cruft, allowing an employee to focus on business logic without the need for so much technical knowledge, then I suggest that a non-stem major, such as an English or Business Management major, can achieve the best results. A CS major might feel out of place, and become frustrated at not being able develop some of the more technical skillsets.

    For other tasks, such as those that build up the system that ultimately supports the business, you will need specialized database knowledge, set knowledge, scaling knowledge, systems design knowledge, and so on. For those, a CS, Math, or Systems Architect major can achieve the best results.

    One trend I see in corporate CS is the fact that some companies are becoming frustrated with proliferating technical skillset requirements, and are trying to disengage themselves from the tangled technical web many systems become, even going so far as to develop their proprietary own in-house programming languages that require very few industry-standard technical skills to use.

  86. That theorem-obsessed mindset by AHuxley · · Score: 1

    is what separates anyone who can do something with a GUI and the really smart person what can do it faster and with much less cost.
    The "mathematicians" are the people who suggest that buying 100000 consumer CPU "computers" and some "networking" is not going to be the best, easy "super" computer for a set math problem.
    Math is never going to "distract and confuse". Smart people hired on merit will save a company by knowing what to buy, what to use, what to rent. What will work on a CPU GPU, what problem needs a very expensive hardware product.
    Re "average curriculum" never hire from any nations "average curriculum". Hire only the best who could study and want to study. Who could pass their tests, exams and who can take in new education.

    Look over the past of your workers.
    Can they study? Did they study to get into university? Pass their tests? Exams? Work to a really good standard?
    Find someone who can bring something great to your brand and grow your business.
    A person who can understand and talk about theory can take in more education.
    Can learn and work well with "academic languages". They will do the same with any new "languages". Just as quickly and to a great standard.
    Mathematicians will understand what average people need years to learn about. That give your brand an advantage. Hire more mathematicians.
    Re "required subjects" Workers able to show they can do "required subjects" can then do new "subjects". Thats great when needing to learn new things.
    Institutions breed the ability to study and learn. Then give that ability to any growing company. Win, win, win.
    Some new emerging "modern skills" can be fully understood by anyone who can study and learn quickly. Kind of what skilled people showed they can do for years to a very good standard.

    --
    Domestic spying is now "Benign Information Gathering"
  87. Schrodingers article by A+Pressbutton · · Score: 1

    At the same time

    - the article will appeal to the CIO readers who wonder why that job is so hard and complicated.... surely not really and so will be read
    and
    - the article is completely wrong as this person is writing for CIO mag and why cant a cookery writer do the same or better for less - indeed why is there a CIO mag at all

  88. talk about "written for the internet" by thewolfkin · · Score: 1

    i mean "be careful of that academic language" don't hire people "who are trained to argue their ideas to authority". We don't want that in professional settings.

    --
    Just another second banana
  89. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    People who don't have a degree, and want a job, will of course argue that you don't need a degree to get the job. I observe that the summary accused degree-holders of arrogance and snobbery, and further stated that what they know is out-dated and irrelevant. It all sounds like the natural reaction of someone who was turned-down due to a lack of a degree, and who finds it easier to fling shit than to go get one.

  90. Because "degree" means "skilled"... --.-- by Anonymous Coward · · Score: 0

    I don't have a degree, but have helped more "degree" robot people through university than I have hairs left to pull.

    I don't bitch about "getting" a job though. Begger attitude. I made my own business, and only hire people with passion. Which very much *doesn't* correlate with having a degree.

    Most people seem to see degrees as something to make them money, because they haven't found what they are passionate about, and cling to money as a sad means to seeminly give them worth.

  91. VBA is great! by nten · · Score: 0

    VBA has better built in math libraries than python, c++, or java, and its about 11x faster than numpy for small dense matrices. I'd rather have MATLAB or eigen but I don't always get to pick my tools and then VBA is there to help.

    --
    refactor the law, its bloated, confusing and unmaintainable.
    1. Re:VBA is great! by Anonymous Coward · · Score: 0

      Lay down the crack pipe...idiot...

    2. Re: VBA is great! by Anonymous Coward · · Score: 1

      Learn to argument instead of going ad hominem.

    3. Re: VBA is great! by nten · · Score: 1

      I'm completely serious. VBA way outperforms numpy. It is compiled to native vs the .net VB which is not. And it has everything I need for simple blas and even nonlinear programming all baked right in. Also it can call out to DLLs with a very low cost ffi.

      --
      refactor the law, its bloated, confusing and unmaintainable.
    4. Re: VBA is great! by HornWumpus · · Score: 1

      It's been a while. Does it still leak memory like a sieve?

      Not useless, but if it had to stay up? Wasn't the right tool for the job.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    5. Re: VBA is great! by nten · · Score: 1

      I only ever used it for things I would have preferred to use MATLAB for, so memory leaks or uptime weren't things I looked close enough at. I can image somewhere out there exists a safety of life critical piece of software in VBA that has its VM cycled by a chronic job to avoid memory exhaustion. Because that is the world we live in.

      --
      refactor the law, its bloated, confusing and unmaintainable.
    6. Re: VBA is great! by HornWumpus · · Score: 1

      Like I say, It's been a while. But our clients were trading large double digits (about 30% of N America) of the power in north America, Europe and Australia...on VBA...at least we got rid of the Access backend...

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
    7. Re: VBA is great! by Anonymous Coward · · Score: 0

      This is untrue.

      Numpy calls optimized C libraries (BLAS) for linear algebra. Not sure how VBA can outperform that.

      VBA (not VB.NET) is not compiled to .NET IL. It is compiled to P-code and does not run on the .NET runtime.

    8. Re: VBA is great! by Anonymous Coward · · Score: 0

      > VBA way outperforms numpy.

      Unlikely unless VBA supports vector operations in C libraries, like Numpy does. Numpy has BLAS. The nonlinear programming story is a bit more fragmented in Python but excellent free third party solvers exist.

      Excel has a decent GRG solver built-in but this has nothing to do with VBA.

      > It is compiled to native vs the .net VB which is not.

      This is an outright false statement. VBA is not compiled to .Net.

      https://en.wikipedia.org/wiki/...

      Parent needs to be downvoted.

    9. Re: VBA is great! by Dahan · · Score: 1

      > It is compiled to native vs the .net VB which is not.

      This is an outright false statement. VBA is not compiled to .Net.

      What's false about it? nten didn't say that VBA is compiled to .Net; he said, "It [VBA] is compiled to native."

      Parent needs to be downvoted.

      Nope.

  92. Go for it! by nowwith25percentmore · · Score: 1

    If businesses want to build themselves around unqualified hacks, go for it! As a classically-trained programming heavyweight with lots of practical experience in industry who runs their own consulting business, this is great for me. The bigger & more desperate the mess clients are in, the higher the rates they will bare to bring me in to fix it! Race conditions? Scalability? Crashes? Profit!

  93. But did you actually *get* better? by Anonymous Coward · · Score: 1

    Because that is the part where practical medicine usually falls flat on its face.

    They just redeclare "cured" as "Lifelong addiction to a drug that merely masks the symptoms. Badly." and "Cut away the ill body part, like it's the freakin dark ages.".

    When you see real cures, it is usually some university hospital or straight-up experimental research.
    Antibiotics are a rare exception in that world. We can't actually cure much yet, and havr barely left the dark ages in that aspect.

    So call me when we get cheap non-profit individualizes gene therapies and other propet cures for the average person.

  94. I'm pretty impressivey by Anonymous Coward · · Score: 0

    I'm not a CS major;I'm self-taught. People look up to me, and they should--- I'm pretty impressive.

    I look up to two people in my company. They are CS majors. They are gods. They are the only people I ever go to for advice.

  95. Re:Fake News by Anonymous Coward · · Score: 0

    Pretty much next week's headline after all the STEM promotion bullshit fails and lefties seek an explanation other than "people do what they want"

  96. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    From the job markets I've seen, the different fields are now "Big Data" with R, Hadoop and ML for data scientists. For anything involving parallel processing, HPC and mathematics, the minimum qualification is a recent PhD in physics. A regular CS degree will get you relegated to IT or embedded (microcontrollers).

  97. Completely wrong by Anonymous Coward · · Score: 0

    I don't know this idiot's skill set, but definitely isn't Comp. Sci. You might as well have a non-doctor telling people that medical professionals aren't necessary.

  98. There are alwais people who struggle with knowlege by I+will+be+back · · Score: 1

    There are licensed electricians, who electrocute themselves, there are drivers with drive license, who kill themselves in accidents, there are people with CS master degree, who have no idea what to do with it.
    The good thing it is less harmful than with drivers or electricians ;)

  99. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    When I got my degree, they were not giving out Computer Engineering degrees. Not really.

    When you look at all I do, you wonder where it all came from, part Mechie, part EE, part Software Engineer. All Engineer. All CS degree. The rest? SELF TAUGHT. I started out as an EE, washed out because of the way they taught the math, went into a much more math intensive space and I get EE's and ME's asking me where I got my degree- not being ugly but in wonderment, trying to see where that magic CAME FROM. It's all in how you manage to move your mind, much like a body builder builds up their muscles.

    You can only SORT OF teach a mindset. It's either there or not in it's infancy and engineers are born as much as educated. You can teach someone how to move their mind WITH it to mediocre to great effect. It's pathetic and stupid to make claims such as his (or yours ...which is unsurprising as this *IS* /.) because it's so damned wrong it's embarrassing to see supposedly and allegedly intelligent people making this crap up as they go like this.

  100. Crazy to bundle all software work together by joe_frisch · · Score: 1

    There are a very wide variety of things that get bundled as "software development". Some are extremely simple and repetitive and required little background. Some require a lot of very specific training for a specific job, but are otherwise simple. Others are complex is a variety of ways - complex architecture, complex algorithms, complex interfaces.

    Add to that the some CS graduates are exceptionally good, others manage to get out of school with very little knowledge - similar to other fields. Some self taught "physicists" are also very good, others are terrible. The good ones though usually command rather high salaries.

    It really boils down to managers needing to know enough about a project to hire a person with the right skills FOR THAT PROJECT, and of course with an eye toward any future projects.

       

  101. Studying programming languages and compilers ... by perpenso · · Score: 3, Interesting

    Kind of like how not everyone needs to hire someone who designs programming languages or builds compilers, right?

    Studying programming languages and compilers is important. Such a foundation to build upon is how we CS grads can easily learn and switch to whatever "new" language is the flavor of the moment, while writing decent code that has some understanding of the limitations of the underlying architecture it all runs on.

    Not having such a foundation can lead to those degenerate situation where "fans" of a language try to use it everywhere for anything and require 3 GHz quad core CPUs and 16 GB of RAM to accomplish relatively simple things.

    In short those CS classes and projects teach a young developer there are many ways to do things, a wide variety of tools are available, some tools are better for some tasks, and they learn a little about what happens at the architecture level where all the levels of abstraction have to meet and execute on the available hardware.

    Now can a young developer learn these things outside a formal degree program, sure, but very few have the personal initiative to do so and most need the coercing of the university. And the direction of the university as well since many of the seemingly "unnecessary" classes actually turn out to be useful.

    ...so much software is written now, and the tools are so mature and easy to use, not everyone needs a CS degree to write all software.

    If you think a CS degree is limited to complex problems and inapplicable to modest projects, you are mistaken. CS and other degree programs are a foundation, and with a stronger foundation the personal study one does and the experience one gains will be more effective. Again, its just starting on day one with a bigger toolbox and more tools.

    And for the record, I've gone both the self taught and formal university route. The former is not a replacement for the later, the two are not mutually exclusive, and the CS grads that have an inherent interest in software development (as opposed to those who were told its a good career path) likely have practiced the former as well.

  102. Still at least they got laid at college. by Anonymous Coward · · Score: 0

    Oh wait ....

  103. yes they do by Maxo-Texas · · Score: 1

    I've worked for two multi billion dollar companies that had severe problems due to performance issues with large systems that didn't follow good C.S. principles. Having a degree allowed me to fix those problems with relatively non-invasive changes.

    Excel doesn't scale well.

    An Excel spreadsheet rewritten in Java doesn't scale well.

    Big (O) time matters.

    The number of heads matters more than platter speed under heavy random load.

    Likewise, the code I wrote became cleaner and easier to maintain every release. The code written by non C.S. coders tended to get worse every release and would have even passed a code review if I'd been able to get the business to do it. This meant after a few releases one set of software was increasingly unstable, generated a lot fo after hours on call and unscheduled downtime. The other set of code was stable, responsive to new customer requests, etc.

    The only problem I had was when non C.S. people asked for requests which I knew were impossible. It was difficult to explain why it was impossible to them. They didn't really require C.S. They just required basic logical thinking like you get in your second year math courses.

    I have no axe to grind on this issue- I've been retired for years. These days, I just do occasional massage on crippled programmers. But I was a fortune 500 manager over 15 developers for about the last 8 years of my career.

    BTW, retiring was the best decision I ever made. If you love your work more than anything- by all means do it. But if you love other aspects of life then quit as soon as you have enough money to do so.

    --
    She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
  104. No minors or moles wanted... by Anonymous Coward · · Score: 0

    The Catholic Church continues to be in deep trouble with minors and moles are generally also not good in an organization, especially at embassies, so that leaves only the majors.

  105. "This isn't even wrong" by Anonymous Coward · · Score: 0

    To quote Wolfgang Pauli

    The article reads like it was written by an executive looking to justify getting rid of the company's current programming staff of degreed in-country programmers so they can hire a bunch of cheaper, offshore, less trained programmers.

    The author has not idea how programming works - they mention that "nobody uses data structures anymore, they just throw it into a hash table or database", but nearly every program I know needs morespecific data structures because they are not operating on a mass of identical data, but on things with varying ages, priorities, regions, etc, etc, etc, so the data needs to be structured to allow processing in specific ways.

    All of the comments about 'theory distracts' and 'academic languages' are also signs that the author has no useful experience in developing software for real systems.

  106. Re: Bc completely unaware software engineering exi by Anonymous Coward · · Score: 1

    This is the real problem. CS as a fully accredited degree is not networking, or programming, or database administration, etc.
    Those are either Trade skills or applied Engineering. That's why a degree which sets you up to design chips and motherboards is an Engineering major.
    We keep seeing applicants who claim to have a CS degree in Networking. That's not really a thing... it's some community college or online degree mill using the term CS to attract suckers and justify the price increase as compared to something like a CCNA Bootcamp.

  107. YES... and more by bussdriver · · Score: 1

    Some of it is spot on. My CS department is divided by CS and Software Engineers. Points to remember:

    0) Parent post.

    1) Computer Science was 1st and is prestigious so market demand has pressured the degree to morph into Software Engineering rather than fade into obscurity while Software Engineering becomes the popular desired degree. As a result, older CS *tend* to be math, younger are SE. Today's modern CS program is nearly SE; where a few required courses are are out of the CS/Math area unless your one of the rare schools which has SE and CS and differentiates them more. Naturally, there are people trying to preserve CS and obviously SE needs some CS oriented courses along with Math, a Science Lab etc.

    2) CS is important and the math theory nerds are incredibly valuable and this work has and will be largely done by academics. Professors do not simply share knowledge with students. How can be people be so ignorant as to think that they are like high school teachers? Non-research profs are supposed to TEACH (while research types just share) which is an additional area of applied psychology. The confusion between these 2 subgroups continues in the culture and system. Not that a great deal of education expertise is needed since students are supposed to be capable; however, given how college has been trending away from the intellectual elite to the masses more emphasis on education expertise... another topic.

    3) This attack on academics needs to be stopped by anybody who respects teachers! It is YOUR job (the reader of this) to defend them against the anti-intellectual assaults trending in the culture. Educators have training besides the topic they teach; it is NOT easy or well known how to train everybody's brains on every topic. You can't just plug in an uplink like The Matrix; even then you'll need some trained person to strap the brats into the uplink machine properly.

    4) The article reads like the commonplace foolish opinions that continue to plague the industry. This is why many posters will point out that the cause of many problems today is because of this ignorance of the details of the profession... akin to "I've been to the dentist a lot; therefore, I know something about dentistry. It's over rated..."

  108. There's a reason the academy is in bad oder by Anonymous Coward · · Score: 0

    It costs more than it's worth and the only thing that comes out of it is Marxists. Anything worthwhile that comes out of it is usually an accident. When the education bubble bursts you'll be able to hire former CS professors for pennies on the dollar.

  109. Most of the people on this thread don't know ---- by Anonymous Coward · · Score: 0

    I've been to college, have extensive degrees in a wide variety of subjects,have taught college classes, and have been in the IT field 40 years.

    College is for dumbasses. It is political, it is for the masses - and thus gets dumbed down every year and every decade to allow them, and is generally for that sort of stupid person that wants approval from others and certification, because they are too incompetent to not need something fake to sell others. It is likewise for those that want to control others and tell them you can't do that without our approval!

    You can learn and gain skills much faster on your own, and lately much much faster. The number of people saying otherwise on this thread categorizes them to me for exactly the type of person they are, and it follows the general decline of slashdot over the years.

  110. DATASCIENCE = #1 even in military... apk by Anonymous Coward · · Score: 0

    See subject: Per a field-grade officer (my bro) training for it (SQL)! Told him 'basics' of watch excess JOINS, go for small return temp table sets 1st & keep 'sieving' from there, indexing pertinent fields, etc. - et al (+ security-side).

    * IF I weren't retired since 2008 I'd make 250k/yr.++ (was my title w/ software engineer)

    I also know it via a job offer @ Apple (via a relative who controls iOS/MacOS X builds) via my experience in BOTH BUSINESS + CS (degrees in MIS + a 24++ yr. career in SQL/Delphi/C++/VB/Access etc.)

    APK

    P.S.=> I would IF a business of mine didn't eat my time w/ coding https://tech.slashdot.org/comm... I'd be BACK OUT THERE doing it (& can @ ANY time I like really - was a career & degree track WORTH pursuing)... apk

    1. Re:DATASCIENCE = #1 even in military... apk by Anonymous Coward · · Score: 0

      IF I weren't retired since 2008 I'd make 250k/yr

      Not with your inability to communicate in english, your rampant narcissism and your inability to accept criticism - but I repeat myself.

      You did not and never could earn US$250k, double plus or otherwise.

      I would IF a business of mine didn't eat my time w/ coding

      Are you referring to the fantasy that your host file software is a 'business' or are you referring to something else?

      APK. He's the best. Just ask him

  111. "overcome the limits of their education" misguided by perpenso · · Score: 2

    The theory taught in CS courses has plenty of application and there are plenty of CS people who can overcome the limits of their education, however a high density of CS degrees in a software development team has often in my experience correlated with problems.

    Then you have not learned how to differentiate between the CS grads who chose that degree program because they had an inherent interest in programming and those that chose that program because a parent, guidance councilor, etc told them it was a good career path.

    Here's a simple way to tell the two apart. Has the recent grad written *anything* unrelated to class assignments? I don't care what their personal project was, sometimes I have to coax it out of them because they think it too simple or too stupid a project. But they are mistaken, all I am really looking for is that they had some sort of personal curiosity or "need" to sit down and write some code that was not an assignment from a professor, a boss, etc. Something purely for themselves.

    Your "overcome the limits of their education" comment is misguided, you don't understand a good CS program. Learning to program is left as an exercise to the student, they are expected to learn, outside of class (maybe there is a TA session to help), the necessary programming language to complete assignments. Some do the absolute minimum, these are the "ticket punchers" who take the class to get the degree to get the job, they aren't really there to learn. Others will be more thorough in learning some programming language, will start to think about problems beyond the class assignment, may try to code up a solution to one of those on their own initiative to satisfy their curiosity as to whether they know enough to pull it off, etc. These "stretch goals" are actually expected and encouraged by the good professors. What you think is some extra work they have to perform to make up some shortcoming is actually work expected by the professors, the "exercises" left to the student on their own time.

    Now if you want to rephrase your argument that the less capable students are allowed to somehow skate through the program and graduate that is a valid complaint. But to think that good CS programs do not produce good programmers, that is misinformed.

  112. Written by an MBA? by drstevep · · Score: 1

    After all, they have lots of courses of material on managing hiring planning...

  113. Use software engineering by Anonymous Coward · · Score: 0

    Software engineering is the art of using computers and scientific principles to design computer programs by putting together prefabbed Lego bricks. In the twenty-first century, that is still just a dream, and who would create the Lego blocks in the first place.

    Until that time, computer programming is applied mathematical research, which explains why it so often takes longer than planned. Einstein's theories were not exactly delivered on schedule either.

  114. You aren't much of an engineer without theory by perpenso · · Score: 1

    My only complaint of CS majors is that you guys please stick to theory and math. Please donâ(TM)t lecture engineers on how things work in the physical world.

    Actually the theory is quite useful and helps in the real world. An example from molecular visualization prior to ubiquitous 3d hardware, i.e. software based rendering days. A "non-theory person" quite familiar with the language and standard library used the built in sort function to get a z-sort of atoms in preparation for rendering. The "theory person" with the theoretical understanding knew that the appropriate sorting algorithm would depend on the current data, which from one rendering to the next would be mostly sorted. Knew that the commonly stated run-times for various sort algorithms assumed random data and were therefore erroneous. A quick check of references showed that for mostly sorted data the standard library algorithm was actually a quite poor choice. The "theory person" implemented a more obscure sorting algorithm with excellent performance given the nature of the data and the atom z sort code dropped off the profiler hot spot list. After many such improvements of the code, at an industry trade show, various visitors to the booth were surprised that commodity PC hardware could offer such visualization performance.

    The better programmers understand the practical elements of the hardware and the programming languages *and* they understand the theory. I know engineers who built things sitting on the moon today, they understood the practical and the theory quite well.

  115. Re:Bc completely unaware software engineering exis by lgw · · Score: 1

    Sounds like the author is completely unaware that software engineering and systems engineering are fields, and people get degrees in each. He thinks computer science is the degree for programming

    CS is the degree for programming in most places. Most universities don't have "useless wankery" degrees at the undergrad level in CS.

    TFS doesn't make clear what the complaint is. Most grads in the field know Java and JS, which is what most programming in business is sadly done in, so his complaint is confusing. It's not like you get a grad who only knows Scheme or Lisp these days.

    Is he really upset that it's hard to hire a CS major to maintain his VBA macros in Excel? I thought everyone knows you hire business and finance majors for that.

    --
    Socialism: a lie told by totalitarians and believed by fools.
  116. Music analogy by Anonymous Coward · · Score: 0

    If you want to play in a symphony orchestra, they will expect you to have formal training in classical music, even though Mozart gave concerts at the age of four. If you want to play in a punk-rock band, there is no such requirement.

    A piece of music can be liked by the listeners without conformance to theory. The 'anything goes' approach of Dada poetry and punk rock just doesn't work in programming.

    OK, I used to Apple once. They asked me to design a niew piece of software, but my theoretical knowledge was insufficient for dealing with unstructed information. Later someone created similar software and called it a search engine. (you would need a billiion MacIntoshes to build one).

  117. Hiring the ignorant is always a better solution by Anonymous Coward · · Score: 0

    Hiring the ignorant is always a better solution

  118. Ignorance by bussdriver · · Score: 1

    The article indirectly brings up issues worth discussing; but it was likely the article author lacked any depth of understanding. Especially the idiotic industry complaints of MBA types who are trained to EXTERNALIZE ALL COSTS -- employees do not get training, it's their problem and it's the schools problem etc. A competent employee will train themselves in specific details like tools/languages but they want that for FREE, to the extreme of not even planning for learning on the employee's own personal time (which should be a crime) they want people who already have 5 years experience level skills in technology X (which is 2 years old.)

    We NEED competent engineers to do everything... get don't get enough of them.
    We WANT scientists but we do not need them unless we want to progress forward.

    Science invents new kinds of engineering and makes existing engineering better. It has an indirect impact and it's a multiplier in that just 1 scientists and change the whole world. They rarely get noticed and the masses wouldn't even know about science if it wasn't for all the hype -- and I say hype because the masses can't see the massively important impact science has; they only see the hype and to their perspective it's hardly different than all the other hype. So I can see why an ignorant slow person can't tell the difference... and try to do my part to hype something that shouldn't NEED the help.

    A Software ENGINEER with a proper education will get some CS training and Math needs to be a big part of it... not more than English/language skills... don't take me wrong, I'm in the USA, Math skills are behind; if Math skills were at the proper level then an equivalent amount of Math and English would be required for the SE degree.

    We should still have CS majors, but they probably should go back to their Math Dept roots as a small niche. This would keep the real scientists away from the engineers; it would help both do better. We don't dilute physics by making it cater to mechanical engineers. It is separate and does science that spawns new and better engineering specialization.

    We have CS majors from crap schools who are barely competent at software engineering. It would help to at least separate the two areas.

    1. Re:Ignorance by bussdriver · · Score: 1

      I really hate this stupid automatic typo fixing feature...

  119. With this logic, law firms shouldnâ(TM)t hire by Anonymous Coward · · Score: 0

    No everyone wants trade school kids even if those skills are going to be what you start with for the first few years.

  120. You can waste years on self study by Anonymous Coward · · Score: 0

    You make your own SQL database, your own operating system... But can can mine your own Gallium & Arsenic to produce PNP-transistors & build the CPU? At some point learning from others is worth the time savings. Issac Newton once said he developed Calculus because "I stand on the shoulders of giants."

  121. Foo say by mcswell · · Score: 3, Interesting

    Second time in two days I've had occasion to post my favorite Master Foo story:
    http://www.catb.org/esr/writin...
    (the story doesn't say anything about PhDs, but it does talk about elegant)

    1. Re: Foo say by ComputerKarate · · Score: 1

      THANK YOU! Now I want to go read "The Cathedral and the bazaar".

      --
      "The urge to save humanity is almost always a false front for the urge to rule." --H.L. Mencken
  122. A good CIO already knows this by anegg · · Score: 1

    I've met/worked for a number of CIOs. Some of them are competent, many are not. The worst ones are the ones who don't really understand anything about computers, programming, or even IT in general.

    We study science (including computer science) so that we understand how the world works. We study engineering (including software engineering) so that we know how to apply science to solving problems in an effective and efficient manner. Not everyone needs to be a scientist or an engineer; many people are excellent mechanics (or programmers) without a higher level of study. But hiring the right person for the job depends on knowing what is needed to get the job done, and a hiring manager who doesn't understand this doesn't really understand *their* job.

    A computer scientist *may* also be a good software engineer, or a good programmer (or not - it depends on their interests and their training). A person trained in another discipline altogether may have picked up enough knowledge of computers that they are a good programmer, but it is unlikely that they are a good software engineer or computer scientist unless they have had years of experience performing those tasks.

    CIOs are often business people who fell into managing IT departments (the worst [in my experience] are the finance folks who "own" IT because finance depends on computers to get their jobs done). The smart ones know the limits of their knowledge, and use domain expertise within their departments. The others cuss and fume and have generally antagonistic relationships to the people who work under them because they really don't understand what they are managing.

  123. Easier to teach an engineer programming than ... by tbuskey · · Score: 2

    a programmer how to do engineering.

    I got my degree in Mechanical Engineering. My whole class had PCs with DOS, Basic, Fortran and 8088 cpus. And access to Vax/VMS sometimes.

    In heat transfer, we coded a Chebyshev differential equation to figure out the optimal thickness and spacing for cooling fins. It would take 30+ minutes to run at a minimum. Or 8 hours if you were way off. You learned a bit about better algorithms and speed when things took so long.

    It's not the kind of thing I'd expect a programmer to be working on. And the engineer isn't going to be able to solve it w/o programming because of the thousands of number calculations that are needed.

  124. Re:Bc completely unaware software engineering exis by sjames · · Score: 3, Interesting

    Agreed to a point. Enlarging, if you just want a privacy fence you don't hire an architect, an engineer, a general contractor, and a work crew. You just hire one guy who probably doesn't have a degree in anything and he hires a couple helpers and they put up a fence. You certainly don't hire people degreed in materials science and physics.

    Likewise, you don't need to hire a EE to put a dimmer switch in your dining room. You don't hire an ME to figure out why your Ford stumbles on acceleration.

    The guys who install home theater speakers aren't acoustic engineers.

  125. Computer Science vs Software Engineering by thsths · · Score: 2

    Part of the problem is that we often confuse Computer Science and Software Engineering. We actually need a lot of the latter, but a lot fewer of the former. Just like we need a lot of people who can install satellite dishes than radio scientists.

    If you need an engineer, get an engineer, not a scientist.

    1. Re:Computer Science vs Software Engineering by Anonymous Coward · · Score: 0

      Sigh. The argument over computer science vs. software engineer is an old and stupid one. Most comp. sci. graduates get jobs writing practical software, same as those with SwE degrees. They aren't "scientists."

    2. Re:Computer Science vs Software Engineering by Anonymous Coward · · Score: 0

      I've heard it said that computer science is a science in the same way that political science and library science are.

  126. Re:Bc completely unaware software engineering exis by bjwest · · Score: 2

    So I'd need a structural engineer to design the bridge spanning the internet between the independent networks of my field and home offices?

    --

    --- Keep the choice with the user..
  127. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    his complaint is confusing

    I'd guess the issue is defining when programming knowledge/skills trump subject matter expertise for a particular job, and/or which side is easier for someone to come up to speed on.

  128. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    Realizing that computer science teaches a lot that isn't programming, he suggests hiring a physicist who learned a little programming

    He could be dealing a lot with 2-3 year "computer science" majors from community collages and India. If education is mostly worth fuck all, people start assuming all of it is worth fuck all.

  129. Not getting it by Anonymous Coward · · Score: 0

    Well this is typical criticism of someone that doesn't get what academia is about. It is not about learning a skill but about learning how to use your brain to understand something. The ciriculum is a random tool to do develop that skill. These days especially in the US kids are being sold university degrees which are nothing more than courses that might turn out usefull. When I was a student 28 years ago we where put through rigors in order to get our brains in a higher gear.

  130. This CIO's Attitude by Stormy+Dragon · · Score: 2

    Is why so many companies have data breaches. They hire people who don't know what they're doing, but can jury rig a bunch of crap together so it looks like its working from the outside.

  131. So, Once Upon A Time.... (A Case Study) by Anonymous Coward · · Score: 0

    Shortly after I graduated college I found myself hacking SQL databases. A colleague, and I use that term very loosely, was given the task of finding the duplicated in the ID table. Simplifying things further, he was told what constituted a duplicate; Same phone number, same address, etc. (It wasn't a very well designed database schema, not exactly "normalized".)

    Anyway, he comes back and says that it "Can't Be Done."

    Oh crap. What did you do now?

    Turns out he joined the table onto itself, a Cartesian Join, creating a temporary table with N^2 rows and each row twice the size of the original table. Then, in this giant table, his code attempted to find the duplicates. He actually took down the database process on the mainframe, filling up all swap space & /tmp. They almost had to reboot the mainframe. It was some years ago. A million rows times a million rows is a trillion.

    Christ man, that's O(N^2). Just use an O(NlogN) or O(N) approach.

    He had no training in Computer Science. He had no idea what I was talking about.

    I had to write his code for him. It was 5 lines of code. Just a Group & Having clause, exploiting existing indexes to get it down to O(N).

    He still had no idea why my approach worked and his took the system down.

    And that, my friends, is why you hire a CS major.

    Of course, that fellow didn't hold a candle to another guy who decided to implement a heavily threaded system without mutexes, because he tried it without mutexes and it worked just fine in his test program.

    Hire amateurs, and you get amateur results. Hope you didn't bet the company on that...

    1. Re: So, Once Upon A Time.... (A Case Study) by Anonymous Coward · · Score: 0

      What about that requires a CS degree? Itâ(TM)s not like information about the time/space complexity of algorithms is hard to find on the internet.

  132. Czech Support by Anonymous Coward · · Score: 0

    Czech support is best tech support.

  133. CS vs. Physics by Brannon · · Score: 1

    At the heart of the matter is the fact that most businesses don't really need programmers to be deep thinkers. For them, it's "just as worthwhile to hire someone from a physics lab who just used Python to massage some data streams from an instrument.

    The hilarious part here is that the author is implying that a computer scientist is a deeper thinker than a physicist.

    1. Re: CS vs. Physics by Anonymous Coward · · Score: 0

      Right, this is really weird, as if physicists were cheap shallow codemonkeys you can find everywhere.

  134. ::yawn:: by astrofurter · · Score: 1

    Personally I much prefer to hire and work with English, Philosophy, and Physics majors on programming projects. CS majors are rarely an asset to a team, often a liability.

    English majors understand the importance of _naming_. Getting your variable and function names right is (usually) far far more important than choosing the "right" esoteric data structure. Clarity is essential for maintainability.

    Philosophy majors (sometimes) have clean minds. Nothing matters more if you want the output of the program to be consistently _right_. Note that, precisely because they have clean minds, most Phil majors are completely useless for frontend work.

    Physics majors are just generally smart, and usually can't find meaningful/remunerative work in their chosen field. The nation's failure & the public's loss is my company's gain.

    There probably are some CS majors who are actually competent programmers. I haven't met them, but I'm sure they're out there. They probably work for the _next_ Google. But so long as most startup companies insist on paying permanent-renter wages, all we're going to be able to get is smart people who can't find work in their actual fields of expertise. Yay financial capitalism!?!

  135. Re:Bc completely unaware software engineering exis by Darinbob · · Score: 5, Insightful

    I've worked with these scientists that need a little programming. It makes no one happy, the programming is lousy and the scientist is dismayed at not doing more science. I've got one guy who says "I wrote all the code, I just need you guys to clean it up and integrate it into your stuff", or "why are you designing that piece, I already wrote it!"

    Let me tell you, some of the worst programmers out there are physicists. It sometimes seems like they even forget their math as they complain that their exponential time algorithm takes too long to run.

  136. There should be a variant on Betteridge's law by Hognoxious · · Score: 1

    There should be a variant on Betteridge's law where the question is so vague it barely achieves the level of retarded and thus, despite what your third grade teacher said, it's perfectly proper to reply with another question.

    So perhaps it depends on the nature of - you know, like the shit and stuff - that the business kinda like sorta does?

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  137. Vocation vs. Academic discipline by mi · · Score: 1

    The goal of a higher education is not to teach you to do something, but to teach you to learn how to do it — and other things like it.

    Had the instructors taught the immediately-practical things, as happens in vocation schools, apparently, we'd have to go back for a retraining for each new language or programming paradigm. Using the "academic" languages encourages (and coerces!) learning of multiple things...

    --
    In Soviet Washington the swamp drains you.
  138. CS Major, Nodejs. by Anonymous Coward · · Score: 0

    If CS Majors where involved with Nodejs, they musta all not paid much attention. Nodejs and all these new frameworks keep recreating problems that have already been solved. The ignorance of these modern programmers is reaching Idiocracy levels.

  139. Re:"overcome the limits of their education" misgui by Darinbob · · Score: 1

    Oh ya, when I was in CS, we did not have classes devoted to programming, except for an intro Pascal class and later an assembler class. After that point you didn't get more than maybe a first week of learning the new language and maybe some TA sections to help out more. The class would be teaching fundamentals of algorithms for example, but the homework would involve programming so you'd better pick it up quick. The professors were also not programming experts so you had to rely on proctors or TAs or friends.

  140. Painting all universities with the same brush? by Anonymous Coward · · Score: 0

    In the U.S., at least, there are two kinds of universities: the research university and the teaching university. At the research university, bachelor's degrees are a by-product of the institution. What they are really interested in is research funding and awarding Ph.D.'s. Typically the research university throws cheap instruction (TA's and adjuncts) at undergrads, and they sink or swim. At the teaching university, bachelor's degree students are the reason we exist. Our undergrads do research with faculty, and we know their names.

    I spent a career teaching CS in teaching universities. We had close working relationships with the companies that hire our graduates. One of the comments we heard frequently goes something like this: "We like your graduates over those of [big-name-nearby-CS-research-university] because their graduates don't want to do what we need done. Your graduates don't realize how good they are, and they are willing to tackle any problem we throw at them."

  141. Businesses need Systems Engineers by Anonymous Coward · · Score: 0

    It took a while but I finally figured out what Systems Engineers are good for. First, they can architect a business solution from available technology and specific the work required to glue the pieces together. Second, they can translate the business needs and constraints into a program specification and translate what the CS people are whining about into management speak.

    So, not every business needs a CS major, but every business needs Systems Engineers if technology is part of their enterprise.

  142. Stock market opportunity by Anonymous Coward · · Score: 0

    Short the stock on any public company that is dumb enough to follow the author's advice

  143. Re: Bc completely unaware software engineering exi by HornWumpus · · Score: 2

    CS is weird, at different universities it comes from different schools.

    3 categories, CS program comes from: Math, Engineering or Business. They produce very different graduates.

    From business school, worst graduates, learned a fair amount of practicals, but very weak on math and theory. Beware the Java only monkeys.
    From engineering school, close to the silicon, at least they've most likely learned an assembler or two. Likely best coders.
    From math, loads of theory. Avoid CS majors that don't code, especially those that think they're 'above coding'. Talk about database normal forms past the 3rd. Those are net negative workers, but their are good ones.

    In my experience the best single interview question remains: How many languages have you coded in? The right answer is...long pause...how are we counting? Even for a recent college graduates (the good, recent college grads have about 8-10+ years of coding under their belts). Follow up is: Which do you like best and why?

    --
    John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  144. Re:Bc completely unaware software engineering exis by HornWumpus · · Score: 1

    I'll see your physicists and raise you applied math PhDs.

    OMFG! What steaming piles they can produce.

    --
    John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  145. Oh dear by thesupraman · · Score: 1

    Someone is trying to pull out the old 'learn Humanities, everything else is easy' bs.
    Of course this is only believed by Humanities grads, who generally blinker themselves to the technical capabilities of others while flitting from disaster to disaster because interview skills are all that matters, truth to them is a very flexible thing, and it takes around 12 to 24 months for reality (and the mess they have created) to catch up with them, by which time they move on.

    No.
    Humanities teaches little that is not learnt through normal social and workplace interaction, and often in a more correct and accurate way and over a similar timescale. Technical capabilities are not so easily learnt. Humanities students have generally demonstrated a lack of commitment and interest in technical fields, so will rarely Excel in them.

  146. Maybe by brantondaveperson · · Score: 1

    "Theory distracts and confuses" if you're a bit thick. Otherwise, theory is invaluable and allows you to learn from the masters, and stand upon their shoulders (hopefully). Understanding which data structures, algorithms, languages, and methodologies are available to you - and under which conditions you should choose this or that particular solution, will make you a better software engineer.

  147. business idiots by Anonymous Coward · · Score: 0

    a successfull IT infrastructure has to be planned, constructed, maintained & upgraded.

    vendors change, threats change, and the business changes.

    marketing & businesses have no idea how to run an IT organization.

    business have processes, metrics, products and if they can communicate their plan, budgets, location & timelines to IT the plans runs better.

    IT needs all the quality help it can.

    An experienced IT professional can usually spot the bad paths to take early, the earlier you spot a problem the better.

    Business guys that read IT trade rags and believe all the vendor hype need to be reeducated.

    And so do guys that think all the money is done once a system is installed.

    The battle on the desktop is almost always PEBKAC.
    Educate, make videos, make them think a little.
    Identify your problem children and bootcamp them.

    Don't ever let a bubblegum & baling wire cheap solution get stuff in to production.

    good luck out there...

    I am burnt out from this fight and currently disabled for all practical work....

  148. To the FBI: by Anonymous Coward · · Score: 0

    Please do something about the usurpation of the Yakima City Council: https://www.aclu-wa.org/cases/...

  149. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    You don't need a degree, you only need the skills. Having a degree just happens to be a lot more meaningful than saying "I did a thing with python once."

  150. Hmmm by Anonymous Coward · · Score: 0

    If you are building a web site, sure.

    If you are trying to understand why your function arguments keep changing yet you don't understand re-entrancy nor the threading model, well, then maybe some OS theory would help? And why do you keep looking at me that way when I ask if it's a hardware interrupt or a software interrupt?

    People who believe articles like this are the ones who complain about not being able to find a job, because they don't realize what skills they are supposed to have in the first place, nor how to provide value to their employer, because they have concluded that 4 years spent at the beginning of a career to get a condensed head start is somehow not useful nor relevant to delivering value.

    LOL. You are the guys I don't hire in my interview. Just sayin'.

  151. Reall, no data structures? by uncqual · · Score: 1

    "...it's too bad few of us use many data structures any more."

    If someone writing a program doesn't think they use data structures, perhaps they should have gotten a CS degree from a decent university. Well, arguably, maybe if all they write are simple Hello World programs they are not "using" data structures explicitly (ignoring, of course, that they very stack that is used in the calling of printf() is a data structure).

    I'd be interested in seeing a meaningful system where many programs in it don't use arrays, vectors, lists, queues, stacks, sets, etc.

    Do most programmers still code up their own data structures outside of low level "systems" programming or real time systems, no. But they certainly "use" them and need to know the performance implications of which, for example, container class they pick.

    --
    Why is there an "insightful" mod and why isn't it "-1"? If I wanted insight, I wouldn't be reading /.
  152. software architects cannot code by aberglas · · Score: 1

    Programmers produce code. When they stuff up, it don't go. Obvious.

    Software Architects produce documents. Lots of them. Pretty ones. But there is no objective test as to whether they make sense or not.

    So people that cannot write code that work can become software architects. And people that fail at that can become Enterprise Change Managers.

    There is definitely a place for senior engineers that know how to write code to then develop designs, and maybe they will end up not writing much code. But the non-technical architect is the source of many software disasters.

  153. Re: Bc completely unaware software engineering exi by Anonymous Coward · · Score: 0

    "Talk about database normal forms past the 3rd."

    We got bit once where something needed to be in 4th but wasn't.

    Anything in 3rd but not 4th is in fact another valid data model for a different reality.

  154. Yeah, it's ugly even if you don't know the term by raymorris · · Score: 1

    That's the one part that stuck out to me as well. I would think that for anyone who "gets" normalization, who understands why it's done, seeing redundant data because it's not in 4NF would be at least "icky".

    Even if one doesn't remember exactly what each of the normal forms are, the gist of 2-5 is "duplicating the same data over and over again is a bad idea". Some of my co-workers likely don't even know/remember the phrase "normal form", but if you showed them a table that wasn't 4NF, when they saw the duplication they would know it should be improved.

    Fifth normal is the one that seems a bit silly to me, in actual practice. It gives IP a lot of the utility of the model, for very little gain. 5NF may be useful as a CS concept for developing theory.

    1. Re:Yeah, it's ugly even if you don't know the term by HornWumpus · · Score: 1

      3rd normal form says no total on invoice, just sum up line item every time...which is idiotic UNLESS you are building a system to process transactions for individual line items and need to avoid blocking between line item transactions.

      Even 3rd normal form is over normalized for 90%+ of database applications. OLAP is not OLTP.

      Think about where you store price for line item (if your a 3rd normal form purist). Can't be on lineitem, redundant to pricing, so has to link to pricing data with full history.

      Fastest way to get a resume to the circular file is talking about normal forms higher than 3rd.

      --
      John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
  155. Computer Information Systems by sycodon · · Score: 1

    Is offered at most major universities.

    Business Administration, Manufacturing Theory, Accounting, Database Theory, Systems Analysis, Systems Design, etc.

    Work orders, General Ledgers, Checks, Labor Efficiency, doesn't require a Mathematician. Someone who understands what make a business run, how to measure it, and how to manage it is what's needed.

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    1. Re: Computer Information Systems by tigersha · · Score: 1

      Which brings us to the problem with my recentlyâ"ex employer. The management does not know these things either.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
  156. Managers can't tell computer guys apart by Anonymous Coward · · Score: 0

    News at 11.

  157. Just because YOU are dyslexic? apk by Anonymous Coward · · Score: 0

    Just because YOU are dyslexic doesn't mean everyone is you UNIDENTIFIABLE anonymous STALKER. 600 upmods prove otherwise for me on my posts alone from our /. PEERS vs. your JEALOUS "Lil' Jowie" bullshit as well as collegiate degrees (1 from a pretty prestigious institution no less).

    * You're a NOBODY moron - prove otherwise!

    (No I've run a small business for 11 yrs. now & it's done well - even allowed me to retire from working for others (no more "wageslave" for me, thank God)).

    APK

    P.S.=> Oh, that's RIGHT - a DO-NOTHING stalker by UNIDENTIFIABLE anonymous posts like YOU (worthless waste of LIFE you) just plain CAN'T - lol, ALL YOU CAN DO is "HIDE" behind your "ANTIFA MASK" pussy, lol... apk

    1. Re:Just because YOU are dyslexic? apk by Anonymous Coward · · Score: 0

      Just because YOU are dyslexic

      Not even close, but it would go some way to explaining your word-slaw, and given how much you project ...

      Thanks for that insight. When were you diagnosed?

      600 upmods

      *laugh* and yet you refuse to create an account because the amount of negative moderation would exceed it by at least an order of magnitude.
      As always, you are inconsistent. Positive feedback is cherished and unquestioned. Negative feedback is dismissed. Trolls. Sock puppets. Whatever excuse allows you to continue to desperately cling to your delusions.

      You're a NOBODY moron

      No, that's projection, again. It's the root fear of NPD. That inability to develop a genuine sense of self-worth that gives rise to the attention seeking, exaggeration and profound defensiveness around criticism.

      No I've run a small business for 11 yrs. now & it's done well

      stalker

      *laugh*. Please. You post on a public forum. You get replies. Your fantasies of stalking are just more narcissism. You're not that important. Hell, I only post replies when I've the down time.

      UNIDENTIFIABLE

      Nonsense. I'm the one who posts a bolded tag at the end and quotes the sections of your post I am addressing. I post in Australian English use (reasonably) correct grammar and punctuation, post (usually) between 2300-0600GMT. I don't post or reply to those posts you make that are actually on topic (like the discussion on Delphi the other day). If you can't identify my posts from that, that's your issue. Your behaviour is so toxic that I will not be using my Slashdot login. You don't ask for identification to further communication. You do so so that you can attack. Your inability to empathise has left you with some distinctly unpleasant social habits which is why you are so fundamentally alone.

      APK. Small business or just 'small'. Ask Malwarebytes.

  158. Big projects NEED CS people by Targon · · Score: 1

    Look at some of the programs out there that went completely wrong, and chances are, they were lacking in people with a focus on architecture. Mass Effect Andromeda is the perfect example. Good ideas, but how to design the thing? If you just have a bunch of coders without any clue about design, you have a lot of pieces that don't work well together, and the end result is a mess that disappoints everyone. If the design was done early, and with Computer Science people, the whole idea of, "How might this break?" is in the design, and you end up with fewer design flaws.

    Remember, you can take a great design and have bugs(which can be fixed), but if you have a crap design, then you can't fix the problems which are fundamental to the design.

  159. Re:Studying programming languages and compilers .. by jon3k · · Score: 1

    Studying programming languages and compilers is important.

    I agree, of course. The question is whether it is required for writing all software.

    In short those CS classes and projects teach a young developer there are many ways to do things

    It really depends on what you get out of it. I know plenty of CS graduates who basically went to java vocational school. And I know plenty of people without CS degrees who can program using pretty much any paradigm, from functional to OOP and anything in between.

    If you think a CS degree is limited to complex problems and inapplicable to modest projects, you are mistaken.

    Not at all, I just said it wasn't required to write "all software". There are lots of simple things that can, and indeed are, written by people without CS degrees. I would venture a guess that most software these days is written by people without CS degrees.

    CS grads that have an inherent interest in software development

    That's really what it comes down to at the end of the day, not whether you went to university.

  160. Science is not engineering. by PJ6 · · Score: 2

    No, you can't get rid of the programmers, but yes, in my experience it is the most educated who make the absolute worst programmers. Violent disregard for maintainability of any sort.

    Not because they're stupid, but because that's not what they're hired to do. Academics often make terrible engineers.

    Most programming is a trade.

  161. Re:"overcome the limits of their education" misgui by perpenso · · Score: 1

    And frankly, that is how it should be. Class time for concepts and theory that outlive the operating system and programming language of the day, the OS and lang being left as an "exercise for the student". The university is not merely about sitting in classrooms and having knowledge handed to you, you and your fellow students puzzling things out and learning from each other is supposed to be part of the university experience too. And given the amazing access to equipment and expertise one has at a university not indulging in personal projects unrelated to class is quite the lost opportunity.

    Regarding professors, the programming expertise might be more contextual. For one of those data structures and algorithms classes taught in pascal my professor was no pascal expert, he knew enough to teach the class but that was about where his interest in the language dropped off. Now when I had him for upper division AI classes. he was quite the expert in LISP which he had been using for decades. It didn't take too long to figure out what professors were the local experts in one language or another, so for office hour questions it was really about knowing who to ask. And like CS students, some professors learned what they needed to and just stuck with that, and others had this innate curiosity and learned new operating systems and languages to satisfy their own curiosity not because they needed to for school or work.

  162. Re:Studying programming languages and compilers .. by perpenso · · Score: 1

    CS grads that have an inherent interest in software development

    That's really what it comes down to at the end of the day, not whether you went to university.

    Yes and no. Combine inherent interest and self motivated study with the formal training and the person will likely be even stronger. The university adds to, it doesn't take away from, such a person. Now if the options are a self taught person with the interest and self motivation and a person with a degree that was a "ticket puncher" who showed up and did the minimal required and nothing else, yes, I'd prefer the self taught. The gaps the self taught usually have are easier to deal with. But don't dismiss the formal university program, the self taught person whose personal study will equal a formal program is exceptionally rare.

  163. Re: Bc completely unaware software engineering exi by Anonymous Coward · · Score: 0

    Especially the ones who got it from academic institutions instead of random photo collections.

  164. Re:Bc completely unaware software engineering exis by novakyu · · Score: 1

    As a former physics grad student, I completely agree. If you want a good programmer, don't hire a physicist—if you need a general manager who understands enough of programming principles to know when your software engineer is BS'ing (and not referring to their degree), hire a physicist.

    I would be surprised to meet another physicist who even knows what big O notation means without having to look it up (I was an oddball who liked programming more than tweaking instrument controls).

  165. It Should not be called "Computer Science" by Anonymous Coward · · Score: 0

    I think the name of this major is too vague and broad. If it emphasizes programming theory, then call it that.

    People who study CS at a university are ignorant of computer networking, virtualization, hardware, OS configuration, and security. However, the term "computer science" could encompass all of those things. The CS program at my alma mater only has a single class in computer networking, even though networking could comprise a major on its own. I think CS departments should have separate majors for programming, network engineering, and system administration. If someone sees value in programming theory, then they could include that, as well.

    Universities formed their CS departments back when computing was simple enough to teach as a single major. Times have changed and universities are misleading students, employers, and taxpayers by pretending to teach computer science. Taxpayers need to start demanding that universities teach applied science instead of theory. If they want to continue teaching nonsense, they can do it without our money.

  166. from a programming physicist by Goldsmith · · Score: 1

    I'm a physicist who knows a bit of programming. When starting a project, I can create functional code to drive some widget I've built, along with a terrible UI, and a data structure that apparently only I can understand.

    Then, I hire a professional programmer on a project contract to make the second version of the code. (MVP version- usually also requires an EE and/or ME).

    Then, I hire a team of full time programmers, led by a systems engineer or architect to make the "real" version.

    If you're hiring a physicist to code, understand that you're getting a person who either couldn't really cut it in physics or made a bone headed career move that required a serious pivot somewhere along the way (physics is not for everyone, and there are some extremely smart and successful ex-physicists out there). I think some people are overly enamored with people who can explain quantum mechanics and black holes. Yes, that stuff is really cool, hard to understand, and it's impressive we can talk about it intelligently. Unfortunately, writing good code has little to do with those subjects. Good physicists work on physics projects, and get paid well to do that.

  167. The answer is no, of course by Anonymous Coward · · Score: 0

    The answer is no, of course. But not for any of the reasons he lists. The real reason why most businesses don't need to hire CS Majors is because they don't need custom software. I know this guy thinks his business is special. He thinks his processes are unique and innovative. But guess what: they aren't. Most companies don't need a full time CIO. They need to simply conform to an existing standard via an off the shelf solution rather than hiring a c-level executive to re-invent the wheel for them.

  168. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    I am a software engineer making six figures and I don't have a degree in computer science. Where I work, no one cares where you went to school. In the interview, they ask you what you know and they gauge your ability to solve problems. I am 100% self taught. As you progress in your career, your degree means less and less. Say you graduated in 2004. Would anyone today ask you what you studied then? No, because you wouldn't remember most of it. Most IT certifications expire every few years for this reason. All that matters is what's in your head. You don't need to sit in front of an old government bureaucrat (i.e. a professor) for four years to be a successful engineer and I am proof of that.

  169. Re:Bc completely unaware software engineering exis by Anonymous Coward · · Score: 0

    Years after you graduate, the theories are forgotten. After years on the job, all you have now is applied, practical knowledge. You put your education at the bottom of your resume and no one cares where you went to school or what you studied. All that matters at that point is how you've proven yourself in the real world. At that point, you begin to wonder if you wasted four years of your life and tens of thousands of dollars.

  170. For any non-trivial problem this MAY be true...? by Anonymous Coward · · Score: 0

    I finished my four year BA when I was 21. I was interested in Flash and Linux at 16 and by the time I was 19 started to program because my friend in CS got a contract to do a car dealershipâ(TM)s website with an backend inventory system(typical LAMP). Suddenly, I had to learn HTML, CSS, PHP and MySQL. JavaScript was really only used for onclick=âoelocation.url=âxâ(TM)â. There werenâ(TM)t really any AJAX applications yet. We finished it and I became obsessed with programming. I got my Red hat cert because I loved linux. I still loved Psychology, so wanted to finish that.

    Then, after finishing my BA, I taught English overseas for two years and then came back and worked on my CS degree. I felt discouraged because I was starting all over again. I eventually finish a masters degree in it, so it isnâ(TM)t as though I gave up.

    Truthfully, after being in industry for about 7 years since, I think the writer is insane. Having mistakenly started in Engineering and finishing my first three years there, I know plenty of Physicists and engineers. They do learn Python and write exactly that, programs to massage data and create graphs and the such. But, I wouldnâ(TM)t let them touch a real world application of any value. There is a *huge* difference between one off 4 thousand line monstrosities that only work for a very specific purpose and useful consumer and business applications that scale in any meaningful way or that can be maintained.

    This guy makes it sound like CS majors are too focused on the theoretical and essentially know too much. Has this guy ever worked with junior developers? They donâ(TM)t know enough theory oftentimes for real world projects. Hence the need for senior and lead developer positions.

    Most useful software products use very complex data structures. This starts with the db, unto the backend (mvc) and then a frontend. If the web, then most likely angular/react/vuejs. You really spend a lot of your time designing data structures and canâ(TM)t really write anything useful without them. If done wrong, you end up spending most of your time programming around those anti patterns.

    If heâ(TM)s talking about business, letâ(TM)s go there. Iâ(TM)ve worked at one place that had 2 year grads design the system initially. Now, there are plenty of great graduates from two year vocational schools, and plenty of bad CS majors. But, Iâ(TM)ve seen more of the former. Anyways, the data structures and software architecture were so poor that they spent most of their time trying to keep it working after making any changes. Thatâ(TM)s if it didnâ(TM)t crash because the db ran out memory(bad data structures). It had no hope in heck of scaling. Their business essentially fell apart as they lost customer trust and were unable to fix issues. It was a frigile deck of cards.

    Now that I do hiring for the startup Iâ(TM)m in, Iâ(TM)ve done quite a few interviews. Iâ(TM)ve given physics majors the chance to interview. Who knows, they could be great programmers. I was working on CS as a Psychology major! But, most of the time it was, he is smart because he understands black holes syndrome. This doesnâ(TM)t translate to knowing how to create robust software systems just as it doesnâ(TM)t translate to being a good MRI technician. Once tested with the simplest of questions, the illusion fell apart. They then got a chance to write a react application that they claimed to be able to do. All failed in the extreme. From a business perspective hiring them would have been a disaster waiting to happen. Nothing would have gotten done. I would have spent half my time fixing their problems or teaching them and bugs would slip through no matter what. There are probably exceptions, but I havenâ(TM)t met them.

    I hope people take this guyâ(TM)s advice almost, as businesses will have to hire CS people to fix the results. Thatâ(TM)s if their businesses havenâ(TM)t fallen apart already. The cost of fixing things will be greater than rewrites and the timeframes will be short, so contracting rates will be awesome!

  171. It's great when employers announce their ignorance by Anonymous Coward · · Score: 0

    ...so you can avoid them. This employer will never value a CS major whether they choose to employ them or not. So yeah no need to apply for that job.

  172. Re:Studying programming languages and compilers .. by Anonymous Coward · · Score: 0

    > The university adds to, it doesn't take away from, such a person

    Some do by encouraging studies that are not merely impractical but fraudulent or dangerous. In case you think I'm kidding, check out this "historian of medicine" claiming there is no such thing as biological gender, despite all the actual *biology* that show its existence.

          https://www.youtube.com/watch?...

    And this professor, Melissas Click, who was finally fired for calling on her fellow protesters to physically eject a peaceful student reporter because he was a conservative white male.

          https://www.nytimes.com/2016/0...

    I am, in general, happy with professors and universities leading people to political activism. But it needs to be *aimed*, and sometimes it gets nutty out there.

  173. Depends on what you mean CS... by Anonymous Coward · · Score: 0

    A few people will have different perspectives on this because not all people are the same and not all CS courses are the same. Overall though, the points raised tend to largely be correct and accurate. When I did CS, I could already program. I was able to dismiss a lot of the theory as largely nonsense (more specifically, not universally applicable). In respect to bolstering my programming, CS helped in a lot of areas such as reinforcing knowledge and understanding of crucial algorithms, mathematics, etc. Also giving a background in a lot of areas. Had it been taught differently however, I could have benefited from 75% or more of it rather than 25% or less. Had I not already had decent programming skills, then the course would have been a waste of time for me. I would not have been equipped to be an effective, competent, productive and capable programmer in the industry.

    Some things were simply confusing such as databases which started out with relational theory which would often be a very convoluted and indirect way of explaining things that would turn our very simple. Those courses would be frustrating because they were short and the first half would entirely be confusing explanations of new terminology for things that would turn out quite basic. Plain English isn't allowed or used in a number of theoretical disciplines.

    If you take a look at the way people talk about functional programming with lots of strange terms for things you'll see it very clearly there. I often here people talking about things such as partials, currying functions, etc and when I finally find a concise example of what they're talking about, it's something really basic an a common skill your just pick up using JS like a function returning a function. Once you know a function can return a function and about scope the world's your oyster. It often seems to me that the only benefit of this is that people have learnt names for things that come naturally once you know the basics of a language. If you give your code to such a person to review they'll give a lot of names for things you've done, when you explain to them, you never did that course and have no idea what any of the things they mentioned are, they look perplexed. It's basically making names for generally any two or three different combinations of code. In the absolute worst case you see things like people doing things in an over complicated way and being very arrogant about it like using an identity function where it's completely unnecessarily and only adds bloat.

    I can say some awful things about CS and where it's really wasteful. However I also see a lot of this outside of CS as well. Arrogance, theory before practice (worst being people programming theories, not solutions), not being able to program, etc are not exclusive to those having reached the programming profession through the standard academic route. Many of the issues mentions are also not fundamental to CS, there's no reason you can't hire a lecture from the industry instead of from the academic route. There's no reason you can't change how subjects are taught, the subject matter or translate them into straight English. I did find in CS, out of my peers that graduated, most of them could barely program well at all.

    CS is meant to be fairly theoretical. It's not called Computer Programming. It needs changes but for solid practical programming training that needs a new course format. Computer Science is not "learning programming" and many people don't realise this. You need to learn programming and to learn it well though to be an effective software engineer. Principally, the industry needs computer programmers more than anything else. At least some of those also need software engineering backgrounds but not everyone on a team. There are plenty of programming courses out there but not with the weight a degree carries. It's also complex because there's being able to program, being able to program well and then there's a lot of heavily subjective mumbo-jumbo. Many people learn through peers or on the job b

  174. You talk about using accounts? by Anonymous Coward · · Score: 0

    You talk about using accounts? Then why aren't you using yours bullshitter?? Why do you STALK me using UNIDENTIFIABLE anonymous posts???

    (Answer those questions above Mr. "SiDeWaLk-ShRiNk of /." w/ your CRY of the BUTTHURT "ne'er-do-well" w/ NOTHING to show for your WASTED life, ya wannabe... lol!)

    Funny I can afford my home & vehicle all paid in full (since you bust on my running a business of my own for more than a decade now that allowed me to escape the 'wageslave' so-called life) eh?

    Lastly - I never said I was 'important' - YOU DO - important enough to you that you STALK me by UNIDENTIFIABLE anonymous like some obsessed lunatic you are hating your nothing to show for yourself wasted life.

    * You're SO full of shit it's not funny...

    APK

    P.S.=> Funny people like & USE my work (not yours) https://it.slashdot.org/commen... eh? Of course, you'd have to have DONE some work Mr. ANTIFA stalker behind your mask (because you KNOW you're STALKING me like the loon psycho you are projecting it so you HIDE from me)... apk

  175. poppycock by Anonymous Coward · · Score: 0

    I learned SO much more getting myCS degree than mere programing. IN fact, my university didn't even teach programming languages - those were something you had to learn on your own as they were expected to change with time....that was 1983 and they weren't wrong.

    In addition, my degree has opened so many more doors that otherwise would have been closed. Right or wrong, there are still numerous people in the position of hiring or recommending people and still firmly believe having that piece of paper demonstrates commitment, dedication, stick-to-it-iveness and just generally being able to finish a long term goal. Some are even more base than that and want you to be part of "the club". Deal with that reality.

    I'm proud of my degree. But if you don't have one and can demonstrate you still be an effective computer scientist (no one is just a "programer") I have no heartache calling you one. But let's not pretend that my degree is superfluous - we all know how much is required beyond mere programming to be effective. It would be a special person without an education who could really do all a CS degree recipient is capable of

  176. Re: Bc completely unaware software engineering exi by Anonymous Coward · · Score: 0

    We keep seeing applicants who claim to have a CS degree in Networking.

    You are correct that there is no CS degree in networking. However, there is a CS degree with major or concentration in networking (in any public universities). Though, that doesn't sound as commercial as the former, eh?

  177. Answer... by Doctrinsograce · · Score: 1

    "Businesses Really Need to Hire CS Majors?" No. Not at all. There are many positions that do not require a CS degree. Oy.

  178. Nice list. by Anonymous Coward · · Score: 0

    I'm pretty sure you could write a list that was almost exactly the same for
    say 'physics' or 'chemistry' or any other broad major, probably for things like EE , mechanical and structural engineering as well. Although 1 point is
    'sort of' wrong, CS majors usually come from 1 of 3 places ( mathematics, engineering , or business department). So the actual program can be quite different depending on where the person comes from.

    I'd suspect , like anything else, you'd be better off having a better understanding , what you want before you hire. Are you looking for a generalist, a specialist, or a technician.

  179. The reason for the article is... by Anonymous Coward · · Score: 0

    ...to reinforce an inane notion many C-level executives are adopting: "I can save a bunch of money by hiring inexpensive (i.e., unexperienced/unqualified) people for my IT organization." Yeah, good luck with that.

  180. fp already here by Anonymous Coward · · Score: 0

    programming right now: angular with rxjs, using FP excessively. only stupid people can ignore mathematics in programming

  181. Re:Bc completely unaware software engineering exis by RespekMyAthorati · · Score: 1

    And of course, you will need a civil engineer to build an information super-highway.

  182. It would be a change if they did by Not-a-Neg · · Score: 1

    Any job stating it requires a CS degree does not actually NEED a degree, the HR department is just incompetent and incapable of hiring for a position if their recruitment software shows a particular job title having a degree listed for it. They toss out applicants that do not match what the software tells them. They are worse to deal with than outsourced Indian Help Desk "support". The only degree worth a damn is a business management degree, assuming you ever want to get promoted into management.

    --
    -==- Buy a Mac and leave me alone!
  183. Re:Bc completely unaware software engineering exis by UsuallyReasonable · · Score: 1

    You may just be proof that programming is a high demand field.

  184. Re:Studying programming languages and compilers .. by jon3k · · Score: 1

    Yes and no. Combine inherent interest and self motivated study with the formal training and the person will likely be even stronger.

    Aptitude and desire beats only formal education anyday. Plenty of exceptionally good self-taught programmers, many using the same material taught at universities. I know many, many programmers without formal education that absolutely blow the doors off people with CS degrees.

    I don't think anyone would argue that all three is even better (aptitude, desire and formal training).

    Now if the options are a self taught person with the interest and self motivation and a person with a degree that was a "ticket puncher" who showed up and did the minimal required and nothing else, yes, I'd prefer the self taught.

    That's exactly what I'm talking about.

    But don't dismiss the formal university program, the self taught person whose personal study will equal a formal program is exceptionally rare.

    No one is dismissing formal university training, it can be incredibly valuable. But without aptitude and desire it's absolutely worthless.

  185. Language churn... and ivory tower or buzzwords by Anonymous Coward · · Score: 0

    I see 3 problems in my neck of the woods

    1) Language churn... how many bloody languages do we REALLY need to solve a problem, especially relatively simple business problems? We can't even decide on what the syntax of something as simple as the midstring () method.

    2) Ivory tower solutioning... too many times, I've seen people try and solution for every possible scenario before writing a stitch of code. Waterfall gone nuts.

    3) Buzzwords... someone sees the latest magazine, and suddenly solution X becomes THE solution for everything (this follows from 1, and can directly lead into 2)

  186. Re:Bc completely unaware software engineering exis by Areyoukiddingme · · Score: 1

    The guys who install home theater speakers aren't acoustic engineers.

    But they'll still bill you like they are...

  187. A lot of US versus THEM by micahraleigh · · Score: 1

    I worked at a company once where I was the only dev with a CS degree (I actually have 2, BS and MS).

    I hired one of them because he clearly had the skills to develop. At that point I rarely, if ever, brought up who had a degree and who didn't.

    A few months later company culture started saying people with degrees couldn't program. That was their way of getting an edge over me. They were "untainted" by the schools or whatever. I made a big, public deal about how we shouldn't focus on whether someone has a degree or not, but it didn't matter and I was demoted.

    Then our biggest client found out our devs didn't have degrees and made a big stink about it.

    People use a lot of superficiality to impose themselves over others. It is a tremendous business liability. The only place worse than degrees is certifications. The people who have them and the people who don't despise each other draw attention to that to throw rocks at each other.

  188. Whut by talldean · · Score: 1

    ...most businesses don't really need programmers to be deep thinkers. For them, it's "just as worthwhile to hire someone from a physics lab who just used Python to massage some data streams from an instrument.

    You're assuming that the folks who used Python while working in a physics lab weren't thinkers?

  189. Price paid is not future prices by raymorris · · Score: 1

    > Think about where you store price for line item (if your a 3rd normal form purist). Can't be on lineitem, redundant to pricing, so has to link to pricing data with full history.

    PricePaid / PriceCharged is part of the invoice. It has nothing whatever to do with what is on sale today, or the price of tea in China today. The price you're currently offering on your web site has nothing to do with how much you charged the church three years ago. Different different prices today, which may depend on whether they bought 3 for $5 or 1 for $2.

    Very often, you wouldn't store line items for invoices, as the invoice is a thing unto itself - you might give your brother half off, so you can very well have an invoice table which has information about the invoice - including the grand total.

    What would be a violation would be to have both, where they may contradict:
    Item1 paid: $5
    Item2 paid: $4
    Item3 paid: $11
    Grand total: $7

  190. Literary theory versus literary accomplishment by alternative_right · · Score: 1

    I wonder if the correlation between good writers and literature graduates is higher than the correlation between good programmers and CS graduates.

    I see it in a different sense: there is an ongoing dialogue between writers and academics about the meaning of texts.

    As with anything, when this becomes politically infiltrated ("PC") it loses any validity because it is turned into a propaganda organ instead of a vehicle for studying a discipline and how to do it.

    Clearly most of the great writers stayed away from academia, but they also tend to have stayed away from most other things that normal people do. The rules for geniuses are... different.

    What I was hoping to express, however, is that for the average legitimate college student (120+ IQ) literary theory can provide a way of understanding the complex philosophical dialogue that has been raging across literature over the centuries. It enables them to stitch together different works and see the arguments of each, made through both content and aesthetics, that shows not just the core values that literature discusses, but upholds. Having stories that have meaning (let's use that as a working simplest possible definition for "literature") is in itself valuable, as is the study of these stories.

    I do not believe that writing can be taught; mechanics and story elements can be taught, but writing itself is always learned by those who undertake it as a passion. The teaching of writing as a technique, the "workshop method," helps Hollywood produce formulaic blockbusters and keeps literary magazines in business with a steady stream of alarmingly similar stories, but does not produce great literature.

    In this sense, I see the teaching of theory as useful for literature mainly because it is fairly immutable; what was good in one age will be good in another, once we abstract out elements specific to that time.

    For computer science, "theory" usually involves some high-handed notions that apply to very few real-world instances, and serves to teach "right ways" instead of the wisdom of the hack, which is that you do it however you have to.

    Postmodernism gets a bad rap, in my view, because it was taken from its original intent into the realm of propaganda. The original idea, triggered by Nietzsche's "On Truth and Lies in An Extra-Moral Sense," was that truth is only as accurate as the mind of the beholder, and so humans are unequal and therefore have differing degrees of accuracy in perception. The notion of universal "truth," values, or communication was thus in doubt; this actually targeted The Enlightenment&trade-era notions of a universal truth that applied to all humanity, instead of a need for a hierarchy of people based on their degree of accuracy of perception, a measurement which is as much aesthetic (what is good, beautiful, and true to natural form) as it is factual or logical (the realm of "logical fact," misunderstood and ignored by most). In the ensuing years, other writers tried to make sense of this, with most defaulting to the dominant paradigm of universalism or the idea that what most people think is true/good must be true/good. Postmodern writers worth reading include William S. Burroughs and Don DeLillo.