Below are a few of the projects I have completed. Most of them were created at UConn, for research and class work.

Fishamp - a Winamp Plugin

Fishamp was a three semester project which allowed me to study graphics and techniques used in the gaming industry. Most notably, Fishamp was a way to manipulate a 3D universe with OpenGL.

Fishamp includes changeable 3D fractal plants based on the Lindenmayer system. I also implemented a 3D modeling animation system, known as MD2. This system is the same used in the popular first person shooter Quake 2.
Source Code

UTEB AI Project

UTEB is a building at UConn. A partner (William Lane) and I designed this project as a game. Using a Java applet, and a TCP/IP link to Common LISP, we created an AI system. The object of the game is to chase down the professor on a floor of uteb. The AI control is all done in LISP, including line of sight, and avoidance.
Source Code

C Compiler

This was a C compiler written entirely in Java for my compilers class. It parses standard ANSI C. Unfortunately I did not have time to complete the semantics section, so the opportunity is there to create the semantics for any target language.
Source Code

PIMP - a Java messager

PIMP or Perkins Instant Messaging Program is written entirely in Java. It includes a Java servlet, as well as an applet for the client side. I wrote it in order to familiarize myself with the Java AWT as well as threads and internet connections. That knowledge was eventually put to use working for an internet AI company, as an interface to the AI entity.
Source Code

NURBS Gravity Manipulation

Jun for Java is a 3d library for Java that links OpenGL to Java. We used this graphics library to illustrate the effects of a point of gravity on a 3d NURBS surface. Source Code

Mini OS emulator

In order to understand the concepts behind OS design and multi-threading I wrote an emulator in order to test the efficiency of different memory systems and disk systems using a round robin scheduler. I also created an implementation for semaphores, solving the dining philosophers and readers writers problems.
Source Code


The following projects have no source code, because it is classified. Feel free to ask me any questions about what I did on these projects.

Winamp AI Connection

For Brianhat, I built a Winamp plugin that connected to our AI engine with a TCP/IP Connection. Furthermore, ID3 tag information (from mp3s) could be loaded into the Engine's SQL database by creating dynamic XML tags. This shim allowed the Artificial entity to play songs, understand information about the music, and generally interact with Winamp.

Dynamic XML Web Server

At Brianhat, I built onto the existing web server the ability to work dynamically with XML tags. This enabled AI interaction to be located anywhere within a web page. It also allowed sub-pages to be embedded using our XML tags.

Pratt and Whitney Fault Code Viewer

Working with consultants at Pratt and Whitney, me and a team of students created a working fault code viewer for a windows platform. The project took a binary file, and a format file, and displayed the data in a format that is more easily readable. The format file provided a level of abstraction, which allowed the reader to handle multiple engines.

AI Script Supporter

While developing AI for Ensatina, we came upon a need for a visual tool to aide in the development of the AI. The result was a graphical Java application with mouse control. The tool outputted LISP code that was loaded into the AI environment.