CS111 Spring 2002 Labs
Please click here to see the list of labs.
All labs are held in SCI E101.
Lab Instructor and TAs:
Instructor:
Elena Machkasova (please call me Elena)
Office: SCI E127, Phone: X3172
E-mail: emachkas@wellesley.edu
Office hours: Tue. 3:30-4:30pm, Thu. 10am-12noon,
or by appointment.
Teaching Assistants:
10:30 No TA
2:15 Nandita Ahmed
4:10 Chloe Schulze
Please see the CS111 home page for the contact information.
Registering for Labs
You must register for a lab section in addition to a lecture section of CS111. If the section you would like to get into does not have any more room, please register for a section that's available, and then try to find someone whom you can switch with. The conference CS111-S02 Enrollments
is set up to make such arrangements. After you have made the arrangements, please bring both drop/add forms (yours and the person's with whom you are switching) to me to sign. Each student in the lab must have their own machine, so we cannot accommodate more than 15 students in a lab. If you need to attend a different section on a specific day, please send me an e-mail in advance to see if there is a space available.
A Few Words About Labs
2-hour weekly labs are a part of CS111 course. Labs give hands-on experience with Java programming and problem solving. Labs provide a unique opportunity for you to ask questions (and get answers!) about problems that you might run into in writing or debugging a program or designing an algorithm. Labs also provide in depth discussion of important programming concepts and strategies. If you don't understand a concept, or would like to see an example, or want to understand an example given in class in more detail, the lab is a good place to ask.
Plan of a typical lab:
- A brief overview of the relevant lecture material. Occasionally we will introduce a new (i.e. not covered in a lecture) material in a lab. I'll be happy to answer all your questions about the topic during the overview. This part of the lab should be very interactive.
- Instructions for the lab, possibly with an example of an exercise.
- Individual work on lab exercises. Please work at your own pace. It's OK if you don't finish all the exercises during the class time. The lab TA and I will be happy to assist you if you are having difficulties. However, first try to work out a solution independently, you will learn much more if you try to figure out things on your own. Occasionally I may interrrupt work on the exercises to address problems that several students have encountered if I feel that it will help everyone in the class.
A few rules:
- Even though labs are not graded, and therefore are not subject to the collaboration policy, it is to your benefit to work on lab programming exercises individually. It's OK for you to talk to each other, provided you are not distracting other students. And, of course, you can always ask me or the lab TA for help.
- The lab time is for lab exercises. If you have finished all the lab exercises early, you can work on your problem set, or you can leave early. It is not allowed to use lab machines for activities not related to the course (e-mail, instant messages, etc). Not only such students are wasting their own time, but they also distract other students. If I notice students using computers for activities unrelated to the course, I may ask them to leave.
Wednesday, January 30
Lab 1: Your first Java program. Also includes an
introduction to Fetch.
Wednesday, February 6
Lab 2: BuggleWorld, Java applets.
Wednesday, February 13
Lab 3: Java methods, JEMs.
Wednesday, February 20
Lab 4: Picture World, method that return values, invocation trees
Wednesday, February 27
Lab 5: Conditionals + Review for the midterm
Wednesday, March 6
Lab 6: Recursion, writing recursive methods in TurtleWorld.
Wednesday, March 13
Lab 7: Recursive methods that return values
Wednesday, March 27
Lab 8: String list methods
Wednesday, April 3
Lab 9: Iteration
Wednesday, April 17
Lab 10: Arrays and Vectors
Wednesday, April 24
Lab 11: Building your own objects, Java graphics
Friday May 3 and Monday May 6 (both dates optional)
Lab 12: Animation