Contents:
Many students find it more convenient to use their own computers rather than the machines in the UW CSE instructional labs in the basement of the Allen Center. But the labs already have all the necessary software for CSE 331 installed and configured correctly. While you are welcome to use your own machines and the staff will help to an extent that is feasible for us, it can be difficult to predict and debug every installation/configuration problem.
In the end, the staff, given our limited time, may have to advise you to use the department resources if you are having too much trouble installing your own software. Helping with configuration on your own machine is lower priority than helping students with homework questions, getting grading done, etc. We probably cannot help with software other than Eclipse and the other tools used in the course.
Note that no matter where you work, make sure you follow these instructions to ensure that your assignment is properly submitted. Also, be sure to do this enough in advance of deadlines to avoid issues.
These are the principal options for working on your assignments:
We highly recommend that you start by uninstalling Java from your machine. If you do not, you will usually end up with multiple versions of Java installed on your machine and Eclipse or IntelliJ is can easily to choose the wrong one to use for compiling and running your programs. If you start by uninstalling all versions of Java from your machine, then you will avoid these problems.
Once Java has been uninstalled from your computer, go to this page to download the correct version.
You want to download Oracle's JDK for Java 11 from their web site. The JDK includes both the runtime and the developer tools like the compiler and javadoc. The JRE, on the other hand, includes only the runtime, so make sure you get the JDK. (If you install the wrong version or the JRE instead of the JDK, uninstall it before installing the correct version.)
The Eclipse project produces several different versions of the environment. The one you should get for CSE 331 is the “Eclipse IDE for Java Developer”. The most recent version is Photon. However, if you have any problems, you can instead use the earlier Oxygen version, which has been used dependably both other students.
You can simply download Eclipse and unzip it into a directory. However, on Windows, we recommend that you use the installer, which is available via the "Eclipse Installer" link on the pages linked to above.
We recommend installing Eclipse at a path that contains no spaces, such as C:\eclipse, as we have had problems in the past with spaces in path names for some of the build tools.
You can download IntelliJ at this page. Our instructions were tested on version "2018.3.3" (released Jan 9, 2019). If you find that the UI you see does not match that described in the instructions, then you may want to switch to that specific version.
attu is the name of an Instructional Workstation (IWS) Linux machine. You will occasionally need to log into this machine. How you log into attu depends on whether you are starting from a Linux machine or a Windows machine.
ssh YourCSENetID@attu.cs.washington.edu
Use the same password you use to login to the Linux machines in the Allen Center software labs.
Note for those who are new to the command line): When you try to type passwords in the command line, you may be alarmed that you can't see any text entered. To protect your password your typing simply isn't being shown. Just type your password as normal and press enter.
If you are using the Linux machines in an Allen Center software lab, you can alternatively use a shorter version of the command:
ssh attu
This works because the username defaults to the username you are currently logged in with and the target domain defaults to the domain of the machine you are connecting from.
In either case, your username is your CSENetID, and your password is the same one you use to login to the Linux machines in the Allen Center software labs.
The first time you connecting to attu from a given machine, you will receive a server authenticity warning like this:
The authenticity of host 'attu.cs.washington.edu (128.208.1.139)' can't be established.
Along with the warning, the SSH client will display the RSA key fingerprint of the remote host so that you can verify the host's identity. It is safe to say "yes" to continue connecting. When you connect, SSH will cache the host key in order to automatically verify the remote host's identity in the future.
If you only want to transfer files between your CSE account and your home machine, you can use scp ("secure copy"). For CSE 331, you should rarely, if ever, need to manually transfer files. All your code and other homework materials will be in your git repository, allowing you to automatically and safely synchronize your work across machines. We provide information about scp as a reference for your general knowledge.
On a Mac or Linux machine, you can run scp at the command line. Run man
scp
for documentation on this command. If you prefer a graphical
interface or if you are using Windows, you can install a
file transfer
program such as WinSCP. Most of the directions above for establishing a
remote connection via ssh also apply to scp.