Reference Material
- Unix Tutorial
- Emacs Quick Reference
- TA Hours
- The CS Honor Code and Computer Usage Policy
- The College Proxy Server Instructions
- Duane's Incredibly Brief Introductions to Unix and Emacs
- lldb Quick Reference
- C++ 11 documentation
- Python 3 documentation
- The Unix iCompile C++ build system consists of this file: icompile, which must have the execute bit set to use it, and the contents of this directory, which must be named "ice": ice.
Configuring Terminal
- From Terminal → Preferences → Settings → Keyboard, check the "Option Sends Meta" box. This allows you to use the Alt/Option key as Meta in Emacs.
- Add the following lines to
~/.local_bashrc
, so that you will always know the machine and directory that you are in:PS1="\h:\w -> " export PS1Configuring iCompile
Ensure that the following lines appear in your
~/.local_bashrc
file so that you can use iCompile (note that it contains "cs371", not "cs136"):# Access iCompile script export PATH=/usr/mac-cs-local/share/cs371/G3D/bin:$PATH # Set file permissions to private by default umask 077The Turnin Folder
Submit your work by mounting the cs136/Turnin folder as Guest and dragging a complete, properly named folder onto it before the deadline.
If something does go wrong with the submission process, e-mail morgan@cs.williams.edu and mary@cs.williams.edu immediately, do not panic, do not attempt to submit your work in an alternative way, and do not work past the deadline. Specifically, if something goes wrong, do not e-mail your work to the professor or the TAs, leave it on a USB disk in a mailbox, or put printouts in mailboxes. See the course policies and honor code statement in the syllabus for details.
- Name your submission folder
nn-username-hw-rr
for homework andnn-username-lab-rr
for programming labs, where:For example, if you log in with then name
nn
is the two-digit lab numberrr
is the two-digit revision numberusername
is the name that you logged into the CS department Mac withmsm1
, then you would submit a folder named00-msm1-hw-00
for the first homework assignment. If you then discovered an error in your solution and wished to overwrite it, you would submit a new folder named00-msm1-hw-01
.- Remove any extraneous or generated files from your folder before submitting it. Homework may only contain .txt, .pdf, and .jpg files (the last are handy if you do your homework by hand and scan it at Schow or using a mobile phone camera). Projects should contain only necessary source files, documentation, and data. (e.g., run
icompile --clean
and delete any files ending in~
or.pyc
)- If you performed bonus work, have known bugs in your solution, or wish to bring other elements of it to our attention specially, explain that in a plain text file named
readme.txt
in your solution directory.- From the Finder menu bar, select the "Go" menu
- Select "Connect to Server" from the Go menu
- Type "afp://fuji.cs.williams.edu/" in the Server Address text box.
- (Optionally push the "+" button to save this choice)
- Push "Ok"
- In the new dialog, select "Guest" and press "Ok". If you log in as yourself, then I will not be able to access and grade your files.
- Select the "Courses" volume and press "Ok".
- In Finder, open the
cs136/Turnin
folder.- Copy your project folder into
Turnin
. You will not be able to see it once dropped. The original should remain on your own CS account (don't delete it--you'll want to look back at your work later!)- If you need to update your solution, increment the revision number and re-upload.
Our scripts will only download the highest-numbered revision that was submitted before the deadline; all other folders on the server are deleted each week.
This process is a specification, which contains the kind of details that a programmer must attend to all of the time. Part of the assignment is following this process correctly, which will affect your grade. Obviously, it is also important to submit work correctly so that I can evaluate and return it to you in a timely fashion and to be fair to your peers.