CSSE290 – Introduction to Web Programming

Winter, 2014-15 Schedule Overview    updated Wed Feb 25 at 8:39:31 AM

All non-Moodle web pages for the course are available from This index page.

This schedule page be updated regularly throughout the term. I’ll often update daily schedules and slides just before class.

Preparation is to be completed before the class session.

Unless otherwise noted, all assignments are due at 11:59 PM on the day indicated. I recommend that you complete them before midnight the day before, but some students believe that their best work times are after midnight.


Session quick links:  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Week Session Preparation Due Topics Resources
1

1

Mon Dec 1

  • By the end of class (We'll do most of these together):
    • Put your name on the seating chart. Please sit in the same location for the next several class sessions, to assist me with learning student names
    • Sign and submit the contract (you will receive a printed copy in class)
    • Submit your Codecademy public link to this form
    • Install the Aptana Studio 3 plug-in for Eclipse
    • Decide which Codecademy course you will do first (you can change your mind at any time)
  • Course introduction
  • Roll Call
  • Establish in-class "lab partners"
  • Install Aptana Studio 3 plug-in
  • Networks, the web, and HTTP
  • HTML introduction
    • Page structure(head, body)
    • p tag
    • heading tags
    • br tag
    • em and strong tags
    • ul, ol, and li tags
1

2

Thu Dec 4

  • Review the Syllabus, bring questions to class.
  • WSB (that stands for Web Step Book) Skim Chapter 1
  • WSB Chapter 2. Read it carefully.
  • WSB §3.1-3.2
  • A lot of reading, but reading and Codecademy are about all you have to do for this class for the first three days of this week.
  • (due at beginning of class) Your Codecademy point total should be at least 50
  • Simple use of Aptana Studio
  • More HTML
    • Block vs. inline elements
    • Attributes and values
    • Elements with no content and no closing tag
    • hr tag
    • img tag
    • HTML character entities
    • HTML Comments
    • HTML standards
    • dl, dt, and dd tags
    • q and blockquote tags
    • HTML-encoding text that contains special characters
    • del and ins tage
    • abbr and code tags
    • sup and sub tags
    • pre tag
    • meta tag
    • favicon
  • Exercises on Basic HTML
  • CSS introduction
    • How not to change a page's appearance
    • Three ways to incorporate CSS code
    • Anatomy of a style rule
    • CSS color properties
    • CSS font properties
1

3

Fri Dec 5

  • WSB sections:
    • §3.3-3.4 Complex selectors
    • §4.1-4.2 Intro to Page Layout
    • Continue working on Codecademy
    • If you do not have an FTP client (such as SecureFX or fileZilla, install one.
      I will demonstrate SecureFX; you can install it from Rose-Hulman's Software site on DFS.
    • You will need to know your CSSE password for this session.
      If you do not know it, email helpdesk@csse.rose-hulman.edu.
 
  • Where to put your code for turnin (on wwwuser.csse.rose-hulman.edu web site)
  • HTML table-related elements
  • Exercises 1 and 1.5
  • More CSS
    • One property, multiple selectors
    • Multiple rules affecting one element
    • Context Selectors
    • CSS comments
  • Exercises 1.5 and 2
2

4

Mon Dec 8

  • §4.3
 
  • Selectors and box properties
2

5

Thu Dec 11

  • §4.4-4.5
  • (before the beginning of today's class) Your Codecademy point total should be at least 100
  • HW 1 (due at 11:59 PM Thursday).
  • More on selectors
  • Box properties
  • Page Layout
  • Floating Elements
  • Size and position
2

6

Fri Dec 12

  • §5.1, 5.2
  • (See Day 5 announcements for link and instructions) Download and install XAMPP, if you do not already have a web server that you like on your computer.
 
  • Start local server and access an HTML file from there.
  • Configure Aptana Studio to run PHP programs using the local server server.
  • Serverside basics, simple PHP programs
  • Embedded PHP
  • print
  • Operators, variables, types, comments, loops, if, math functions
  • Interpreted strings, string functions
  • declaring and calling functions
  • PHP expression blocks
  • Live coding together: Pascal's Triangle
3

7

Mon Dec 15

  • §5.3, 5.4, 5.5
  • HW 2 (due at 11:59 on Wednesday).
  • HW 2 zip file containing starting code and images.
  • Optional but strongly suggested: Install the Xdebug PHP add-on on your local server. I followed their "let us tell you how to install it" instructions for Windows, and it seemed to work great. There is a link to a different explanation in today's Resources column.
  • PHP: More on arrays, strings, functions
  • Working with files and directories
  • Parameters in the URL, $_GET
  • Use Xdebug to help you debug PHP code
3

8

Thu Dec 18

  • §6.1 - 6.4
  • (before the beginning of today's class) Your Codecademy point total should be at least 150
  • HW2 due at 11:59 PM Wednesday (i.e. yesterday)
  • PHP Objects (bare bones discussion)
  • HTML forms
  • GET and Post Requests
3

9

Fri Dec 19

   
  • Exam 1 in class.
4

10

Mon Jan 5

  • Chapter 6
 
  • More on Forms, POST
  • Uploading files
  • Debugging PHP
4

11

Thu Jan 8

  • Chapter 7
  • Come to class prepared to discuss what you read in Chapter 7.
  • See the announcement on Piazza for details of how you'll show you are prepared (short in-class quiz Thursday and submission to a Moodle drop box by Wednesday at 11:59).
  • (before the beginning of today's class) Your Codecademy point total should be at least 180
  • HW 3 (due at 11:59 PM).
  • HW 3 zip file containing movies Zip file and images.
  • See the last note under "preparation."
  • First class hour: work time. If both you and your partner have finished all of the following programs, you can come only for the second half of the class
    • 99 bottles (day 7)
    • Count files(day 7)
    • Pascal triangle with colors (day 8)
    • Message board (day 10)
  • Second class hour: Web Design: A short quiz followed by small group discussion (Chapter 7). You may be asked to lead a group
  • Come prepared to discuss what our textbook authors say about web design, and perhaps your own opinions as well.
4

12

Fri Jan 9

  • §8.1 - 8.2
 
  • JavaScript intro
  • DOM intro
5

13

Mon Jan 12

  • §8.3 - 8.4
 
  • No class meeting. This should leave you time to work on the following:
  • After reading the preparation , work through the first four levels of the "discover devtools" course at http://discover-devtools.codeschool.com. Try the challenge for each section. A few of the challenges deal with JSON and jQuery, which we will not have discussed yet. Feel free to try those or skip them.
5

14

Thu Jan 15

  • §8.5 - 9.1
  • Look carefully at the Hangman example from Section 8.5.
    Textbook code
  • (before the beginning of today's class) Your Codecademy point total should be at least 210
  • More JavaScript syntax
  • DOM intro
  • Details of JavaScript functions
  • More on working with DOM objects
  • 15-puzzle example
5

15

Fri Jan 16

  • §9.2 - 9.4, 11.1
 
  • Optional student "sales pitches" for project ideas.
  • Finish 15-puzzle
  • DOM de DOM DOM
  • (If time) Begin new in-class exercise (highlighter)
  • Preview of next term's Multimedia course.
6

16

Mon Jan 19

  • Chapter 10
  • Prototype
  • In-class exercise (search highlighter)
6

17

Thu Jan 22

  • TBA: non-textbook source on JQuery
  • (before the beginning of today's class) Your Codecademy point total should be at least 240
  • Prototype and Scriptaculous
  • work on SearchHighlighter
6

18

Fri Jan 23

   
  • Exam 2 in class
 
7

19

Mon Jan 26

  • Chapter 11
  • § 12.1
  • HW5 due Wednesday at 11:59 PM.
    See the link from today's Resources.
  • Resource folder Includes empty PHP file with the correct name, plus folder containing puzzle files.
  • More about JavaScript events
  • Mouse Events example: Moving squares
  • Ajax intro
7

20

Thu Jan 29

  • § 12.1-2
  • (before the beginning of today's class) Your Codecademy point total should be at least 270
  • More Ajax
  • Transcript example, with abstraction
7

21

Fri Jan 30

  • §12.3-4
 
  • More AJAX, XML, JSON
  • Ajax live-coding examples
8

22

Mon Feb 2

  • §13.1
 
  • Relational databases intro
  • Get set up for mysql use on your computer
  • Single-table SQL queries
  • tables and SELECT
  • DISTINCT, WHERE, LIKE, ORDER BY, LIMIT
8

23

Thu Feb 5

  • sect; 13.1 - 13.3
  • (before the beginning of today's class) Your Codecademy point total should be at least 300
  • Using mysql with PHP.
  • MORE SQL query ingredients: COUNT, AVG, GROUP BY
8

24

Fri Feb 6

  • § 13.3 - 13.4
  • Multi-table queries
  • Show me your project design
9

25

Mon Feb 9

  • § 13.5
 
  • Cookies and sessions
  • Project work time
9

26

Thu Feb 12

  • § 14.1 - 14.3
 
  • More cookies and sessions
  • (If there is time) Work time
9

27

Fri Feb 13

   
  • Project work time
10

28

Mon Feb 16

  • § 15.1- 15.2
  • HW7 due Tuesday at 11:59 PM.
    Has been updated for Winter, 2014-15
  • HW7 folder
  • HW7/Project work time
10

29

Thu Feb 19

   
  • Exam 3
    • Take-home portion available 11:00 AM Wednesday, due 8:00 AM Thursday.
      Extended until 8:00 AM Friday if you come to class on time Thursday.
    • Brief in-class part during Thursday's class time
    • No communication with other students about the course while the take-home part is available
      Exception: After you have done your final submission of the exam, you may communicate with project team members who have also done their final submission of the exam.
  • Security - Guest lecture by Sid Stamm
  • In-class portion of Exam 3
10

30

Fri Feb 20

 
  • Project is due 18 hours before our scheduled Final Exam time.
  • No final exam; project demos will happen during the scheduled exam time; attendance is required.
  • Project Work time: Your team should decide whether to attend).
  • Course evaluation:
    If 90% (all but two students) in a section complete the eval, everyone in that section gets 5 extra credit exam points)
  • Project is due at 11:59 PM Wednesday of Finals Week, even if a different document says it is due at an earlier time.
  • Presentation schedule