Creative Project

CSE 154 - Spring 18

Overview

Throughout this course, we'll work with a number of different technologies to build different pieces of web applications. However, it can be de-motivating to build something to a specification, especially when you are learning something new and want to make something that has your own flavor. To give you a chance to play around with the technologies we're learning, this quarter one of your homework assignments will be to write one or more websites from scratch, entirely of your own design. Each week, there will be some requirements that you have to meet, but the requirements don't force you to have any particular content, layout, color scheme, feel, etc - you'll make that yourself.

The idea is that you spend around an hour each week. This should be ample time to meet the specified requirements for the week. If you find yourself spending much, much more than one or two hours per week, talk to your TA or the instructor, and we'll make sure that the time you spend in your creative project doesn't prevent you from getting other coursework done.

Each week you can decide if you want to build on one of your previous creative projects or start an entirely new one. Just make sure that you fulfill the requirements of the week (you don't need to meet the previous week's requirements).

Example Project Idea

If you don't have inspiration for your own project, one suggestion is to build a student portfolio. This is a type of online showcase of your work. You can link into art projects, papers that you are proud of, etc. At the end of the quarter, you'll be able to share this portfolio with, well, anyone with an Internet connection :) We'll provide some small amount of guidance as the quarter goes on as to how to use the tools we're learning to do something interesting in your student portfolio page. Again, to be clear, you are not required to work on a student portfolio - the website you are building is going to be entirely of your own design, and will be graded on the weekly requirements.

CP0 Requirements

Due Thursday, March 29th at 11:00pm

Purpose: To start thinking about the web and bring your creative side when doing so.

Requirements:
Submit a PDF file called "w0.pdf" with responses to the following:

  1. Come up up with your own available domain name. Use GoDaddy or another resource to verify that the domain is available (don't actually buy the domain). For this part, you only need to provide the name you've chosen.
  2. Create your own interesting 404 for your domain name. Be creative! It can be a scanned or photographed picture of a sketch, or something you mock up on the computer with a graphic/illustrator program.

CP1 Requirements

Due Monday, April 2nd at 11:00pm

Requirements:
Submit a zip file called "cp1.zip" (make sure this is saved as an actual zip file) meeting the following requirements:

CP2 Requirements

Due Monday, April 9th at 11:00pm

CP3 Requirements

Due Monday, April 16th at 11:00pm

Purpose: To practice adding interactivity to a web page using the DOM and event handlers in JavaScript.

CP4 Requirements

Due Monday, April 23rd at 11:00pm

Purpose: To practice changing the DOM by adding/removing/appending elements using JS in response to an event(s) and to update elements on the page using the classList to separate style from behavior.

CP5 Requirements

Due Friday, May 4th 11:00pm

Purpose: To explore different API's available on the web and use AJAX with them to fetch and process data on your website.

CP7 Requirements

Due Monday, May 14th 11:00pm

Purpose: To practice implementing your own JSON-based API in PHP and using it as a client in JavaScript.

CP8 Requirements

Due Monday, May 21st 11:00pm

Purpose: To practice creating your own SQL table and querying it.

CP9 Requirements (Optional)

Due Tuesday, May 29th 11:00pm

Purpose: To wrap up your creative project work with a final portfolio you can publish, showcasing your exploration of web programming throughout the quarter. You may also opt in to the final creative project showcase (no specific requirements this week for the showcase :)) We'll show how to publish your projects using your UW webspace next week!