home  |  homework  |  labs


Welcome to Computer Science 102, aka CMSC 10200-1.

In this course, you will learn how to write Java programs, how to write Java programs for the world wide web, how to build databases, and how to build database-driven websites with Java and databases.

The course lectures will be given Tuesdays and Thursdays from 3:00-4:20 in Ryerson 276. Labs will be given Thursdays from 4:30 - 5:50 in the MacLab (downstairs at the Regenstein). Labs are mandatory.

Instructor Data

who what where
(office hrs location)
(office hrs)
Kenneth Harris instructor 251 Ryerson MWF, 1-2 and by appointment kaharris

The high-level outline for the course is

Week 1Java: introduction: classes & objects, types
Week 2Java: functions, methods, conditionals
Week 3Java: JSP
Week 4Java: arrays, loops
Week 5Java: subtyping, interfaces, extensions / Java test
Week 6Databases: relational databases
Week 7Databases: SQL / SQL quiz
Week 8Java: collections, enums, type parameters
Week 9curricular slush and/or special topics (GUIs, perhaps)
Week 10final project presentations

You will be responsible for

Lab attendance is mandatory. Any absences for particular labs must be arranged ahead of time or else the absentee will earn no credit.

There will be no final exam.

Your grade will be computed roughly according to the following scheme: homeworks 30%, labs 30%, midterm and quiz 20%, final project 20%.

Course Materials

The primary text of this course will be the content of the lectures, and the course notes I post to this website to supplement them.

The following optional reference book is for sale at the seminary co-op:

Java in a Nutshell, 5th Edition, David Flanagan.
Another good book is
Java Precisely, Second Edition, Peter Sestoft
but be forewarned: this book is not intended for beginners; it assumes that you already know how to program. It does however have the following advantages: it is comprehensive, it is concise, and it is inexpensive.