This is the home page for the java track of CS 11. This information is for the spring 2004 term.
You must have a CS cluster account to submit assignments (an ITS or UGCS cluster account is not acceptable). If you don't have one, go to this page and get one. You need to be at least somewhat familiar with Unix as well; if you aren't then you can read this tutorial at ITS.
However, feel free to drop in to my office at any time. I'm unlikely to be in in the mornings, but I'm often around fairly late at night. If you need to meet with me outside of office hours, send me email and we'll arrange a meeting.
You will need card access to the basement of Jorgensen (first floor is not sufficient). If you haven't already given me your Caltech UID number (on the signup sheet or by email), email me your UID number and I'll arrange this. If you wrote it on the signup sheet it shouldn't be necessary. If all else fails, knock on the window.
Minilectures will typically last about half an hour to 45 minutes, but may go longer depending on the needs of the class. Attendance is not optional at these lectures, due to the breadth of material that we will be covering. What "not optional" means is that if you don't show up, you do so at your own risk.
In special cases, I may grant extensions on homework to individuals in special circumstances. The duration of the extension will depend on how compelling the reason for the extension is.
All assignments must be completed in order to pass the course, regardless of the numerical grade you get. If you're heading for an F, I will encourage you to drop the course so as not to hurt your academic record. If you have more than two assignments that haven't been completed satisfactorily by the time I have to submit the grades, you will get an F. If you have only one or two incomplete assignments I may give you an E instead, but you will have to complete the assignments as soon as possible.
~/cs11. Under that directory, make a new subdirectory called
java. Put the files for each week's assignments in a separate subdirectory of this directory called
lab2, etc. I will collect the assignments on the day that they're due. If your assignment is not ready, let me know by email and also let me know when it's ready to be graded. I'll send you grades and comments by email.
//// THIS IS ONE OF MY COMMENTS (ALL UPPER CASE, 4 SLASHES AT LEFT).Please don't write your own comments in this style (at least for the duration of this course). For style (code formatting) issues I will sometimes identify the problem via a tag that can be looked up in the java style guide. An example might be:
//// STYLE: [STMTS_ON_LINE] i = 1; j = 2; k = 3;which says to look in the style guide for the style violation called [STMTS_ON_LINE]. If you do that you'll see that I don't like to see more than one statement on a line. Poor code formatting is so common that this notation saves me a lot of work, as well as forces you to read the style guide. In addition, there is also a java style checking program which you will use to check the style of your code. This will give you instant feedback in a way that I can't, but it won't catch all style violations. Compared to most instructors, I am very picky about code formatting, so please use the style checker; it'll save you a lot of time.
lab1 lab2 lab3 lab4 lab5 lab6 lab7 lab8 assigned/due 4-5/4-12 4-12/4-19 4-19/4-26 4-27/5-4 5-4/5-11 5-12/5-19 5-21/5-28 5-28/6-4 Travis Bannerman (trock@its) Barrett Heyneman (heyneman@its) Eric Kelsic (kelsic@its) Kathleen Kiernan (kiernan@its) Jason Mitchell (jemitch@its)
This book, by the authors of java, is a fairly concise, complete, and readable description of the java language. It will be the textbook and reference for the track. You are not required to buy it, and strictly speaking you don't absolutely need it, but sooner or later you will find it very useful. There are an incredible number of books on java available, but this one is hard to beat.