teaching machines

CS 268: Lecture 8 – Position

Dear students: Prior to 1998, CSS was mostly a vehicle for factoring the coloring, sizing, and alignment attributes out of HTML into a reusable stylesheet. But in 1998, CSS gained a new property: position. This opened the door to thinking of CSS as a tool for layout. Eventually we got robust layout systems like Flexbox […]

CS 491: Meeting 7 – Smooth Movement and Projectiles

Dear students: In your prototypes last week, we saw that all of our games are going to involve physical interactions between objects. At the end of our last lab we were manually positioning our players, which meant that we could walk through walls. Also, the movement was jerky. In today’s lab, we look at how […]

CS 268: Lecture 7 – Flexbox Continued

Dear students: Last week we saw how we can use Flexbox to size and distribute our boxes of content across a container. Today we continue to explore Flexbox and see how to recreate some common layouts found across the web. But first, let’s review Flexbox by completing an exercise. Flexbox Last time we looked at […]

CS 268: Lecture 6 – Project Workflow

Dear students: We saw last time how we can use Flexbox to size and distribute our boxes of content across a container. We have a few more things to say about Flexbox, but we will postpone the new stuff till next time. Instead, we’ll discuss a workflow for developing a website and getting it served […]

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