Published Sep 3, 2019

Episode 149: Difference between Software Engineering and Computer Science with Chuck Connell

Chuck Connell dissects the vital distinctions between software engineering and computer science, emphasizing a balanced blend of technical skills and practical experience. He underscores the human elements crucial to software success and advocates for the use of CMMI and software patterns to improve development processes.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Questions from this episode

Episode Highlights

  • Software Education

    argues for a comprehensive software engineering curriculum that extends beyond traditional computer science. He emphasizes the need for software engineers to grasp both technical and interpersonal skills, such as management and team psychology, to effectively work in real-world scenarios. Connell suggests that software engineering should be recognized as a distinct discipline, not merely a subset of computer science, to better prepare students for industry demands 1.

    A good software developer absolutely needs to know some computer science... but that's not the whole story.

    ---

    He also highlights the importance of ongoing education and practical experience, suggesting that a more holistic approach to teaching software development could bridge the gap between academia and industry 2.

       

    Practical vs. Theoretical

    The balance between theoretical computer science and practical software engineering is crucial, according to . He notes the frustration many experience when transitioning from theoretical concepts to practical applications, as real-world software development often faces unexpected challenges and bugs 3. Connell's discussions with theorists like Stephen Homer have highlighted the need to clearly distinguish between these fields while acknowledging their interconnections.

    It's always frustrating for everybody developing real world practical software that it never goes that well and bugs come up and it takes longer.

    ---

    Connell believes that understanding both domains can lead to more effective software solutions, but stresses the importance of recognizing their distinct roles in education and practice.

Related Episodes