CS 347: Lecture 24 – OAuth2
Dear students: Today we discuss OAuth2, a popular system for managing access to data controlled by a web service but accessed by a separate client application. I will be frank with you. Security is not my favorite subject, and I do not feel qualified to be speaking on it. However, OAuth2 is too much of […]
CS 347: Lecture 22 – Router, Part II
Dear students: React lifts the burden of manipulating the DOM, which is nice, but some desirable features are also thrown out—like a site organized into multiple pages. With what we’ve seen of React so far, multiple pages are not really an option, as all views must be corraled under the almighty App component. In this […]
CS 347: Lecture 21 – Router, Part I
Dear students: React lifts the burden of manipulating the DOM, which is nice, but some desirable features are also thrown out—like a site organized into multiple pages. With what we’ve seen of React so far, multiple pages are not really an option, as all views must be corraled under the almighty App component. In this […]
CS 347: Lecture 23 – Hosting User Files
Dear students: Many web apps evolve into miniature content management systems. Users upload their content to the back-end, and the front-end serves as an interface to this centralized storage. Sometimes the content is simple text and numbers that are stored in a database. But sometimes the data is more complex, like images and other media. […]
CS 347: Lecture 20 – Today App: Client, Part II
Dear students: We will continue examining ingedux through the lens of a client for our Today app. In this second part, we’ll use Redux to update the state as we create, update, and delete memories. Here’s your TODO list: Watch Adding New Memories.
CS 347: Lecture 19 – Today App: Client, Part I
Dear students: React takes over management of the DOM, allowing us to focus on managing the state of our app. As the data behind our app and our component hierarchy become more complex, even state management becomes challenging. To deal with this complexty, we will push the data into an object managed by Redux. With […]
CS 347: Lecture 18 – Today App: Database + Web Service
Dear students: Last time, we looked at the mechanics of web services using Express. Today we build up a non-toy web service for a time capsule application that lets the user track memories of each day. Behind our web service will be a MySQL database, and our service will have endpoints for the four common […]
CS 347: 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 347: 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 the most recent […]
CS 347: Lecture 15 – Higher-order Functions
Dear students: In this lecture, 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 many of our looping algorithms follow certain patterns, we can generalize those patterns into reusable […]