CPSC 221: Basic Algorithms and Data Structures
2014 Summer Term 1
Computing


Home Learning Goals Schedule Administration Readings Lab/Lecture Notes Assignments Computing
Working from Home

For access from home (or elsewhere), use XManager or another SSH client (with the -Y flag) to give you access. We recommend editing and compiling from the server using, e.g., gedit, jedit (cross-platform, since it's in Java!), or kate or the challenging but rewarding emacs or vim.

Two good servers to use are lulu.ugrad.cs.ubc.ca and annacis.ugrad.cs.ubc.ca (or any other Linux ugrad.cs.ubc.ca server).

If you really want to, you may try working from your own machine directly using an IDE like Notepad++, Eclipse, NetBeans, or Visual Studio. If you choose to do this, however, remember that you will be marked based on your program's compilation and performance on the ugrad servers, so use Xftp to upload your files and compile and test on the server!!!

g++ and UNIX

For the most part, we will be using g++ under the UNIX (Linux) operating system.

Our lab is ICCS X350; select the Linux operating system when logging on. Other than our lab sessions, you can see when they're free at the lab schedule.

If you need to get a new ugrad.cs.ubc.ca account, first sign up for a Campus-Wide Login and then follow the department's account activation instructions.

UNIX and C++ tips:

Here are some useful links and quick tip pages about tools you are likely to use. These documents and links have been compiled over the years by various teaching staff and are neither complete nor guaranteed to be accurate. If you find errors or serious omissions in the documents, please let us know.

C++ for Java Programmers

You've all learned Java already, and C++ is a very similar language. A quick web search for "C++ for Java" turns up many helpful links. When I (Alan Hu) searched, the first two were pretty good. I like this one by Beck Hasti at the University of Wisconsin. There's also this one which is by Cay Horstmann, the author of the Big Java book. It's shorter, but I think it's harder to read, with fewer examples. Some of the other pages I saw were out-of-date, but the above two are good places to start.

 
cs221@ugrad.cs.ubc.ca