• This is a freshman-level course that will introduce you to some important ideas about logic, reasoning, and math related to computer programs. It is the first of a few courses in the Computer Science degree that separates hackers/hobbyists from people who know what they're doing.
  • The schedule on this page lists the topics we will cover by date.

Required Materials

  • Laptops will be required in class. Please bring your laptop to class every day. We'll be using them for activities.
  • We will not use a textbook for this course. All lecture notes and supplementary materials are available online (links below in schedule).

Office Hours

  • Doyle 309
  • Wednesday: 1 - 2:15PM
  • Or by appointment
TA Kiarra Villaraza


  • Treat this course like a job where you are trying to get promoted. If you show up and do your work, you will get a good grade.
  • NO LATE WORK WILL BE ACCEPTED. However, I will drop the lowest two homeworks and quizzes before computing final grades at the end of the semester.
    • Homework: 35 %
    • Participation: 10 %
    • Quizes: 25 %
    • Midterm: 15 %
    • Final: 15 %
    Percentage Letter Grade
    91+ A
    89-90 A-
    87-88 B+
    77-86 B
    75-76 B-
    73-74 C+
    62-72 C
    60-61 C-
    50-59 D
    Below 50 F

Scheduling Conflicts

  • If you have a (legitimate) scheduling conflict with a quiz or exam, it is possible to schedule a makeup session. You must let me know at least two weeks prior to the quiz/exam date. Legitimate scheduling conflicts include religious observances.
  • LUC's academic calendar can be found here.

Calculator Policy

  • It is acceptable to use calculators while doing your homework. Calculators will not be permitted in exams, and we will not give questions which require (or would be made substantially easier by) the use of calculators.

Mandatory Reporter Statment

  • Each faculty and staff member at Loyola University Chicago is required to report any incidents of gender-based misconduct that they are made aware of, even if it happened in the past. Gender-based misconduct includes discrimination based on actual or perceived sex, sexual orientation, gender expression or identity, or pregnancy or parenting status; dating and domestic violence; sexual misconduct (including sexual assault, sexual harassment, and sexual exploitation); and stalking.


  • No collaboration is permitted on exams or quizzes.
  • Collaboration, but not copying, is encouraged on homework assignments. If you obtain a solution through research, e.g., in the library or online, cite your source completely and write up the solution in your own words.

Course Schedule


Date Topic Details
Mon 08/28 Introduction & Course Policies
Wed 08/30 Number Representation: Decimal Video: Hexadecimal
Fri 09/01 Number Representation: Binary In-Class Activity: Base Conversion
Mon 09/04 Labor Day: No Class
Wed 09/06 Number Representation: Hexadecimal Homework 1 Assigned
Hex/Binary Activity
Video: 2's Complement
Fri 09/08 Number Representation: 2's Complement Further Reading
Mon 09/11 More 2's Complement Fun!
Wed 09/13 Boolean Logic Intro Quiz: Number Representation
Homework 1 Due
Video: Boolean Basics
Video: Boolean Properties
Fri 09/15 Boolean Logic: Gates
Mon 09/18 Boolean Logic: Associativity & Commutativity
Wed 09/20 Boolean Logic: Gates
Fri 09/22 Boolean Logic: Sequential Logic Video: Flip Flop Theory
Mon 09/25 Boolean Logic: Sequential Logic
Wed 09/27 Logic Lab Logic Lab Procedure
Logic Lab Simulator Procedure
Quiz: Boolean Logic & Gates
Video: CircuitVerse Tutorial
Fri 09/29 Logic Lab Video: 2 Bit Adder Circuit Lab
Video: Circuits Intro
Video: Kirchoff's Voltage Law
Logic Homework
Mon 10/02 Logic Lab
Wed 10/04 Grammars and Regular Expressions
Fri 10/06 Python Crash Course Video: Python Variables
Video: Python Loops
Mon 10/09 RegEx Lab Further Reading
Wed 10/11 Sets Further Reading
Fri 10/13 SQL Lab Logic Homework Due
SQL Lab Procedure
Mon 10/16 Fall Break: No Class
Wed 10/18 Midterm Review
Fri 10/20 Midterm
Mon 10/23 Vectors Video: Vectors and Bases
Wed 10/25 Vector Norms Video: Vector Norms
Fri 10/27 Matrices
Mon 10/30 Coordinate Rotations
Wed 11/01 Matrix Lab
Fri 11/03 Fourier Analysis
Mon 11/06 Filtering Lab
Wed 11/08 Filtering Lab
Fri 11/10 Counting
Mon 11/13 Probability: Events
Wed 11/15 Probability: Random Variables
Fri 11/17 Cryptography: Caesar Cipher
Mon 11/20 Cryptography: Intro to Finite Fields
Wed 11/22 Cryptography: Diffie Hellman
Fri 11/24 Cryptography: RSA
Mon 11/27
Wed 11/29 Thanksgiving: No Class
Fri 12/01
Mon 12/04