Working on the CS3 labs at home

May of you have expressed a desire to work at home. Although we want you to be present as much as possible at your regular lab session, you can certainly work at home outside of those times as necessary.

Viewing Lab Materials

To view the lab materials, you will need the Firefox browser, freely available here. The latest version is 2.0. You might have some success with Internet Explorer, but we have also seen that it doesn't work well.

Just as you do in lab, start up your browser, go to, and log in with your ucwise login and password.

Using Scheme

A version of scheme that we use in this course can be installed from You want to download a precompiled binary version for your operating system. Versions are available for Macintoshes, Windows computers, and Linux computers. When you are done, you should have a setup much like we have made available in lab: emacs with scheme running in a split screen. (We use the stk-simply setup in CS3).

Remember, the files that you work on in lab won't be automatically available to you at your home computer, and visa versa. You will need to manually transfer those files (see below).

There are many other scheme development environments available, although you will have to configure with the extensions we use in this course. If you want to use another, talk to your instructor about how to get it installed.

Moving files between your home computer and the lab server

In order to work at home, you will most likely need to transfer files between the lab and your home computers. For instance, if you are finishing up a homework at home, you will need to get the files over to the lab servers in order to submit them electronically. (The transfering and submitting can happen over the internet, so you don't have to be physically present in the lab).

There are two main ways to go about doing this: connecting the two computers directly over the internet, or using some other service to store the files as you move them from one to the other.

Connecting Directly over the Internet

The most common software you can use to connect directly is SSH, which you will install on your home computer. Get SSH here. Instructions on how to use SSH to submit assignments and to transfer files are here.

The main drawback to this method is that it will most likely only work when you are at your home computer and trying to connect to the lab computers remotely. The servers we use in lab are both available 24 hours and designed to be connected to remotely, unlike most home computers. So, if you are in lab and realize that something you need is only at home, you won't be able to get it.

Another way is to use Exceed to make it so that the Lab server uses your home machine as its display. The drawback is that this can be quite slow, but you can not only transfer files but can actually use Emacs and Firefox from the Lab server, storing files on the server while working at home. Also, this is a technically complicated path to take, so novices should avoid it. Exceed is available here.

Storing the files somewhere in order to move them

You could use an internet-based storage service, like you will need to manually upload and download files through your browser each time you want to transfer.

You could email the files to your self from one machine, and use an email client on the other machine to read and save the files. Using Calmail via firefox works fine (browsing for attachments on the lab machines is a lot like doing it on your home computer).

You could also use a USB drive to store files and retrieve files. You probably know how to do this on your home computer. In lab, it is difficult to actually insert the drive in the lab machines and get the files on or off. Files on a usb drive will show up, in the lab machines, in the directory /tmp/SUNWut/mnt/$USER/, where $USER is your instructional login name.

The disadvantage to all of these additional solution is that you need to remember to upload the files when you are done working (whether at home or in the lab) in order to be able to get the files when you start working in the other location.

Additional information

Additional instructions are written up at

Written spring 2007, last updated: summer 2007.