Course Information

Syllabus

A "syllabus" (from the Latin "list") is an academic document that outlines and summarizes the topics covered in an educational course. It is either written by a board or prepared by the instructor. Syllabi are usually linked to a college's official course description - that defines which topics are going to be taught and how these will count toward a degree.

download-icon.pngCSc 35 - Syllabus - Fall 2025 (PDF)

Working on Labs From Home

Installing a Virtual Private Network

So, the first step it to get the VPN software. The University uses GlobalProtect. So, installing it is a good idea for both Windows and Macintosh users. It really is quite cool. Please visit the following website. Find the GlobalProtect link.

Once you open the Global Protect, you will be prompted to enter the name of the virtual private server. Enter the following:

vpn.csus.edu

Connecting using Windows

To connect to the UNIX server, Windows users must download and install Telnet software. For this, you have two good options - and either will work. MobaXterm has far more features, and I recommend this application.

Once you have installed the software, you need to open a Secure Telnet connection (also known as SSH). Enter the following computer name.

coding3.ecs.csus.edu

Connecting using a Macintosh

Macintosh users, fortunately, don't need to install software. They simply need to open the Terminal Program (which is built-in to Mac-OS).

You will immediately see a UNIX prompt. Mac-OS is, in fact, a version of UNIX. Neat! Once at the prompt, type the following where username is your Saclink username. You might have to manually type "yes".

ssh username@coding1.ecs.csus.edu

Activity / Assignment Rules

  1. Discussion among students as to the general logic to solve a problem is allowed and encouraged. Likewise, I have no problem with students occasionally helping other students to find a particularly troublesome error in design or code.
  2. However, the design of an algorithm, and the coding of a program that implements that algorithm, must be the work of the student whose name appears on it. Do not cheat.
  3. Do not help others cheat. This means you cannot give your solution to another student or give them the pseudo-code on how to do it. For example, don't let students copy off your screen. In any case, both the student, that copied your solution, and you will receive a zero.
  4. Unless otherwise instructed (as, for example, team projects), all assignments are to be entirely your own work.
  5. You only can submit one solution - so make sure its correct!
  6. No activity or assignment may use AT&T assembly format. Any activity/assignment using it will receive a zero.

Downloading the Lab Files

Downloading the Library

This course uses a library object file. The library contains a large number of utility functions that will allow you to easily print integers, strings, and other useful tasks. But, to use the library, you first need to obtain it.

You need to use a UNIX command called "curl" (Copy from URL). Please type the following at the command-line and press the Enter Key. It will download the library from my website and save it to your account. Type the following verbatim! Note: those are o's, not zeroes.

curl devincook.com/csc/csc35.o > csc35.o

You can check that the file downloaded by typing ll (that's two lowercase L's) and pressing the Enter Key. You should see the library file listed. If should have 6,872 bytes. If it doesn't, you typed the command above incorrectly. You only have to do this once - not every lab.

Downloading the Submit Script

You also need to download the script you are going to use to submit your labs. Again, you only need to do this once – not every week.

curl devincook.com/csc/submit > submit

You can check that the file downloaded by typing ll (that's two lowercase L's) and pressing the Enter Key. You should see the library file listed. It should have 29,304 bytes. If it doesn't, you typed the command above incorrectly. Finally, we need to make that script work for you. So, please type the following:

chmod 500 submit