teaching machines

CS 268: Project 2 Rubric

Your project 2 submission will be graded using the rubric below. Your site will be evaluated on five dimensions. For each dimension, I list a sample of the questions that I will use to structure my evaluation. User Experience Does the app have a coherent purpose? When network requests are being made, does the user […]

CS 268: Lecture 19 – Today Client

Dear students: We have arrived at the last big idea of the semester: managing global state. To deal with complex and shared data in our React apps, we will push the data into an object managed by Redux. With this new manage of managing the data, we’ll have to find new ways of changing state […]

CS 268: Lecture 18 – Today Service

Dear students: We look at the mechanics of web services last time. Today we build up a non-toy web service for a time capsule application. Behind our web service will be a MySQL database, and our service will endpoints for the four common CRUD operations for operating on our database’s records: creating, rreading, updating, and […]

CS 268: Lecture 17 – Hello, Express

Dear students: Many websites pull down data from web services, just as we did with the News API. But how are these web services made exactly? That’s what we explore in this lecture. We’ll use Express to create our own web service that responds to HTTP requests and serves back its data through JSON. We’ll […]

CS 268: Project 2 – React App

In the second project of this course, you will create a web app that consumes a web service using several tools from the Node.js ecosystem, including React, Redux, and Express. Expectations Your app must meet the following expectations: You will create an app that has a coherent purpose. Its content must be original and satisfy […]

CS 268: Lecture 16 – Hello, React

Dear students: The first theme of this course has been learning the foundational technologies of the web: HTML, CSS, and JavaScript. Today we officially reach the second theme: designing modern web apps with React. Systems like React ease the burden of designing interactive sites with dynamic content. Here’s your TODO list: Install Node.js, an ecosystem […]

CS 268: Lecture 15 – Higher-order Functions

Dear students: Today we hit up higher-order functions, a feature of modern languages that will shorten up your code considerably. Once you know a few of these higher-order functions, you may never write loops again. Why? Because so much of our looping algorithms follow certain patterns, we can generalize those patterns into reusable functions. For […]

CS 268: Lecture 14 – Fetch

Dear students: Last time we examined objects and how to pass them around using JSON. This time, we apply these ideas by consuming a web service: News API. We’ll use JavaScript’s builtin fetch function to grab and send JSON data. We started looking at this before spring breeeaaak happened, but I’ve re-implemented the example we […]

CS 268: Lecture 13 – JavaScript Objects

Dear students: There’s a pandemic going on right now, and it has turned the world upside down. We are no longer able to meet in person. But we’ll try to finish out this semester through the web. How apt. Our format for the rest of this constrained is constrained by a few things. First, we […]

CS 268: Lecture 12 – Forms and Web Services

Dear students: Last time we started looking at how JavaScript brings actions into normally sedate HTML. We used it to dynamically generate an HTML structure. Today we look at using JavaScript to deal with form input. We’ll also use it to get content from external sources. In particular, we’ll generate a web application for consuming […]

1 2 3 4