teaching machines

CS 1: Lecture 3 – Scanner

Dear students, We start today by visiting a few of your questions and observations from your quarter sheets. I read through every single one of these, and respond to a few. They help me feel the pulse of the class. Last time we just started teaching a machine to perform some math for us. I […]

CS 1: Homework 1 – Main Train – due before September 22

See the PDF.

CS 1: Lecture 2 – Computer as Calculator

Dear students, Last time we started to explore one of the primary activities of computer science: organizing process. We started this adventure using Madeup, but today we’ll jump into Java, the language we will spend most of our time with this semester and next. Java is a language originally developed by Sun Microsystems. It surged […]

CS 1: Homework 0 – Part 2

In part 1, you created your homework repository on Bitbucket, cloned it on your local machine, and pushed local changes back up to Bitbucket. In this installment, you will learn to synchronize in the other direction—you will pull changes down from Bitbucket to your local repository. Pulling Suppose you’re home for the weekend, and you […]

CS 1: Homework 0 – Part 1

Follow these steps to create your class homework repository and get homework 0 up and running. 1. Create a Bitbucket account In this class, all your code will be stored with the Bitbucket webservice. Using this third-party service has some nice benefits: Bitbucket maintains a complete history of your source code using some software called […]

CS 145: Lab 1 – Variables and Scanner

Welcome to the first lab of CS 145! Lab is a time intended for you to work on programming exercises in a low-stakes environment and with lots of help at your disposal. Read each of these out loud with your lab partner and check them off to acknowledge your understanding: You complete a few checkpoints, […]

CS 148: Lab 1 – Madeup and Project Euler

Welcome to the first lab of CS 148! Lab is a time intended for you to work on programming exercises in a low-stakes environment and with lots of help at your disposal. Read each of these out loud with your lab partner and check them off to acknowledge your understanding: You complete a few checkpoints, […]

CS 1: Lecture 1 – Introduction

Dear students, Welcome to CS 145: Programming for New Programmers or CS 148: Programming for Experienced Programmers! It’s important to me that we have a comfortable working relationship. We are, after all, on the same team. You wanted to prepare yourself for a bright future, and so you asked me to give you some homework […]

CS 396 – Junior Seminar

Course Information Syllabus Enrollment: ~51 Lectures

CS 1 – Introduction to Programming

Course Information Syllabus Enrollment: CS 145: ~90 CS 148: ~30 Lectures Labs for CS 145 Labs for CS 148 Homework Exams