CSC 100: The Beauty and Joy of Computing

Lecture Slides and Notes

Listed below are lecture notes/slides saved as PDF files - there are 3 slides per page, with room for you to take notes. While the full set of lecture notes is still a work in progress, I will work to have lecture notes posted here at least two days before each class meeting, so that students who want to print these out to take notes on during class can do so.

  • Lecture 1: Class Introduction
  • Lecture 2: Success in College
  • Lecture 3: Introduction to Computer Science
  • Lecture 4: Computing and Programming
  • Lecture 5: Abstraction
  • Lecture 6: Data Representation 1 - Numbers, Bases, and Binary
  • Lecture 7: Data Representation 2 - Hexadecimal and Practical Issues
  • Lecture 8: Organizing Data - The power of structure...
  • Lecture 9: Algorithms 1 - The Basics
  • Lecture 10: Algorithms 2 - Measuring Time
  • Lecture 11: Algorithms 3 - Time Complexity Basics (Constant, Linear, and Quadratic Time)
  • Lecture 12: Algorithms 4 - (lecture skipped due to lack of time)
  • Lecture 13: Reductions, Self-Similarity, and Recursion (Relations between problem)
  • Lecture 14: Data Representation 3 - Media, Text, and Pictures
  • Lecture 15: Data Representation 4 - Sound, Video, and Compression
  • Lecture 16: Big Data
  • Lecture 17: The Internet - Part 1 (Local Area Network Communication)
  • Lecture 18: The Internet - Part 2 (Networks of Networks - Internet Workings)
  • Lecture 19: Security and Privacy - Threats and Tools to Protect Yourself
  • Lecture 20: Artificial Intelligence
  • Lecture 21: Limits and Future of Computing