title: What is the difference between Computer Science and Software Engineering?
body: <p>I was spurred to ask the question by an answer I saw for a question on <a href="https://stackoverflow.com/questions/853514/where-can-i-find-video-lectures-on-software-engineering">Software Engineering Videos</a>.  Here's the answer:</p>
  
  <blockquote>
    <p>As an aside, be careful what you're linking here. Software Engineering
    and Computer Science are very different disciplines. Software
    Engineering encompasses the software development lifecycle (including
    methodologies and process), modeling, communication, enterprise SE
    culture, etc. and is much, much less concerned with code, algorithms,
    efficiency, and the like.</p>
    
    <p><em>Answered on May 12 by JoshJordan</em></p>
  </blockquote>
  
  <p>and this was my comment:</p>
  
  <blockquote>
    <p>I have to disagree somewhat. Software Engineering is a sub-discipline
    of Computer Science. One of the sub-areas of Software Engineering is
    Construction, which is all about code. Please refer to <a href="http://www.swebok.org/" rel="nofollow noreferrer" title="SWEBOK">SWEBOK</a>.</p>
  </blockquote>
  
  <p>I do think algorithms fall outside of Software Engineering, but object-oriented programming, secure programming, and the like do not. </p>
  
  <p>Some have said this is a duplicate, but Computer Engineering is about the hardware and Software Engineering is about the software.</p>