CS2a/Spr09: Introduction to Computers
Welcome
abstract image Instructor: Tim Hickey
Time/Location: MWT 1-2 in Gzang 121
Office hours:in Volen 138,
Mon (11-12), Wed (2-3), and Thu (10-11)

TAs

Welcome to the CS2a/Spr09 Website

This class has no prerequisites and is open to all Brandeis students. The goal of this course is to introduce you to the fundamental concepts underlying website design and programming.

Class Links

Links

Homework

Quizzes and Exams

Readings

Class notes

Week 1

  • Wed 1/14/2009: Overview of the course
  • Thu 1/15/2009: Tables and Lists

Week 2

  • Tue 1/20/09: CSS w3schools CSS manual
    using Positioning and float
  • Wed 1/21/09: CSS continued: id and class attributes
  • Thu 1/22/09: HW1 assigned and discussed
    Positioning HTML elements using the position property and its related properties.
    Resource: w3schools.com/css and its manual page on positioning
    Google: "CSS positioning" will bring other resources as well.

Week 3

  • Mon 1/26/09 More on absolute positioning in CSS. We covered absolute and relative positioning and the overflow property with a mention of the clip and z-index properties.
  • Wed 1/28/09 Today we complete our study of CSS with an indepth overview of Selectors including contextual selectors (descendant, child, sibling) and attribute-based selectors.
  • Thu 1/29/09 Today we give an extended introduction to interactive websites and in particular to the JScheme server. Interesting links:

Week 4

  • Mon 2/2/09
  • Wed 2/4/09 Today we show how to do calculations in a servlet and talk about arithmetic expressions in Scheme as in the notes on additional Scheme servlets.
  • Thu 2/5/09 Today we discuss defining templates and conditional execution.

Week 5

  • Mon 2/9/09
  • Wed 2/9/09
  • Thu 2/9/09

Week 6 - February Vacation

2/16-2/20

Week 7

2/23-2/27

Week 8- Databases

Week 9

  • Mon 3/12 - Starting the Login/Registration Example: creating a username/password table and inserting values
  • Wed 3/14 - A complete login/registration example: here
  • Thu 3/15 - Quiz4

Week 10

  • Mon 3/17 Using the Scheme interpreter on the JScheme website.
  • Wed 3/19 Using the Scheme Interpreter
  • Thu 3/20 Using the Scheme Interpreter

Week 11

  • Mon 3/23 - Using the Scheme Interpreter
  • Wed 3/25 - Go over HW6 and walk through the initial code you will build on...
  • Thu 3/26 More Scheme tracing: (define (sumlist L) (if (null? L) 0 (+ (first L) (sumlist (rest L))))) (sumlist '(1 4 3 6)) (define (sumlist2 L A) (if (null? L) A (sumlist2 (rest L) (+ (first L) A)))) (sumlist2 '(1 4 3 6) 0) (define (mymap F L) (if (null? L) () (cons (F (first L)) (mymap F (rest L)) ))) (mymap (lambda(x) (* x x x)) '( 1 4 3 6)) (define (f x) {<li><a href="[x]"> <img src="[x]" width="100" /> </a> [x]</li> } ) (maymap f '(dew.jpg lines.jpg ayame.jpg tim.jpg glasses.jpg))

Week 12

  • Mon 3/30 - Introduction to PHP

    Today, we show how to use PHP to process servlet parameters and to get the current date, and we use a new web server that supports both scheme and php at http://popper.cs-i.brandeis.edu:8089/php

  • Wed 4/1
  • Thu 4/3

Week 13

  • Mon 4/6
  • Wed 4/8
  • Thu 4/9 SPRING BREAK

Week 14

  • Mon 4/13 SPRING BREAK
  • Wed 4/15 SPRING BREAK
  • Thu 4/16 SPRING BREAK

Week 15

  • Mon 4/20
  • Wed 4/22
  • Thu 4/23

Week 16

  • Mon 4/27
  • Wed 4/29
  • Thu 4/30 STUDY DAY

Finals Week

  • Mon 5/4/09: 9:15 am - 12:15 pm in Gzang 121

    Notes: the exam will be open book, but you will not be able to use any electronic devices (phones, calculators, computers, ...). You will be asked to write webpages and servlets and SQL queries and you will be asked to trace the evolution of Scheme processes. Here are some links to Final Exams from previous years. They contain some additional material that we haven't covered as we have gone deeper into web programming this year..

    • Final Exam from Spr08 (PDF) but skip problem I
      Answers:
      (use View->PageSource to see the underlying HTML and CSS).
    • Part III of Practice Final from CS2a/Aut06 (HTML)
    • Parts II and V of the Final Exam from CS2a/Aut03 (HTML)

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.0 Generic License