This course will discuss why computers and computation are ubiquitous in our world and the implications of that ubiquity, including security, gaming, military, GPS, social-networks, stock-trading, voting, and beyond. Students will learn how these systems work at an appropriate level of detail. To give a deeper understanding of these topics a significant component of the course will be student programming labs to explore simple versions of these systems. No previous programming experience will be required. Lect: 3 hrs./Lab: 2 hrs. Course Weight: 1.00 Billing Units: 1