Computer Science 632H                                                                                  Syllabus for Fall 2012

Dr. Carol E. Wolf                                                                                            Office 215

Website: http://csis.pace.edu/~wolf                                                                  E-mail:cwolf@pace.edu

Office Hours: Mondays and Wednesdays, 1:30-3:30.                                     Phone: 212-346-0799

 

Text:  Sam Ruby, Dave Thomas and David Heinemeier Hansson, Agile Web Development with Rails, Fourth edition, The Pragmatic Programmers, 2011

The text is available in PDF form from the Pragmatic Programmers’ website, http://www.pragprog.com.

 

  Week

Topic

 

  1

Lecture: Three tier applications, Ruby and Rails history

Lab: Install Ruby on Rails on laptops and set up an application using scaffold

  2

Lecture: Ruby language,

Lab:  Cascading Style Sheets

  3

Lecture:  Model-View-Controller paradigm in a Rails project

Lab:  Validation and seeds

  4

Lecture: Controller and ERB

Lab: Controller, Views, Forms and Routes

  5

Lecture:   Database design, model and migrations

Lab: Add an image column and modify views

  6

Lecture: More HTML forms

Lab: Add radio buttons, checkboxes and choice boxes to forms

  7

Lecture: Controller and routes, more on Ruby

Lab: The home page controller: list and find

  8

Lecture: The controller, some Ajax

Lab: The manager’s controller: create, update and delete

  9

Lecture: Security

Lab: Login for the manager

  10

Lecture: Sessions

Lab: A shopping cart

  11

Lecture: Testing

 

  12

Lecture: More on Security

 

  13

Presentations

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Students are required to do all ten labs.  They are due one week after assignment and will not be counted late until after two weeks.  Students may work ahead. When finished upload the lab assignment to the discussion board on Blackboard.  The final grade will mainly be based upon a project to be completed over the course of the semester.  This should be a Rails application with at least two database tables, a cascading style sheet, security features and a login.  It may be considerably more elaborate.  Students may either work with one partner or alone.  Possible applications could involve sports teams, clubs, bank accounts, stock portfolios, libraries or some other use that involves a lot of data.  Choose realistic data for your database tables.  If possible, students should demonstrate their final projects in person to the professor.