CS107E is Computer Systems from the Ground Up. Read more about the course here.
March 9, 2020: We will continue in entirely virtual/remote format from here to end of quarter (See Piazza post for logistics) Keep an eye on Piazza forum for updates and stay in touch. Above all, take care to be safe and well.
March 14, 2020: Note to Prospective Spring CS107E Students
CS107E will be offered in the Spring of 2020. Because it is a hands-on class that has a kit, we will be mailing the kits to students in the class before spring break. Because CS107E has limited enrollment, the implication of this is that we will select students for the course before Wednesday, March 25th. On Saturday, March 21st, we will email a questionnaire to all students enrolled in the course, to be completed by Monday, March 23rd. Because we are physically mailing kits, we ask that students do not shop CS107E, because we have no way of transferring the kit to another student. If you have any questions, please email me (firstname.lastname@example.org).
I also recommend Steven Wolfram’s blog post Untangling the Tale of Ada Lovelace for a nice description of Charles Babbage’s and Lady Ada Lovelace’s roles in developing the concept of a general-purpose computer.
Brush up on C basics (syntax, data types, operators, control structures) via your favorite C reference; sections 1-2 of Nick Parlante’s EssentialC; or chapters 1, 2, and 3 of K&R. Skip content on I/O and standard libraries (we are bare metal!)