Eric Theller

Eric Theller

Developing some form of software for fun since I was in elementary school!

			

Experience

A Trading Desk Fall 2017 - Present
Worked with a trading desk at Allston Trading
Most of this stuff is proprietary, but we generally have a bunch of fun
Core Infrastructure Team July 2017 - August 2017
Created internal software similar to WireShark for viewing internet packets
Worked on various other internal projects using the interal Jira ticket system
Core Infrastructure Software Team Intern May 2016 – June 2016
Advanced an internal HashMap implementation to incorporate optimizations from Java 8's HashMap
Optimizations included buckets that converted into Red-Black Trees after many collisions
Created unit tests for the improved HashMaps
Worked on a more advanced benchmarking system to test effectiveness of HashMap improvements
Commodities Development Team Intern July 2016 - August 2016
Worked on an internal trading interface log component that pulled data from several feeds, and allowed filtering
Made the user changes to layout persist through the Java Preferences API, combined with internal APIs
Core Infrastructure Software Team Intern May 2016 – June 2016
Advanced an internal HashMap implementation to incorporate optimizations from Java 8's HashMap
Optimizations included buckets that converted into Red-Black Trees after many collisions
Created unit tests for the improved HashMaps
Worked on a more advanced benchmarking system to test effectiveness of HashMap improvements
Core Infrastructure Software Team Intern May 2015 – August 2015
Created a Java API for converting a sequence of timed trading events into a statistical data analysis
Used the Java Servlet API, Smart Client, and Google Charts to provide a web interface for the analysis
Created a Java API that interacted with an SQL Server database to store event time limits and alerts
Programming Intern Summer 2014, Part-time 2014-2015, 2015-2016, 2016-2017
Coded a set of REST services for remote Watershed Erosion Prediction Project (WEPP) model runs
Used Apache Tomcat 7 and the JAX-RS API, through the Jersey library
Coded this Tomcat server to receive JSON-format instructions and interface with the C++ model
Teaching Assistant Fall 2016 - Spring 2017
Worked as a TA in a course where students build three-dimensional virtual reality experiences using Unreal Engine 4 and Unity
Had a lot of fun in a course where students built cool applications using the Oculus Rift and HTC Vive
Coded the main design of the Spring 2017 webpage for the course at cs.purdue.edu/homes/cs390vr
Teaching Assistant Fall 2015
Worked as the only UTA for the Fall 2015 semester in the difficult CS 381 Algorithms course
It was a great experience, and I taught evening SI sessions, but it was my first time TAing
I was stressed that my teaching skills did not match my computer algorithm skills, but I learned a lot

Projects

Warcraft III Modding Since ~2005
View in action at https://www.youtube.com/embed/uplzdfldvLg
Edited JSON-like "MDL" 3d model files in a mix of NotePad++ and freeware programs
Wrote the Matrix Eater 3D, a 3D vertex editor and importer for this proprietary 3D model format
Created a large game mod with over 30,000 lines of game scripts
Wrote Disarm, a small program that deletes/swaps MDL character weapons by investigating the tree of nodes in their character skeleton to locate "weapons"
Over 30,000 lines of code authored in my Java Warcraft III modding repository as libraries for these programs
Disarm and Matrix Eater 3D continue to be used by the game modding community at www.hiveworkshop.com
Planetary War, a turn-based strategy game Fall 2013 - Present
View in action at https://www.youtube.com/embed/-KB60bXttJc
Self-taught use of the LWJGL library for Java OpenGL bindings
Self-taught use of the XStream library for easy reading/writing of XML data in Java
Utilized Java Socket API to build TCP multiplayer connection
More information about the game is available at http://etheller.com/planetarywar

Education

Purdue University, West Lafayette, IN Expected Graduation Date: May 2017
Bachelor of Science in Computer Science
Tracks: Software Engineering, Machine Intelligence
Minors: Spanish, Mathematics
3.97 GPA on 4.0 Scale

Achievements

