Parsley - a language and companion website (now offline) for building web scrapers
I've spent time
studying web security.
researching security and privacy, mostly in web applications. I'm in the Google Security Hall of Fame for some subtle security holes that I found in Gmail and Google Documents in early 2011.
I'm also interested in
emergent processes from nature.
the simulation of emergent processes and self-organizing systems, primarily from the natural world. One recent creation is an HTML5 canvas-based simulation of ants exploring and
working togethercommunicating via pheromone signals. These pheromone signals are local, and although the ants know nothing about each other, the resulting emergent system displays complex behaviors, which allow the ants
to gather food. Another is an implementation of Conway's Game of Life.
Professionally, I was
until recently the Chief Architect at
Mavenlink, where I
Mavenlink (mavenlink.com), a startup that is empowering services businesses to manage their consultants, clients, and margins online. I
helped to guide the engineering team.
helped to guide the engineering team, applying
agile practices to
agile software development practices that I learned as a consultant at
Pivotal Labs (pivotallabs.com), and previously at CastTV and Google,
including pair-programming and test-driven development, to
frontend web development in
CSS,CSS (straight, on the rocks, or with SCSS),
backend web development.
backend web development with
RubyRuby both on and off Rails
DevOps tools.strange UNIX commands with 3-4 letter acronyms gathered into Ansible playbooks.
I also enjoy writing
open source software and playing
open source software, some of which includes:
Huginn - A system for building agents that monitor the world and act on your behalf (now with 10,000+ stars on GitHub!)
Reckon - Bayesian learning Ruby gem for command line accounting with Ledger
From time to time I play
with machine learning.
with machine learning techniques. I gave a talk at RailsConf 2012 about machine learning and originally studied it
in graduate school.
while doing my Masters research at Georgia Tech. My research focused on
artificial intelligence. Specifically, I researched TTD-MDPs, a technique for generating a distribution of trajectories through a Markov Decision Process.
With my co-authors I published a couple of