Skip to content


Hi, I’m Jeff—I’m going to teach you a superpower.

X49 is a collection of lessons on building websites on today’s web. Specifically, this book is written for students in my intermediate, advanced, and graduate-level web development courses at Michigan State University. But a student can be anyone and hopefully these tutorials will be useful to curious crafters from around the web.

This book is not comprehensive. It’s broken up into 49 individual lessons that cover the breadth of modern web design—from basic HTML through frameworks like React. It’s designed for students that are exploring web development as an upgrade skill to another course of study (e.g. game design, computer science, and user experience). Finally, it’s a work-in-progress and a bit of a digital garden. Expect revisions and updates to match the pace of change within our industry (fast/often).

I’m also trying to follow the ethos of good tutorials by providing interesting things to build in each lesson. The goal is to complete a full mini-project within each tutorial, and of course—learn something.


You don’t have to know anything about web development to use this book, but you do have to know how to use a computer. You’re probably thinking—this guy’s a fool, of course I know how to use a computer… But over the last decade I’ve seen a slow, steady decline in the advanced computer skills among my students. Tasks like creating text files, navigating directory structures, and interacting with files in different contexts have become sticking points preventing students from advancing through tutorials.

You should be able to do the following before advancing through this book:

  1. Identify the specific operating system you are using along with the hardware specifications of your computer. For example, I am using a M2 Macbook Air with 32GB of RAM running MacOS 13.6 (Ventura).
  2. Install software through both your operating system app store (e.g. AppStore on a Mac) and downloadable installers.
  3. Unzip, untar, and generally unarchive archived files that you may download or receive (.zip, .tar, .tar.gz). Compressed archives are a popular way to share and distribute open source software.
  4. Download a file from the internet and locate that file on your computer. You should understand the basic directory structure of your operating system user account (e.g. how to navigate to your home directory, how to navigate to your downloads folder, and the relationship between those directories).
  5. Generate PDFs from multiple, different sources into a single file.
  6. Create, duplicate, inspect, and delete files using your operating system file browser (Finder on Mac).
  7. Use your terminal shell (or command prompt) to do basic directory navigation and file viewing/manipulation.
  8. Troubleshoot your own internet connection.
  9. Research and troubleshoot basic operating system questions and issues.
  10. Research and troubleshoot basic software/application questions and issues.