Phi Beta Kappa Honor Society
Eagle Scout of BSA Troop 338
Graduated as Valedictorian of Harrison High School
3rd Place at Purdue with Team Shadowave in Windward Coding Competition 2014
2nd Place at Purdue with Team BoilerTron in Windward Coding Competition 2016

Thoughts

As I watch the endless number of processors in the YouTube video prediction system calculate what best would distract me next, I realize that before we reach a day when we have sentient artificial intelligence we will first see the day of tremendous, powerful learning algorithms that don't make generally intelligent decisions and don't have everyone's best interest at heart.

This might actually be an even more frightening time, because a system like Google's video prediction can be used to change the course of even the greatest human lives, capitalizing on how many videos they can be made to watch. Even bright people might not be expecting this during their leisure hours.


What is etheller.com?

I created the HTML page you are currently reading to be the public-facing end of Eric Theller, but it is hosted on a Digital Ocean droplet in an environment where I have a root access Ubuntu server. The real purpose of this website is not only to inform you, but to inform me. In seeing the power of what a company like Google can do by logging, tracing, and adapting its decisions based on my every move on the Internet, I am a mix of inspired and wary.

Because of this inspiration, I have a personal goal of finding a way to make our communication technology log, listen, and learn from me in a way that helps my life. If it works, then hopefully it could help the lives of others, too. But undeniably the majority of struggles I have recently faced were of time management, not of programming ability. I want to use our powers as computer scientists to make lives better, not just to capitalize on how many YouTube videos we can get an unwary idle person to watch. [That being said, my current employment is focused on making money and making my own life better, because I have not determined how best to make the world at large better yet. And, having money will always be generally helpful towards any future goal of that sort. Allston Trading is also a really fun place to work.]

So, hopefully I will find a way to store what I do on a daily basis and the choices I make and then write a piece of software that uses this stored information to make me a more effective person. That is my long-distance vision for etheller.com.

Burger Policy

Standard web-based internet applications are typically hosted with Apache server software. However, etheller.com is powered by my own C++ server application, and some Java server utilities for advanced applications like Planetary War.

Because of this, if anyone hacks this website and changes this text on my server, then I will buy them a burger.

This is because the site runs on my own server code.

Site Goodies

Hunt for Giant Eggs, Playable Now Online Spring 2016
Play it now at http://www.etheller.com/hfge/LayoutCore_Lesson5.html
Although this was a class project, I took it well beyond requirement
- Created 5 levels
- Innovated by adding the Egg Hunt component to the VR game
(after a particularly good Easter dinner)
Eric's Super Pacman Summer 2016, Spring 2017
Play it now at http://etheller.com/pacman/
I was working at Allston. One evening, after work, I thought I needed more Site Goodies. So I coded Pacman.
- Stores high score on server, so you can try to out perform your friends [NOTE: High score system currently unavailable]
- Or, if you're Simon, you can just use a memory editor to get a million score and name yourself Eric Sux
- There are 45 levels. They are very difficult. You can check the in-game high score system to see if they were beaten yet.
- If you want to be a winner, upload your high score in the game after you die
- There is a CORS error on the high score system, so in order for it to save you must be on "http://etheller.com", not "http://www.etheller.com"
The name of this game might violate a Namco trademark. As such, it is not a commercial game, is provided free of any guarantee for any specified purpose, and exists only and solely for educational purposes to be shared with other software developers as a tech demonstration. In addition, it is not affiliated with the actual "Pacman" game and does not follow the structure of that actual game, which it is not.
Snake Summer 2016
Play it now at http://www.etheller.com/snake/
I was working at Allston. One evening, after work, I thought I needed more Site Goodies. So I coded Snake.
- Stores high score locally to browser
Fourty Thousand Fall 2016
Play it now at http://www.ckachur.com:40000/
I created a game called Fourty Thousand and sneakily placed it on port 40000 of my friend Cameron's server.
- Stores high score on the ckachur.com server, so you can compete for the highest