CMSC 210: Web page design and scripting
Spring 2018
Prof. Blaheta
Broadly speaking, in most computer science classes you are not taught a language or a technology; the focus is on some conceptual understanding—of structured programming, or abstraction, or whatever. This course shifts that a bit. Here, we primarily focus on learning to write in the core web languages (HTML, CSS) and to program in a language and development framework designed to control them (Ruby on Rails). However, an important goal of this course is to teach not just the new languages, but how to learn new languages, which you should in the end be confidently able to do on your own (as you'll have to do many times over the course of your career).
This class meets 2:00pm on TR.
The textbook for this course is Michael Hartl, Ruby on Rails Tutorial, 4e. ISBN 978-0-13-459862-8. The full content of the book is also available free online, at https://www.railstutorial.org/book, and that version is perfectly acceptable for use in the course.
Course materials
- Syllabus
- Collaboration/citation policy
- Documentation:
- speaking rubric
Homework
- For 23 Jan: Do W3Schools tutorial on HTML, through Paragraphs
- For 25 Jan: Continue HTML tutorial with "Formatting", "Quotations", "Comments", "Links", and "Images", and have file(s) in your public_html that demonstrate at least one thing from each HTML tutorial page, plus an index.html that links to all your pages; and then do W3Schools tutorial on CSS through "Links" (but skip "Box Model" for now).
- For Tuesday 30 Jan: In the HTML tutorials, do Lists and Tables; on the CSS side, do in particular "Lists", "Tables", "Display", and "Float". Then, continue the classwork with the "representing images" stuff; use CSS to make it match(-ish) first one, then the other of these sets of screenshots:
- For Thursday 1 Feb: In the Javascript tutorials, read, and do at least some of, the JS tutorials from "Statements" through "Number Methods". Skip "Objects" and "Events" for now. As you're practicing things, try translating something from 140/160 into javascript (and you can use window.alert() to "print" to the webpage).
- For Thursday 8 Feb: Read Chapter 1
- For Tuesday 13 Feb: Read and do Chapter 2, as much as you can. If you do something and you're not sure why it works, make a note of it. If something doesn't work but you figure out a workaround, make a note of it. If you get totally stuck on something and can't proceed forward, make a note of it.
- For Tuesday 27 Feb: Practice Ruby by writing a short program (.rb file) that takes an array of strings (you can set this manually at the top of the program) and prints out those strings that are all-caps. (Also do the reading and tutorial for Tuesday, which is Chapter 5.)