Frank Roberts
Spring 2013
frank@jafrro.net

This package contains all work related to my master's thesis. I include
my source code (code directory), my thesis (both sources and a rendered 
version, thesis directory), and the slides from my defense (talk directory).
 
Most directories include a README file that describes the contents of that
directory.

My source code includes C, Go, and Python 3 code. I developed these programs
in a Linux environment. Specifically, I used the Arch Linux, Ubuntu, and 
CentOS distributions. The Go code is all version 1.0 compatible.

I also include two papers that I wrote when I first began my research.
The first is an overview of the NodeScape v2 tool and the second discusses
my initial approach to anomaly detection techniques.

You will need to install a Go environment to compile my analysis programs.
Many distributions officially package Go. If yours does not, you can
download a binary distribution of Go from golang.org. As of May 2013, 
binary distributions exist for FreeBSD, Linux, OS X, and Windows for 
both 32-bit and 64-bit Intel-compatible architectures. If a binary 
distribution is not available, you can download the source and build your
own environment. Installation procedures are documented at
http://golang.org/doc/install.

Make sure to define the GOROOT environment variable (conventionally 
/usr/local/go or /home/<user>/go) and to add the Go binary directory to 
your path (conventionally $GOROOT/bin).

Once you have installed Go, you will need to also install the third party
libraries that my code uses:

bitbucket.org/binet/go-gnuplot/pkg/gnuplot
github.com/ziutek/mymysql/mysql
github.com/ziutek/mymysql/native
github.com/GaryBoone/GoStats/stats

Install these libraries with the "go" command line tool:

go get github.com/ziutek/mymysql/mysql

