Charles Connell writes "I teach software engineering and I know what "real" computer scientists think about my subject. It is soft. It is not quantitative. It is little different from sociology (gasp!) since it partly concerns the behavior of people in groups. Real computer scientists prefer topics such as cellular automata, undecidability, lambda calculus, and probabilistic factoring.
In graduate school I signed up for the only course on software engineering. On the first day of class, the professor announced, "Software engineering is bullshit. There is nothing to teach about it. So we are going to study Unix internals instead." And that was that. I learned nothing about software engineering during my four years at graduate school. This article is about why software engineering is not bullshit. In fact, it is a long way from excrement and may be more worthy of serious study than some traditional computer science topics.