Interactions are ExpectedEngineering is not a solitary profession. To maximize your chances of success in 40 and beyond, I have designed a number of interactive experiences into the class:
- Lecturing is at best moderately effective at helping students develop new skills. Also, typical people cannot devote sustained attention to a continuous 75-minute lecture. Class time will therefore be divided between lecture and small-group activites designed to foster active, collaborative learning. Although nobody is expected to attend every class, you must normally come to class and participate in small-group activities.
- In the real world, computer programming is rarely a solitary activity. The solitary programmer is often alienated and unproductive, and his or her output has repeatedly been shown to be inferior to the work produced by programmers working in groups. COMP 40 will therefore provide you with some instruction in and opportunity to practice pair programming (more at Wikipedia). Every student will be expected to use pair programming for most assignments. By the terms of our accreditation, you must use pair programming for at least two assignments. And no single pair may do more than three assignments together. At need, course staff will help students form pairs.
Spontaneous interactions may be welcome or unwelcome depending on the interaction:
- A particularly useful form of interaction is the question asked in class. Questions are always welcome; if you have a question, chances are other people in class have a similar question. Ask it! One question that is always legitimate is "why are we doing this?"
- A particularly pernicious form of interaction is the telephone call. During class, please put your cell phone on vibrate. If you must take a call, please leave the classroom immediately and do not return until you have finished your phone call.
Using the library and the InternetYou may look in the library (including the Internet, etc.) for ideas on how to solve homework problems, just as you may discuss problems with your classmates. Library and Internet sources must be acknowledged when you submit your homework, even if you find little or nothing useful.
Some students rely heavily on the external sources. Although this is permitted within the letter of the rules, I discourage it. I assign homework problems not because I want to know the answers, but because doing homework is the best way for you to learn. While library skills are important in our profession, the homework in this course is designed to develop other skills that are even more important. Remember, you will not have the library with you when you go on job interviews! Solutions to homeworks will not be placed on the Web until the last assignment is turned in or until the 48-hour deadline has passed. Students turning homework in on time may have solutions sent to them by sending a request to the course staff.class mailing list, which is
email@example.com. You can register online (or if you drop the course, you can remove yourself), at
Please do not email the course staff directly to their personal accounts.
HandoutsAll class handouts should be available from the class web page.
Computer software and accountsThe class will be run using Red Hat Enterprise 64-bit Linux, as installed on the departmental servers and in the laboratory in Halligan 118. For remote access use
linux.cs.tufts.edu. For some assignments you will need to use machines in Halligan 118; you can get there from the servers via
xstands for the letter
c, and so on. Please be considerate of others using the machine at the console; for information about who may be using a machine, try the who command.