This course is a broad introduction to a variety of fundamental topics in Computer Science through a contemporary theme such as robotics, the web, graphics, or gaming. Scholars will consider problems in the application area that can be solved with software. Using the theme of the course, scholars will be introduced to important areas of computer science including abstraction, computer organization, representation of information, history of computing, ethics, and the development and evaluation of algorithmic solutions using an appropriate programming environment. Themes may differ across sections.