Project 0: Building a Webpage
Your first project is to build a small website of your own and publish it to the real internet. You pick the topic: anything safe for work, and by the end you will have a live page with your name on it that anyone in the world can visit. Unlike the manager above, this project tells you exactly what “webbish” means: a rubric of concrete, checkable requirements.
This project is about more than practicing HTML and CSS. It is practice at what every working programmer does all day: follow technical instructions, and look up the parts you were never taught. A handful of the requirements below cover things we did not do in class, on purpose.
Due: Wednesday, September 16, see the schedule.
Learning objectives
Primary:
- develop a basic working knowledge of HTML and CSS
- be able to follow directions in introductory tutorials written for programmers
Secondary:
- understand the basics of search engine optimization
- understand the basics of web tracking
Instructions
Start from the page you built while working through the HTML and CSS readings, and expand it until it meets every requirement in the rubric below.
Grading rubric
Your webpage must satisfy each checkbox below. Your grade starts at 27/27, and you lose one point for each checkbox you do not complete. Complete all of them and you get 27/27.
Your webpage must contain at least:
At least one HTML file must:
-
Note: See this tutorial for the difference between follow and nofollow links. I want that sweet, sweet pagerank…
Every HTML file must:
-
Note: See this tutorial for details. Either a vertical or horizontal navigation bar is fine.
-
Note: see this tutorial on meta descriptions and this one on other meta tags for details.
The CSS file must:
Your domain must:
Note: If you believe one of these checkboxes is not appropriate for your webpage, post an issue on the course repository and I may grant an exception.
Note: We did not cover the italicized steps in class, and that was intentional. You will have to use Google, an LLM, or the textbook to figure them out. No programmer understands all of HTML and CSS; everyone relies on looking things up while they work. The purpose of the italicized steps is to give you practice leaning on outside resources.
Extra credit
There is no requirement that your page “look nice” or have “good content,” because those are too subjective to grade. Instead, you can earn extra credit by making a page good enough that real people engage with it. Complete either task below for 1 point of extra credit, so the maximum score is 28/27:
For the extra credit, feel free to get creative and use whatever black hat techniques you can think of.
Submission
Submit two URLs on Gradescope:
- the URL to your webpage, and
- the URL to the Internet Archive’s copy of your webpage.
If you completed extra credit, also submit a screenshot proving it.