What is Computer Science?

The relationship between programming and Computer Science is complex and a subject of much debate. I think it is best here to paraphrase Abelson and Sussman.

Computer Science is a horrible name for this business. First of all it is not a Science. It might be Engineering, or it might be Art... Further, it is not really about computers, either. It is not about computers in the same sense that physics is not really about particle accelerators. Biology is not really about microscopes.