[CS Dept., U Chicago] Courses


CMSC 16100: Honors Introduction to Computer Programming I (Autumn 2003)

Computing Resources

Access



Computer Systems

CS Computing Services, General Information

CS Login Privileges

Computer Systems for the Class

All of the computing work for this course is designed to be performed and evaluated on the Computer Science Department's Linux systems. You may use any computing resources to which you enjoy legitimate access. But it is your sole responsibiliy to hand in your assignments in the form required for the class, and to make sure that they work on the CS Department's Linux systems.

Ryerson 257 Laboratory

I recommend that you work as much as possible in Ryerson 257. This is an informal work area used by students in several CS courses with substantial UNIX/Linux assignments. You will have the advantage of working with other students in the class, making discussion particularly easy. You will be right outside of my private office in Ryerson 257A, so we can yell at each other conveniently.

Please keep the lab clean. Ryerson 257's lab status is completely informal, and the university does not provide the sort of support appropriate to a public area. So you users must take care of it yourselves.

The Ryerson 257 is currently being reorganized to include office space for about 4 Ph.D. students. The lab is understood to be a slightly noisy area, so you may discuss work freely, but please be considerate of the Ph.D. students' needs for continuous work space. I am trying to get the space organized so that it is clear which areas and computers are reserved and which are up for grabs. All of the Ph.D. students are in the west (inner) half of the room. So the workstations in the east (outer) half are definitely available, and some of those in the west half as well. I welcome any volunteer efforts to improve the organization.

The lab is potentially accessible 24 by 7. But, since there is no formal supervision, access after 6:00 PM and on weekends depends on the presence of someone in the room to open the door. I have no current prospects for arranging reliable supervised access.

Linux hosts
Printer
To use this printer, set the environment variable PRINTER to ry257 (export PRINTER=ry257 or setenv PRINTER ry257, depending on which shell you use), or provided ry257 as an argument to your print command.
Regenstein Laboratory

The Computer Science Instructional Computing Laboratories just moved from Ryerson Annex to the Regenstein Library. This lab is supervised formally, and mantains regular hours.

Linux hosts
Remote Access

You may work remotely (e.g., from your home PC) on the Linux stations in Ryerson 257 and Regenstein. You must use ssh instead of telnet or rlogin. ssh is more secure, more efficient, and it provides remote display of X applications in a secure and efficient way (so you don't have to worry about xhost or setenv etc.) Each host is addressed by the hostname given above, followed by .cs.uchicago.edu (e.g., union.cs.uchicago.edu).

Software

Programming Language Compilers and Interpreters

You will need to use the following software for your homework assignments:

DrScheme
This is a great educational and professional implementation of Scheme. You are welcome to try out other implementations, such as MIT Scheme, but I am only interested in homework that runs on the installation of DrScheme in the CS Department's Linux systems.

Utilities

There is a handful of software external to DrScheme that will be used in this class. All required knowledge will be covered in the tutorial sessions offered in Reg. Library. Note that the use of an external text editing program, such as Emacs, it not a vital part of this course as DrScheme contains its own internal editing system. However, if you are so inclined, it may be a good time to start getting used to using other editing programs, as they will be vital later on in your computer science education.

UNIX/Linux shell:
You can't do UNIX/Linux without a shell --- the interactive system that processes your commands. I prefer bash, but if you are accustomed to another shell, stick with it.

Version control:
Learn how to use RCS to keep track of drafts along the way to final work, both for programs and text. Or you may use the more advanced CVS system.

Web browser:
To read the documents that I've prepared for you, and participate in the online discussion. I recommend Mozilla or Netscape on graphics stations, Lynx on character terminals.

Mail:
mail or pine are available on the Linux machines, mail is installed as /usr/bin/mail and pine is installed as usr/local/bin/pine.

Online manual:
Of course, you can type the man command to the shell, but I recommend Xman, running in its own window, whenever you are on a graphics terminal. The command is //usr/openwin/bin/xman on the classes account and /usr/X1186/bin/xman on the Linux machines. A lot of documentation is moving to the texinfo format. Use the info command, or invoke texinfo from Emacs.


Valid HTML 4.0!


Last modified: Thu Oct 2 3:22:23 CDT 2003