Schedule

This is a general overview for the whole course. If you have a question about a specific week or lab, you can find more info in the introduction to the corresponding chapter.

Each lab is assigned in class and is due at the beginning of class the following week (i.e we will talk about Lab 0 in class on Week 0, and it will be due before class on Week 1).

Week 0: SetupSeptember 4

Assignments Due

Development environment set up (instructions in sections 0.1-0.3 in this chapter) and GitHub account created

Reading Due

Please read the short MDN Introduction to HTML and complete the Try Git exercises before class.

Workshop Topic

HTTP and HTML basics, and how to turn in assignments via GitHub.

Lab Assigned

Lab 0: HTML Todo

Week 1: Ruby & SinatraSeptember 11

Assignments Due

You should have Lab 0 completed before class.

Reading Due

Please watch this screencast and complete the interactive lesson at http://tryruby.org/ before class.

After class, you will probably want to read the sections on Routes, Conditions, and Static Files in the Sinatra Readme. You may also want to check out the MDN HTML Form Guide (section 1 and section 5 are particularly relevant).

Workshop Topic

Introduction to web application development

Lab Assigned

Lab 1: MVC Todo

Week 2: CSSSeptember 18

Assignments Due

You should have Lab 1 completed before class.

Reading Due

Optional reading: James Mickens - To Wash It All Away

Workshop Topic

HTML, Git, and Ruby review, plus a short tutorial on basic CSS.

Lab Assigned

Lab 2: CSS Artistry

Week 3: ReviewSeptember 25

Assignments Due

You should have Lab 1 completed by the end of class. I would like to see everyone have Lab 3 finished by next Thursday (October 2nd).

Reading Due

Recommended reading - review any of the previous chapters that you had trouble with, as well as the suggested resources for those topics. Optional reading - this StackOverFlow question

Workshop Topic

TBD

Lab Assigned

Lab 3: Iterate

Week 4: DatabasesOctober 2

Assignments Due

You should be caught up with the class, with your Lab 3 pushed to GitHub and tagged properly with a v0.3.x tag.

Reading Due

Please familiarize yourself with basic database terminology and ActiveRecord basics. Don't worry too much if you don't understand the code examples or migrations, just try to get a sense for what ActiveRecord's role is in a ruby web app.

Workshop Topic

Introduction to relational databases and ActiveRecord.

Lab Assigned

Lab 4: ActiveRecord

Week 5: DeploymentOctober 16

Assignments Due

You will need to have Lab 4 finished before you can deploy your application.

Reading Due

None.

Workshop Topic

Deploying your application to Heroku

Lab Assigned

Lab 5: Deployment

Week 6: Databases IIOctober 23

Assignments Due

You should have Lab 5 completed prior to class.

Reading Due

None this week.

Workshop Topic

Advanced ActiveRecord - validations and relations.

Lab Assigned

Lab 6: Multi-user app

Week 7: ProjectsOctober 30

Assignments Due

Post 1-3 ideas for your project topic on this GitHub thread by TUESDAY. I will follow up with you to make sure that you've got a feasible project topic chosen by THURSDAY. See the next page for some guidelines for the project.

Reading Due

Optional: read this blog post about what I think makes for a successful project.

Workshop Topic

Projects Q&A/Office Hours

Week 8: Project Q&ANovember 6

Assignments Due

N/A

Workshop Topic

Introduction to Javascript

Week 9: AuthenticationNovember 13

Assignments Due

work on project

Workshop Topic

Authentication

Week 10: Demo DayDecember 2

Assignments Due

project demos

Week 11: Demo DayDecember 4

Assignments Due

project demos