teaching machines

CS1: Lecture 33 – A Growable Array

Dear students, Today, November 22, is National Growable Array Day. We will celebrate growable arrays everywhere by growing one of our own growable arrays, right here, in our classroom. I hope you wore your festive gear. Behind every growable array is an plain old ungrowable array. When that ungrowable array gets filled up, a new […]

CS 145 Lab 10 – Objects and ArrayList

Welcome to lab 10! If you have checkpoints from the last lab to show your instructor or TA, do so immediately. No credit will be given if you have not already completed the work, nor will credit be given after the first 10 minutes of this lab. In this lab you will create our own […]

CS1: Lecture 32 – More Objects

Dear students, Last time we started our discussion of objects. We continue that discussion today with more examples. Out of concrete examples we build generalized knowledge, right? It’s not the other way around. At this point in the learning process, seeing patterns is more important than feeling like you understand objects. Both need to happen […]

CS1: Lecture 31 – A First Object

Dear students, Today we move on to our last personality: the Computer as a Creator. Up till this point, code and data have been separate entities in our code. Now, we will marry them. We’ll organize code and the data that it operates on into a single being: an object. Objects are models of some […]

CS 148 Lab 10 – Objects and ArrayList

Welcome to lab 10! If you have checkpoints from the last lab to show your instructor or TA, do so immediately. No credit will be given if you have not already completed the work, nor will credit be given after the first 10 minutes of this lab. In this lab you will create our own […]

CS1: Lecture 30 – 2D Arrays and ArrayList

Dear students, Today we will complete a whirlwind tour through a couple of concepts that really deserve a couple of conversations each. These concepts are two-dimensional arrays and ArrayList. Two-dimensional Arrays Let’s consider a famous statistical problem. Suppose birthdays are uniformly distributed across the calendar year. What’s the probability that we in this room all […]

CS 145 Lab 9 – Arrays

Welcome to lab 9! If you have checkpoints from the last lab to show your instructor or TA, do so immediately. No credit will be given if you have not already completed the work, nor will credit be given after the first 10 minutes of this lab. In this lab you will work with data […]

CS1: Lecture 29 – Bundled Data

Dear students, Last time we used arrays as a means to map integers to values. We associated our data with 0, 1, 2, 3, and so on. When we got a new piece of data in, we use its index to reach inside our array directly. Today we shine the spotlight on arrays as a […]

CS 148 Lab 9 – Spinner

Welcome to lab 9! Our goal in this lab is to continue our discussion of loops, but also get some more practice with images and the GifSequenceWriter that you are using in homework 4. Because we’re going to use some code that I’ve provided to you in the homework 4 SpecChecker, you’ll need to complete […]

CS1: Lecture 28 – Indexed Data

Dear students, We officially close out our discussion of the Computer as a Pilot, during which we made the computer navigate this way and that way and back again through our code using conditional statements and loops. But, like always, these ideas of branching and repetition will never leave us. Computers make a lot of […]