In the foreword to the second edition of the canonical text Structure and Interpretation of Computer Programs, which was taught to entry level computer science students at MIT for the better part of two decade, authors Harold Abelson, Gerald Sussman and Julie Sussman provide a provocative answer to this question.