teaching machines

CS 268: Lecture 4 – Boxes

Dear students: At the heart of our browser’s rendering algorithm is the CSS box model. Today we explore this in some detail. By the end, we should be able to make a page that looks like this: Box Model When the browser renders an element from your HTML file, two things it must determine are […]

CS 491: Meeting 3 – Joystick

Dear students: We have formed teams and are hashing out game ideas. Some of us are feeling the repressed artist inside of us wake up to the call of pixel art. We should keep that progress going. Right after a lab exercise! Exercise Let’s make a game—one that uses a two-axis joystick. We’ll move an […]

CS 268: Lecture 3 – Hello, CSS

Dear students: If the purpose of modern HTML is to give structure but not presentation to our information, how do we specify its presentation? We will answer that question today. We’ll look at some of the common visual properties that we can adjust and describe how we can apply them to certain substructures. By the […]

CS 491: Meeting 2

Dear students: Today is our first workday. You and your team will spend the time hashing out ideas, discussing one anothers’ strengths and interests, and coming up with a plan. In particular, these are some things to do during class today: Inform your instructor of your studio’s name and employees. He will make a private […]

CS 268: Lecture 2 – HTML

Dear students: Last time we introduced the web as an effort to exchange structured information between computers. Today we look more closely at the language we use to give structure to our information: HTML. Questions Let’s start by reflecting on the reading with a few questions. What can you tell me about whitespace? What appears […]

CS 491: Meeting 1 – Push Button

Dear students: Welcome to CS 491! The Registrar doesn’t really give this elective class a name, but between you and me, I’m calling it Game Development and Physical Computing. The Game Development part means we’re going to be making games. The Physical Computing part means we’re going to be assembling hardware. That hardware will sense […]

CS 268: Lecture 1 – Web History

Welcome to CS 268: Web Systems! In this class, we will investigate how to make software that runs in a web browser. It’s quite likely that web development is going to be one of the most important skills you can have in this stage of the technological era. Standalone desktop apps will never go away […]

CS1: Lecture 38 – Slideshow

Dear students, A primary benefit of object-oriented design is that it helps us organize our programs coherently. We can put code and the data that it regularly processes together into the same chunk. Objects allow for the separation of concerns. Class A can focus on its task, and be very good at it. It can […]

CS1: Lecture 37 – Chat Continued

Dear students, Today we extend the networked chat application that we started writing last week. Beyond getting it functional, we’ll also give the client a graphical user interface (GUI). Java is one of the few languages that ships with a builtin windowing library. Dialogs If your program only prompts the user for simple input, like […]

CS1: Lecture 36 – Chatting with Sockets and Threads

Dear students, At the end of the semester, we have an opportunity to explore some new, crazy ideas. Next week we’ll have a look at graphical user interfaces. Today we’ll look at sockets and threads as we make a chat client. Sockets Computers got especially interesting when they gained the ability to talk to each […]

1 13 14 15 16 17 110