This document discusses the fundamental role that logic has played in the development of computer science over the past 50 years. It provides examples of how logic has provided a unifying foundational framework and modeling tool for areas like machine architecture, programming languages, databases, and more. The document then traces the historical developments in logic that enabled these contributions, including Boolean logic, first-order logic, automata theory, and analyses of computational complexity. Overall, it outlines how logic has become central to computer science in a way analogous to the role of calculus in traditional engineering fields.