Fundamentals of Computer Science

Johns Hopkins Center for Talented Youth, Summer 2019

Course Description:

More than just a programming course, Fundamentals of Computer Science introduces students to three major areas of the discipline: theory and algorithms, hardware systems, and software systems. In the theoretical component of the course, students learn about algorithms, Boolean algebra, binary mathematics, and theory of computation. While studying hardware systems, they gain familiarity with the physical components of computers, digital logic, computer architecture, and computer networks. As students investigate software systems, they are introduced to elements of programming languages, compilers, computer graphics, and operating systems.


This was an intensive, 3-week-long summer course for 12-to-16 year-old students.

For this one I was hired only two days before the start of the session–quite a challenge for an intensive course with 7 hours per day in the classroom! It was a lot of work to pull my lesson plans together so quickly, but aided by an excellent TA and my previous experience as a TA myself, I managed to do a great job! I was even given an award for my success.