Slashdot Mirror


Computer Science vs. Software Engineering

theodp writes "Microsoft's promotion of Julie Larson-Green to lead all Windows software and hardware engineering in the wake of Steven Sinofsky's resignation is reopening the question of what is the difference between Computer Science and Software Engineering. According to their bios on Microsoft's website, Sinofsky has a master's degree in computer science from the University of Massachusetts Amherst and an undergraduate degree with honors from Cornell University, while Larson-Green has a master's degree in software engineering from Seattle University and a bachelor's degree in business administration from Western Washington University. A comparison of the curricula at Sinofsky's and Larson-Green's alma maters shows there's a huge difference between UMass's MSCS program and Seattle U's MSE program. So, is one program inherently more compatible with Microsoft's new teamwork mantra?"

12 of 322 comments (clear)

  1. Engineer is better fit to lead product development by Anonymous Coward · · Score: 5, Insightful

    In my opinion CS majors have always been the philosopher kind who like to nit-pick every angle of development. Product development leadership requires someone more practical as an engineer.

  2. as if by iamagloworm · · Score: 5, Insightful

    as if the schools these guys went to makes a difference? their skills are learned from experience working in the industry and their value is in using their judgement based on that experience to make the best choices.

    1. Re:as if by Dahamma · · Score: 5, Insightful

      Yep, these are senior executives with a thousand or more people reporting to them who spend most of their time in meetings. The details of computer science or engineering classes they took in college 30 years ago are pretty much irrelevant to their current jobs.

      And it's especially true in this case, as personal computers were in their infancy when they were in college, anyway. Trying to compare two programs based on what they are *today* makes no sense when they graduated in the 80's.

  3. CS is Math, SE is an application by betterunixthanunix · · Score: 4, Insightful

    Computer science is a branch of mathematics; software engineering is a collection of methods for applying that math in the "real world." Software engineering is not about state machines, compilers, programming languages, parallel algorithms, etc.; it is about how to use write "concrete" implementations of such things in a way that makes sense for real-world computation.

    --
    Palm trees and 8
    1. Re:CS is Math, SE is an application by iamhassi · · Score: 4, Insightful

      Science is "why", engineering is "how". Science studies why things are the way they are, while engineering just accepts the way things are and works with that. That said, would rather have a scientist, since they understand things better.

      --
      my karma will be here long after I'm gone
  4. Deja Vu? by Anonymous Coward · · Score: 5, Insightful

    It feels like we just discussed this a week ago - oh, wait, we did!

    http://ask.slashdot.org/story/12/11/10/2038211/ask-slashdot-developer-or-software-engineer-can-it-influence-your-work

    Another gem from timothy, right-supreme glorious editor for life.

  5. Re:It's the difference between science and tech. by vux984 · · Score: 4, Informative

    Same as any other science degree.

    Most grads in math, physics, chemistry also end up doing relatively "mundane" jobs. A degree in bio-chem and you can be a lab technician. A degree in geology and you analyze oil drill results. Physics degree -- you might end up working on radio antennae...

  6. CS vs Engineering 30 years later by Anonymous Coward · · Score: 5, Interesting

    Those guys are 50 something. The difference between Computer Science and Software Engineering does not matter 30 years after you graduated. Whether you kept up with progress and what kind of experiences you acquired during that time is what matters. Old guy did not left because of the school he was in and the new guy was not hired because of the school he was. They left / have been hired because of what they did last 7 years.

  7. Reminds me of the king's toaster by Jim+Hall · · Score: 4, Funny

    While not a perfect match to the above, I think the story of the king's toaster is a good example of the difference between an "engineer" and a "scientist". I originally saw this on USENET in the 1990s, so the technology is a little dated:

    A great king summoned two of his advisors, and showed them both a shiny metal box with two slots in the top, a control knob and a lever. "What do you think this is?"

    One adviser, an engineer, answered first: "It is a toaster," he said.

    The king asked, "But how would you design an embedded computer for it?"

    The engineer replied, "Using a 4-bit micro-controller, I would write a simple program that reads the darkness knob position to one of 16 shades of darkness, from snow white to coal black. The program would use that darkness level as the index to a 16-element table of initial timer values. Then it would turn on the toaster and start the timer. At the end of the time delay, it would turn off the heat and pop up the toast. Come back next week, and I'll show you a working prototype."

    The second adviser, a computer scientist, immediately recognized the danger of such short-sighted thinking. He said, "Toasters don't just turn bread into toast, they are also used to warm frozen waffles. What you see before you is really a breakfast food cooker. As the subjects of your kingdom become more sophisticated, they will demand more capabilities. They will need a breakfast food cooker that can also cook sausage, fry bacon, and make scrambled eggs. A toaster that only makes toast will soon be obsolete."

    The adviser suggested a future-oriented embedded computer innovation, with a forward-ready platform: "Specifically, we need an object-oriented language with multiple inheritance. Of course, users don't want the eggs to get cold while the bacon is frying, so concurrent processing is required, too.

    "We must not forget the user interface. The lever that lowers the food lacks versatility and the darkness knob is confusing. Users won't want the product unless it has a user-friendly, graphical interface.

    "Having made the wise decision of specifying the software first in the design phase, all that remains is to pick an adequate hardware platform for the implementation phase. An Intel 80386 with 8MB of memory, a 30MB hard disk and a VGA monitor should be sufficient. If you select a multitasking, object oriented language that supports multiple inheritance and has a built-in GUI, writing the program will be a snap."

    The king had the computer scientist thrown in the moat, and they all lived happily ever after.

  8. Re:Engineer is better fit to lead product developm by Lumpy · · Score: 4, Interesting

    Computer Scientists create things like linux.
    Software Engineers create things like Windows 8.

    Not trolling, This is a complete fact. Far more high level CS degrees are working on linux and OSS than Windows 8.

    --
    Do not look at laser with remaining good eye.
  9. Re:It's the difference between science and tech. by gtall · · Score: 5, Insightful

    I see you don't get the point of college education. It is supposed to stretch your mental capabilities so that when confronted with a new situation, you aren't without the mental faculties to understand and master it. Why should CS majors learn calculus? Because mathematical reasoning is important, and many CS people rub shoulders with engineers. You want to talk to them and be useful, learn your calculus...well.

    Higher Education is just that Higher Education. It is not Trade School Skill Boot Camp so you can regurgitate the latest buzzwords MS and the rest of their ilk cram down managers throats.

  10. What Makes a Good Software Engineer? by twasserman · · Score: 4, Insightful
    I have always found that the best software engineers are those people who have a solid background in computer science. That knowledge is valuable throughout one's career and enables one to participate effectively in discussions and reviews of architectures, data models, and more even after being promoted to a position that doesn't include writing code. To me, the two areas are complementary.

    Side note: I'm mystified at how someone with a Bachelor's degree in business can earn an MS in Software Engineering. Yes, management skills have an important role in an SE curriculum, but not to the exclusion of the technical skills.