Skip navigation
The Australian National University

Working Remotely

Please take the time to read the following important notice before looking for tools for your home environment.


Like most other computer science courses at ANU, this course is designed on the assumption that you will use the laboratory environment provided at ANU. The laboratory environment is supported by ANU technical staff and I have done my best to ensure that that environment works well in every respect.


For your convenience, I have tried hard to allow you to facilitate you working from a home environment --- by using freely available tools that run on most major platforms and providing you with basic installation instructions. Please understand that your home environment, should you choose to use it, is not supported by the ANU.


If you wish to use your own environment, please follow these steps:

  1. Use the advice provided on these web pages to identify the appropriate tools, and how to install them.
  2. Use the forum to seek help from others in the class.
  3. Seek help from your tutor during your scheduled lab.
  4. Seek help from me during office hours or at lectures.
  5. Seek help from the Computer Science Student's Association (CSSA), who explicitly set out to help their members with matters such as setting up home computers.


The ANU and myself cannot support your home environment because each environment may differ in ways that are entirely outside of our control.

ssh

To do any work remotely for this course, you will need to have ssh set up properly. In particular, the following two points are critical.

  1. You must be able to ssh to your student account at partch.anu.edu.au without being prompted for a password. For this to work, you must have properly set up a public key (step-by-step info here soon on how to do that).
  2. You must have all relevant public keys (including any from your remote computer) in your .ssh directory of your user account, and those keys must be world readable (step-by-step info here soon on how to do that).

Installing Tools

All of the software tools you will need are provided as part of the standard environment in the RSCS computer labs. The tools are all freely available for Linux, Windows and MacOS X, so if you wish to work on your own computer, you can easily do so. Please read the notice above before following the instructions below.

We will do our best to support anyone using these standard tools. You are most welcome to use alternatives (such as a different IDE, etc), but you should not expect any support when you run into trouble using non-standard tools. For that reason, I strongly recommend that you stick to the supported tools unless you are quite confident in your ability to resolve any problems that may arise with non-standard tools. Furthermore, the lab tests will be conducted in the lab environment, so you will need to be proficient with the standard tools for the lab tests, regardless of which tools you choose to use at home.

ssh

The most fundamental tool you'll need is ssh. If you're using MacOSX or linux, it should be there right out of the box, so you have nothing to install. If you're using Windows, you will need to install PuTTY. See these instructions.

Java

If you wish to develop code on your own computer, you will need to ensure that you have Java 1.7 update 25 or more recent installed. Please follow instructions from the Oracle website to test and install the "Java Platform (JDK)". Verify the version of your installation by typing "java -version".

Java FX

You will also need Java FX 2.1 or later. If you're using a recent version of Java, as recommended, you should find that it is included in your Java installation. Verify that you've installed things correctly by following the first steps in the Java FX tutorial. If you cannot build and execute the HelloWorld example, you should check that you have the correct version of Java and that JavaFX is correctly installed. (Be sure to read the Eclipse + JavaFX notes below).

Eclipse

You will need Eclipse 4.2.2, "Juno Sr2". You can download Eclipse from here. I recommend you use "Eclipse Classic 4.2" or "Eclipse IDE for Java Developers". This version was the most recent stable release until "Kepler" was released just prior to the start of this semester. You may use Kepler, but please understand that the labs are using Juno, and I have not tested our materials on Kepler.

Eclipse + JavaFX

The jfxrt.jar is not included in the standard Eclipse build path. You'll find that Eclipse complains when you try to create any JavaFX application because it can't find any of the javafx.* packages, including javafx.application.Application, which JavaFX apps must inherit from. You will need to follow the steps below each time you create a new Eclipse project that uses JavaFX.

Ensure that JavaFX is installed before continuing.

If you have JavaFX correctly installed, you should have a file called jfxrt.jar on your computer, within your Java installation. For example, if you installed Java 1.7u5 for Mac, you should find that it is in /Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jfxrt.jar. In a linux install, you should find it is in /usr/local/javafx-sdk2.2.0/rt/lib/jfxrt.jar (or something similar, depending on where you installed it and what version you have). In the computer labs it is in /usr/local/javafx/rt/lib/jfxrt.jar. Resolving Eclipse's problem is as easy as adding this file to your "build path" for a given project (you need to do it for each project, unfortunately). You do this by right-clicking on your project, and selecting "properties", then "Java Build Path", then select "Add External JARs...", then identify your jfxrt.jar. Once you have done that, you should find that Eclipse will happily work with JavaFX. Make sure you can create and run a basic "Hello World" program in your new environment.

Mercurial (hg)

You will need Mercurial 2.2.2 or later. You can download it from the link on the top right of the mercurial web page. Be sure to install the MercurialEclipse plugin (below), so that you can use Mercurial conviniently from within Eclipse.

Optionally, if you are using Windows you may also want to install TourtiseHg, a very popular tool which integrates mercurial functionality into the Windows explorer (hg is shorthand for mercury). More recently TortiseHg has been ported to Linux (Debian, Ubuntu and Fedora binaries available). There is also a MacOS X port, but no binary download.

Selenic, the makers of Mercurial, have some excellent resources for understanding how Mercurial works. Depending on your needs, you may find the following particularly helpful. Please keep in mind that the information on the Selenic web site is expressed in terms of using a command line interface, whilst you will be using MercurialEclipse (below). However, the concepts (and names) translate directly to MercurialEclipse. You will find each of the mercurial commands available under the "Team..." sub-menu in Eclipse.

  • A tutorial on using Mercurial. You will probably want to start at step 3. Step 1 covers installing the Mercurial software, while step 2 covers initializing repositories which you do not need to do.
  • A guide which gives a good overview of how to use Mercurial when running a collaborative project.
  • A description of the concepts behind Mercurial.
  • The definitive Mercurial guide.

The first 40 minutes of Lecture 10 cover the key aspects of Mercurial that you are expected to use in this course. The scenario described in that lecture is also available here as an exercise to be completed in your lab in week 6.

MercurialEclipse

You should install the MercurialEclipse plugin for Eclipse. The authors have not made it particularly obvious how to do so in a convinient way. Fortunately it is straightforward. Use the Eclipse Help menu and choose "Install New Software". You will need to inform Eclipse of the repository that hosts MercurialEclipse. Do this by clicking the "Add..." button (top right) and entering "MercurialEclipse" as the name and "http://mercurialeclipse.eclipselabs.org.codespot.com/hg.wiki/update_site/stable" as the location. Once you have done that you should be able to check MercurialEclipse and finish the installation.

Updated:  23 July 2013 / Responsible Officer:   JavaScript must be enabled to display this email address. / Page Contact:   JavaScript must be enabled to display this email address.