Project 1: Rastercaster
In this first project, you will create a sandbox for experimenting with fragment shaders and the OpenGL Shading Language (GLSL). You will render a single, screen-filling quadrilateral and paint designs on it using only algorithms that can be expressed in the fragment shader. This project is inspired by Shadertoy. Requirements To receive credit for this […]
Project Setup Instructions
The first step in building an interactive graphics program is an ugly one: you have to choose a graphical user interface (GUI) framework. This step is ugly because there are many frameworks, they are all different, they tend to obsolesce, and they often draw you into a mire of platform-specific issues. But you have to […]
CS 347: 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 347: Project 2 – React App – due December 13
In the second project of this course, you will create a web app that consumes a web service. The subject of the app is not specified; you pick its purpose. You will use several tools from the Node.js ecosystem, including React, Redux, and Express. Expectations Your app must meet the following expectations: You will create […]
CS 347: Project 1 Rubric
Your project 1 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. This rubric summarizes but does not replace the full enumeration of project requirements shared earlier. Content Is the […]
CS 347: Setting Up Project 1
Your project 1 will be a real website with its own Git repository, Apache configuration, and domain name. This guide walks you through getting it all set up and served out via Apache. Create Local Repository Follow these steps to set turn the project 1 folder on your local machine into a Git repository. Open […]
CS 347: Frequently Asked Questions
I ran sudo service apache2 restart and there was an error. Often this means you have a syntax error or some other configuration issue in your host’s .conf file in /etc/apache2/sites-available. To see what line is causing it, run these two commands: sudo service apache2 restart; sudo journalctl -xe There are two commands there, separated […]
CS 347: Project 1 – Handcrafted Site – due October 15
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 347: Webdev Blog
This semester you will document your learning of web development in a blog that you serve out via the Apache web server. Each week you will write a short entry responding to some articles you’ve read or videos you watched on some aspect of HTML, CSS, JavaScript, or web development in general about which you […]
CS 347: Digital Ocean Setup
Your projects and blog will be hosted on a web server that really lives on the web. You will set up your server with Digital Ocean, a company that hosts virtual machines—which they call droplets. Normally, droplets cost money. Thanks to the GitHub Student Developer Pack, you can get a $50 credit for Digital Ocean. […]