You can contact me via email at email@example.com.
I’ve spent the last 3 years working on Crunched. It is a slide sharing and meeting platform that offers you insights in to the behaviors of your audience. Sign up for a free account at Crunched to demo my work.
Demo: StatsD Server
At Crunched we use statsd to track interesting metrics. We wanted a simple way to deploy it to our servers without having to manage Node.JS, so we chose a ruby version. At the time the ruby version did not support gauges. I was inspired by the simple server to try my hand at an implementation. One interesting aspect is the ragel parser I wrote for it which proved to be crazy fast.
Demo: IP Geolocation
This is a simple project that allows you to look up geolocation data for an IP address. It uses a database from MaxMind which is provided as a binary file. I did not want to check this file into git since it would bloat the repository each month as the binary changed. Instead, I packaged it as a gem which lets me package and deploy it simply.
- Web App: http://geoip-app.herokuapp.com/
- Source: https://github.com/tjsingleton/geoip-app
- API Documentation: http://geoip-app.herokuapp.com/doc/
- Data Gem: https://github.com/tjsingleton/geoip-db
I took part in the first session of Ruby Mendicant University and these are the projects that I worked on as part of it.
- IPTables Parser: a recursive decent parser for the output of iptables-save
- Zip Reader: a pure ruby library for extracting files out of zip archives
- Fishing Log: a simple dsl for recording your fishing trip and a cli tool to filter the data
- Export Assignments: allow assignments to be exported in gzipped json or yaml
Find out more
You can check out my github profile for more examples.
Writing & Reading
Here are some technical posts that I’ve written:
- Evan Light - Building a Recommendation Engine With Ruby and Redis
- Casey Rosenthal - Fault Tolerant Data: Surviving the Zombie Apocalypse
- Jason Clark - Extending Gems
- Matz - Living in the Fantasy Land
- Switched to Octopress
I am subscribed to a couple hundred feeds and am know for sharing the juicy bits I find. I started posting them as a way to share them with my friends en masse. I’ve failed to post as regularly as I’d like and have about 75 links queued up in evernote to post. Here are some recent clips: