teaching machines

CS 268: Lecture 5 – Flexbox

Dear students: Last time we explored the box model that guides our browser’s rendering algorithm. Today we examine the relatively modern Flexible Box system for CSS, which can be used to automatically set the properties of our boxes to achieve many of our standard layouts. But first, let’s review the box model by completing an […]

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 268: Project 1 – Handcrafted Site

In this first project, you will create a website for a client using raw HTML, CSS, and JavaScript. You will not use any helper libraries or frameworks. Instead you will gain facility with the foundational elements of web development. Expectations Your site must meet the following expectations: You will create a website for a client […]

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 491: Project Milestones

This semester you and your team will be dropped into a box. Calories will be dropped in one side of the box, and a game will pop out the other. To help structure your progress, your box is actually expected to pop out four versions of your game in various stages of completion. These milestones […]

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 […]