projects

Graphdroid 2012 github

This is a project to bring a fully featured computer algebra system with graphing capability to android phones and tablets. I'm working on this project with Nam Ngo. Currently in its early stages, development is currently halted.

For CAS, we're using symja, which already has an 'expression evaluator' for Android devices. What we seek to replicate is the sort of all-in-one educational ubiquity enjoyed by the likes of TI

jSnakeByte github

Screenshot

This is a throwback of probably my favorite game growing up, snakebyte. Although the concept has been done many times over the years, this implementation is aiming to be a ripoff of SnakeByte for Apple //e written by Sirius Software around the early 80s.

I started working on the game sometime in late 2011, and then stagnated for over a year before moving the code to github in February 2013. Currently a few levels are done and the engine is playable. Work still needs to be done to enable multires support and mobile controls.

adgroupcacher github

A dokuwiki plugin to make dealing with AD groups significantly less painful. It hasn't been widely tested or published, but it aims to solve the problem of slow access to Active Directory making using AD groups via the official dokuwiki AD mechanism unusable.

At ResTek, it enabled us to use CAS to authenticate to the wiki, but still retain our fine-grained hierarchy of groups. Read the README.md on github for more information

Commute Timer

CommuteTimer is my latest project, not much more than a glorified stopwatch at the moment, it keeps track of how long various commuting methods take at various days and times. Eventually graphing and analytics to be added to display and predict the time to destination as well as recommend certain options depending on the day and when one plans to leave.

This is a pure javascript webapp that I plan to package natively for android and iOS when finished. I haven't decided on a backend yet

Check github and commutetimer.com for public release

Hallusinaattori Remix demo github

hallusinaattori screenshot

I've become recently interested in externally induced visual field distortion. I've dug up some old code called Hallusinaattori which creates many moving concentric circles on the screen. Extended viewing of these images will trick the brain into compensating for the rapidly moving shapes. Looking away from the image leaves the compensation in place, causing a change in your visual field

I'll be porting the original code from C to HTML5/JS so you'll be able to experience the effects first hand in your browser! An initial version is available at the demo link above. Click for customization options. Send any suggestions or patches via github.

Faed - Finite Automata Editor github

I began working on my finite automata editor after my first week of CSCI 401 - Formal Languages and Automata. I found the subject to be initially interesting and modeling to be extremely helpful in understanding what was going on. My inspiration for using HTML5/Javascript was to enable maximum portability. The end goal is to support Desktop, Android, and iOS platforms.

The editor allows on the fly creation of deterministic and non-deterministic finite automata. After building test strings can be executed against the machine to test for acceptance or rejection. While still a work in progress, eventually users will be able to save machines as JSON or PNG and convert machines to regular expressions and vice versa. Any feature suggestions are welcome.

xmpp-rpc github

xmpp-rpc is an irssi plugin that I've been developing in my spare time to shoehorn irc access onto the xmpp protocol using my favorite irc client. This is advantageous because all of the state is kept in one instance of irssi running on a cheap vps, and *most* of my syncing headaches are gone.

BSD Licensed, check out the github page for more information

WTA Next Bus github

WTA Next Bus is an android application (or rather a framework) to simply display bus arrival times at a selected bus stop. I was inspired to write it after attempting to use Bellingham WTA's online service for displaying bus times -- it's virtually unusable on a phone and not very friendly. Currently the app displays a list of available bus stops (sorted by category or location) and provides a search and favorites feature. Other than that it shows the next 5 busses arriving at a selected stop.

The software has been written generally such that it could be easily adapted to service any bus line. Right now I run a python server which proxies requests from the app to the actual web service run by WTA. Because of this decoupling, the python app could serve static data or source its data from anywhere else. Eventually I'd like to add mapping support and better internal application caching.

PyMP coming soon

PyMP is an online music player which streams your own music library over LAN or WAN direct to browsers and mobile devices. The project began in CSCI 330 Databases (Fall '11) with Python, JQuery, and PostgreSQL, and has since been tabled for the past year.