1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Computer science vs. software engineering

  1. Apr 13, 2009 #1

    thrill3rnit3

    User Avatar
    Gold Member

    What is the fundamental difference between the two? Sorry for my ignorance but I was just wondering :smile:

    I'm planning to do a 2nd major with Applied math and cs/se, if that helps.
     
  2. jcsd
  3. Apr 13, 2009 #2
    Computer scientists know how to write very efficient and complicated software.

    Software engineers design, and execute the software development life cycle from an engineering perspective.

    Both can do the either ones job.
     
  4. Apr 13, 2009 #3

    thrill3rnit3

    User Avatar
    Gold Member

    so considering I am majoring in Applied Math, which one would be a preferable 2nd major?
     
  5. Apr 13, 2009 #4

    thrill3rnit3

    User Avatar
    Gold Member

  6. Apr 13, 2009 #5
    So after reading the topic of the thread, I too became interested in what the difference was, and after Googe-ing things and reading articles, this might explain some differences in Computer Science and Computer Engineering, referred to as CS and CEN in the article, respectively.

    The link to the article is: http://www.eng.buffalo.edu/compscie_vs_compeng.php"

    On a side note, have you considered earning a degree such as Computational Mathematics or a degree in Mathematics, pure or applied, with a Specialization in Computing?
    I believe I also replied to your UCLA's Scholar's thread and UCLA offers both Mathematics of Computation (which allows you to take upper division courses in the Engineering school) and a Specialization in Computing which can be added to any Mathematics major except Mathematics of Computation.

    Of course UCLA isn't the only school to offer that type of major or specialization. If I recall correctly quite a few of the UCs have similar programs. And even non-UC schools such as Stanford and USC.
     
    Last edited by a moderator: Apr 24, 2017
  7. Apr 14, 2009 #6
  8. Apr 14, 2009 #7

    mgb_phys

    User Avatar
    Science Advisor
    Homework Helper

    In theory there is a big difference.
    CS is maths, the study of language design/algorithms and lots of linear algebra
    SE is engineering, systems design, specific languages, project management, real world usage.

    In practice it probably depends on which term was fashionable when the course was setup, , how much difficulty they have attracting students, and which faculty teaches it.
    You need to look at the specific syllabus and decide how well the actual courses match your interest.

    You might want to check if the course is accredited to any of the engineering bodies if that's important in your country - you might be able to count it toward a CEng/PEng, a CS course probably wouldn't.
     
    Last edited: Apr 14, 2009
  9. Apr 14, 2009 #8
    In my experience, a lot of CS and SE curricula are basically the same, differing mostly in distribution requirements and allowed electives, with perhaps a wildcard course thrown in for good measure.

    CS is the theory of how things are computed, what things can and can't be computed, and how to compare various ways of computing things. This is a little different from mainstream mathematics in that one is not always necessarily concerned with computing in mathematics. CS is based firmly on mathematics and involves rigorous proofs, logic, and everything that goes with it.

    SE is much more like a traditional engineering discipline. Mechanical or electrical engineering is to physics as software engineering is to computer science. However, SE is much closer to CS than ME is to Physics. SE focuses on how the ideas and concepts from CS can be applied to solve real-world problems.

    In practice, like I said, CS and SE programs are largely overlapping. You should be alright in either.

    * SE may require more hardware classes. If you're mathematically inclined, this may be something to take into account... you either love hardware or hate it.
     
  10. Apr 14, 2009 #9

    thrill3rnit3

    User Avatar
    Gold Member

    I'm probably more into software and programming than hardware.
     
  11. Apr 14, 2009 #10
    In that case, CS would probably be the best way to go. You can always take a few SE classes on the side. FYI, as a math/CS dual major, I hated the pair of hardware classes I took.
     
  12. Apr 14, 2009 #11
    *Same here. Math / theory / software inclined, hates hates hates the hardware. I can do it, and so can the other theory people, but that doesn't mean we have to like it.
     
  13. Apr 14, 2009 #12

    thrill3rnit3

    User Avatar
    Gold Member

    so CS has more math in it than SE? Because if yes, then that further solidifies my decision to go for CS
     
  14. Apr 14, 2009 #13
    "so CS has more math in it than SE?"

    Yes... but like I said, enjoying mainstream mathematics does not necessarily mean you will like CS as much. You get a different flavor.
     
  15. Apr 15, 2009 #14

    thrill3rnit3

    User Avatar
    Gold Member

    "CS is the theory of how things are computed, what things can and can't be computed, and how to compare various ways of computing things. This is a little different from mainstream mathematics in that one is not always necessarily concerned with computing in mathematics. CS is based firmly on mathematics and involves rigorous proofs, logic, and everything that goes with it."

    that's good enough for me I guess :smile:
     
  16. Apr 15, 2009 #15

    thrill3rnit3

    User Avatar
    Gold Member

    by the way, what kinds of maths are involved in CS? I've heard linear algebra and number theory...
     
  17. Apr 15, 2009 #16
    Logic
    Graph Theory
    Combinatorics
    Formal Languages
    ...

    And the comment about Linear Algebra was interesting. Maybe I'm just brain-farting, but where on Earth does one use linear algebra in CS? I mean, except for implementing code based on linear algebra, for instance matrix operations and such things... In my mind, Abstract Algebra has a lot more to do with CS than Linear does. When I think Linear Algebra, I think Quantum Mechanics.
     
  18. Apr 15, 2009 #17

    mgb_phys

    User Avatar
    Science Advisor
    Homework Helper

    Or Google's pagerank
     
  19. Apr 15, 2009 #18
    "Or Google's pagerank "

    Alright, granted. But the point stands that Linear Algebra isn't really a fundamental area of CS, even if it can be applied by software designers to solve certain computational problems. Like I said, maybe I'm just overlooking something.
     
  20. Apr 15, 2009 #19

    mgb_phys

    User Avatar
    Science Advisor
    Homework Helper

    Yes it's useful for problems in correlations

    I probably should have said abstract algebra. Linear algebra is mainly taught as an easier to visualise example of abstract agebra
     
    Last edited: Apr 15, 2009
  21. Apr 15, 2009 #20

    thrill3rnit3

    User Avatar
    Gold Member

    here

     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook