t i m - w o o d . n e t

 

Research & Projects

Here are some things I have worked on over the past few years. Some are projects I did for school or internships, others are things I have done on my own for fun.

My primary research interest is Systems. Operating Systems are the basic interface between computer hardware and software. Considering my training as a computer engineer and my interest in programming and software, it is natural that the level between them interests me. I've also been interested in Wireless Networking, probably as a result of working at WINLAB as an undergraduate.

Computer Graphics is a field that I like to "play" in. Most of my family is very artistic, and since I can't match them in pen and ink, I try to let the computer do the drawing for me.


Systems & Networking

A Data Center

Data Centers - *Current Research*

I started my PhD in Computer Science at University of Massachusetts, Amherst in Fall of 2005. I have been working on resource management for data centers and shared hosting platforms with Prashant Shenoy and Arun Venkataramani. I am part of the Laboratory for Advanced Systems Software (LASS).


A MICA2 Sensor Node

Sensor Networks

My undergraduate research at Rutgers focused on sensor network security. I examined the effectiveness of TinyOS, an operating system developed for low power, wireless networks. I also studied the issue of security in sensor networks, particularly Denial of Service attacks.


The WINBOT

WINLAB Robot

During the summer of 2003, I worked at the Rutgers Wireless Information Networking Laboratory as a research intern. My partners and I developed the software for a robot that could navigate hallways, automatically avoiding obstacles. Towards the end of the summer we were working on adding mapping capabilities and detection of wireless signal strength. With these, the robot would be able to produce a map of a building, pinpointing spots with wireless access and also showing areas without a strong signal.


A CerfCube

CerfCubes

My first undergraduate research project was using Cerf Cubes - small networkable embedded systems. This was mainly a learning experience to become more familiar with the Linux operating system. To this end I learned how to cross compile the Familiar Linux kernel (designed for embedded systems) and install it on the cerfcubes. I worked on this topic for a few months during my sophomore year. Once the summer began, I switched to the robot project above.

Graphics

Ray Tracer

MPI Ray Tracing Program

This was a project for my Parallel and Distributed Programming course. With my partner, Ahmed Rahi, I converted a basic ray tracing program I had previously made so that it could be run as a distributed program on a cluster. Using MPI message passing, the work of drawing the picture is divided up between the available processors.


Processing

Processing

Processing is a java based programming language and environment specifically for graphical applications. It provides a basic set of graphic libraries to allow the programmer to have to deal less with the specifics of java syntax, and more with how they want their application to appear.

I've used Processing to visualize artificial intelligence and physical systems.


3d Shapes

3d Platonic Shapes Applet

This Java Applet can draw various three dimensional shapes, and allows you to rotate, spin, and perform various transformations on them. Starting from one of the Archimedean solids, you can chop off the corners of an object or set its corners to be at the center of each face. The 3d rendering engine is written from scratch, using only basic 2d drawing functions.


Sine Waves

Sine Waves Applet

This applet draws sine waves wrapped around sine waves. You can control the number of waves and the speed at which they move to create some very impressive effects. This was my first major Java project; I wrote it more than five years ago.

Other Stuff...

The Subwoofer

Subwoofer

My roommates and I built this subwoofer during our sophomore year. We wanted to make something that would look impressive, sound good, and use some of our engineering skills. Most of the project was just woodwork, but we designed our own low pass filter in order to make it really rumble. We also wired it with some ultra-brite blue LED's to make it flashy, and built the sides out of Plexiglas to make it a little more unusual.

Lately our design has gained some popularity in the do-it-yourself world. A steady stream of visitors have checked out my web site and commented on the design. Unfortunately, most of the viewers come from a Brazilian enthusiast site, and my Spanish is, well, not Portuguese.


FoxyMeter

FoxyMeter

At the end of the summer, I wanted to learn something new, so I wrote a simple firefox extension. It's called FoxyMeter and it is incredibly useful. Alright, maybe not, but it is entertaining at least. It adds a small "odometer" to the status bar of your browser that counts the number of pages you've visited. If you can get it up one million, it will loop back to zero. That may (should) take some time. More information here, or at the official firefox addon site. Over 12,000 people have downloaded it... not too shabby.

t i m - w o o d . n e t