This class has scheduled times for you meet in a computer lab with a teaching assistant. Each lab will have a specific assignment which is posted on the class web page several days before the lab meets.
There will be an individual lab assignment, which each student is supposed to do without help from other students. It will be posted on the class web page. It will be due the day before the lab session on Monday. You ARE encouraged to get help from the instructor and any of the TAs.
The Team Problems
Near the start of the semester, you will be assigned to a team. These people will be in your section and will be working on the same problems as you are. You should read the problem before the lab period. You may not get it solved, but at least you will know what the problem is and what questions you need to ask. You will definitely learn more in the lab if you read the assignment before the lab. The team lab work will be done with your team members cooperatively, during the lab period. ONE copy of the work will be turned in for each team. All team members will get the same grade for the lab work. This work will normally be submitted electronically.
NOTE: The main point of having lab meetings is to do design and programming yourself at a time when you can get help immediately, from your teammates and the TA and Dr. Keen. Having one team member do the problem ahead of time and bring it to turn in does not accomplish this task.
NOTE: Team Lab material can certainly appear on tests later. This means that ALL members of a team should be sure to UNDERSTAND the Team Lab, instead of one person relying on another person to do the work.
It is important to communicate frequently with your lab partners. It is the joint responsibility of all partners to make sure the work is turned in on time. Everyone in the team is penalized if this is not done.
The team is required to discuss the problem assigned. Then each student has a choice of:
At the end of the lab, the team has to decide which one of the solutions produced is turned in as THE team result. It is highly recommended that the team has tested the solution to make sure it works before turning it in!
Attendance will be taken at all lab periods. It is very important that everyone be there! Regular practice is an important part of gaining any skill. If you are not present at lab, you do NOT get credit for the work your team turns in that day!
Communication between team members is VERY important! If you have trouble getting in touch with your team mates talk to them about it. Then talk to your TA about it. Team members can and will be reassigned. People who try to get by without doing the work will be assigned to a team by themselves and have to do all the work themselves!
Each team lab assignment's work is officially due at the deadline given by the lab instructor, usually near the end of the lab period. and your team can turn it in then via the submit link.
You are expected to come to lab sessions on time. If you are not there, you are not helping your team. If you show up more than 20 minutes late to a lab, you will not be allowed to sign the attendance sheet and you will not get the team points for that day. We will listen to reasons for lateness. If the lateness is not chronic, some adjustments can be made. But if the lateness happens repeatedly no points will be given. It would still make sense to attend, you may learn something useful in the short time you are in lab.
Students are expected to focus on the lab work and the team. You should be asking questions or explaining something to your team mates or listening to a short talk about a topic. If your TA notices that you are distracting yourself and others in lab by spending time on non-class activities, they will ask you to stop and work with your team. If you do not go back to working with your team, you will lose all points on that day's work. If this is repeated, you may lose your team and have to do the work by yourself!
One of the main purposes of the lab sessions is for you to get experience with writing code, testing code, talking to others about the process. If one member of the team says "Oh no problem, I've already got it done", this does NOT benefit the other members of the team. The team will be required to rewrite the solution. You cannot just can through a screenful of code and "get it". It is not the same thing as actually thinking and writing a program!
There will be some Lab Tests given during the semester - see the schedule for the dates. These will allow you to demonstrate that you can generate a working program from a problem statement in 50 minutes. You can use any kind of text reference you wish. It is open note, open book. You are NOT allowed to communicate with anyone during the test, either orally or electronically. These will be individual, NOT team tests. Each lab test is worth 7% of your overall grade. If you miss a lab test, the policy for obtaining a makeup is here.