Theo Kachelski

Computer Science Major, Aspiring Developer


My name is Theo Kachelski. Thanks for stopping by! Here is a little about myself...

I am currently a Junior electrical engineering and computer science major at University of Wisconsin-Madison. In my summers I intern with a great company, HUSCO International, where I work on data processing and live tuning software for large scale automated machinery including excavators. This past summer I worked with the corporate advanced manufacturing group working with LabView, cRIOs, and FPGAs for test racks. In my free-time I work on my own projects, some of which you can see below, and I love the outdoors, especially fishing and hiking.

Projects


This program uses a genetic model to find a function, f(x), that satisfies the user entered x,y pairs. This Java version utilizes single point reproduction crossover, an RMS error, and a Javascript interpreter to calculate fitness. I am currently developing a C version that utilizes reverse polish notation to parse the randomized equations, which makes the process much faster.

Utilizing the great OpenCV library and JavaFX, this Java program is a simple photo booth with a variety of filters. Filters are easy to add and the images are all of type BufferedImage making each pixel individually addressable. Feel free to experiment with it and check out the source code to add your own cool filters!

Ever really need to get a hold of someone but you don’t have your phone on you? iMessage is only for apple computers, but this program gives some of the computer texting ability back to Windows and Linux users. It uses the javax.mail library and each carrier’s email based texting service to send messages from the computer to any cellular device (only confirmed working with AT&T and Verizon).

Stemming from a lazy day in high school robotics and a new found interest in java swing, this simple 2 player pong game became an instant classic with the rest of the team. I quickly developed a simple AI to allow players to play against the computer. The TCP option will eventually allow players on the same local network to play against each other over the internet.