Description
As its title suggests, this course covers the basic ideas, languages, and tools used in the design and construction of modern web pages, and introduces students to a subset of computing principles as they relate to The Web.
Note: There is no prerequisite for this course.
The common syllabus across all sections of CSCI-UA.0004 may be found here.
Textbook: Learning Web Design: A Beginner’s Guide to HTML, CSS, JavaScript, and Web Graphics (5th Edition). Jennifer Niederst Robbins. ISBN: 978‒1‒491‒96020‒2
Learning Outcomes
Upon successful completion of this course, students will understand...
- how to interact with a computer using basic command line interface instructions;
- how to semantically combine HTML with content
- how to style HTML with CSS;
- how HTML, CSS, and JavaScript work in concert to create interactive web sites;
- what role jQuery plays (and has played since 2005) in the web ecosystem;
- how to revision control your work using GitHub;
- and, finally, how to properly set type on web sites.
Class Policies
Consuming food in class. There is no eating inside our classroom. The smell of food is very distracting, even offensive to some, and can linger in a room. Drinks in covered containers, however, are allowed.
Attendance. Attending lectures is crucial, for obvious reasons. Aside from emergencies, everyone should attend each session. If you are absent for any reason, you are responsible for all the material and announcements covered in the session you missed. Please do not ask me for notes, as I do not have any to share. Make one or more note-taking friends in class so you can share notes.
Lateness. If you come to class late and miss roll call at the beginning of class, I will not interrupt the lecture to update my roster from “absent” to “late.” It is your responsibility to come to me after class to let me know that were late. This has to be done in person and on the day you are late. Otherwise, the absence remains. Also, bear in mind that you are responsible for any announcements and/or material you missed before your late arrival to class.
Software Requirements
All the required software for this course is free. For Mac users, the installation process is automated using this script. Windows and Linux users, however, will need to install the software manually. See below.
GitHub (Mac, Windows, and Linux)
All in-class examples, assignments, and help is done via GitHub. Once you’ve opened an account at GitHub, download the client for your computer here.
Text Editor (Mac, Windows, and Linux)
The code you write will require a text editor. And, although there are many on the market, such as Brackets (open source), Sublime Text (nagware), and Visual Studio Code (open source), Atom (open source) is the only editor supported in class.
Markdown Editor/Viewer (Mac, Windows, and Linux)
Although a text editor will suffice to view and edit Markdown files, some may want a full-featured program to deal with Markdown. We’ll use Typora in class.
Browsers (Mac and Windows)
Download all the browsers available at Browse Happy. Some of the students in my more in-depth classes might also want Chrome Canary, Safari Technology Preview, Firefox Developer Edition, and Firefox Nightly. I use Chrome and Firefox in class.
File Transfer Protocol (Mac, Windows, and Linux)
To transfer files between our local machines and a server, we’ll use FileZilla.
Fonts (Mac, Windows, and Linux)
In addition to the stock issue, monospace/fixed-width fonts included with your OS, give IBM Plex, Fira Mono, Ubuntu Mono, Anonymous Pro, or Inconsolata a try.
Command Line Interface
Mac and Linux users do not have to install a Command Line Interface, or CLI, because these operating systems already have The Terminal installed. Windows users, however, might want to install Cygwin.
Browser Extension for Accessibility Testing
Available for Chrome and Firefox, Axe is a browser extension that checks the accessibility of your web pages.
Web Development Environment Configuration Files
Once all the software above has been installed, go here and follow the instructions in the README.md file, which you should open in Typora.
Students with Disabilities
Students with disabilities can find support information from the University here.
Contact
r.o.y at nyu dot edu is my email address. However, I only communicate with students over email in emergency situations (death, divorce, personal tragedy, pet emergency, etc). For matters related to the class, see me during my office hour or after class.
Schedule
Instead of slides, in-class examples are posted to GitHub.
Important Dates
- 18 February: No Class (Presidents Day)
- 13 March: No Lecture (Midterm Examination)
- 18 and 20 March: No Class (Spring Recess)
- 13 May: Final Lecture
- 17 May: Final Exam
Week | Topics | Homework |
---|---|---|
One (27 Jan – 2 Feb) |
|
|
Two (3 Feb – 9 Feb) |
|
|
Three (10 Feb – 16 Feb) |
|
|
Four (17 Feb – 23 Feb) |
|
|
Five (24 Feb – 2 Mar) |
|
|
Six (3 Mar – 9 Mar) |
|
|
Seven (10 Mar – 16 Mar) |
| Study for midterm |
Eight (17 Mar – 23 Mar) |
| Happy spring recess! |
Nine (24 Mar – 30 Mar) |
|
|
Ten (31 Mar – 6 Apr) |
|
|
Eleven (7 Apr – 13 Apr) |
|
|
Twelve (14 Apr – 20 Apr) |
|
|
Thirteen (21 Apr – 27 Apr) |
|
|
Fourteen (28 Apr – 4 May) |
|
|
Fifteen (5 May – 11 May) |
|
|
Sixteen (12 May – 18 May) |
| Study for final exam on Friday, 17 May. |
Assignments and Exams
Your final grade is calculated using the following formula:
- Assignments: 40%
- Midterm: 25%
- Final: 35%
Help
I’m available to help you during my office hour, which is 2:00–3:00PM on Mondays in room 308 of Warren Weaver Hall. If you need help outside of this time slot, you can also meet with a tutor. See the Tutoring section of the general syllabus for time and place.