CS 3110 Lab Guidelines

Labs are hands-on exercises designed to complement lecture: they review some material, go deeper into other material, and introduce new material. The hands-on experience you get in the labs is essential to mastering the content of 3110. The idea is that you work on a lab between the surrounding lectures. Since recitations also occur between lectures, they are a natural and encouraged place to ask questions about labs.

Working together is a great idea, and solving the lab exercises with a partner is strongly encouraged. Feel free to mix it up and change partners at any point. You may discuss your lab work with anyone in the course.

Difficulty. The lab exercises are annotated with a difficulty rating:

Some exercises are annotated "advanced" or "optional". It's possible we've misjudged the difficulty of a problem from time to time. Let us know if you think an annotation is off.

We highly recommend that you complete the non-optional, non-advanced, one and two star exercises for each lab before the next lecture occurs. Otherwise you risk falling behind in the course.

Solutions. Solutions to lab exercises will be posted, usually by the time the next lecture occurs. We provide solutions for the one through three star non-optional, non-advanced exercises. We warn you of the danger of looking at solutions before solving problems yourself. It's easy to convince yourself that the solution looks right, but it's hard to internalize a solution when you didn't come up with the idea yourself.

You may not post your solutions or repost our solutions anywhere, especially not in public repositories where they could be found by search engines. Some of these exercises have been used as homework and exam problems in the past, and some of them may again be used in the future.

Exams. Lab exercises are a good source of exam questions. A good way to study for an exam is to finish any exercises you haven't already completed, as well as to rework previously completed exercises. You might even discover better solutions when you revisit old exercises.