Kalman Filters and their extensions are basic tools for tracking robots. While the standard Kalman Filter is quite simple, the flurry of extensions offering better numerical stability and increased applicability can be quite daunting. This library takes care of that for you.

Vim Config

I use Vim. A lot. This config contains all of my settings (350 lines!) and addons I use every day. Give it a try, you might be surprised how much better Vim can be!


There are a lot of optimization algorithms out there, but finding one place where you can try them all out is tough. `yannopt` lets you define an optimization problem throw every tool in the box at it. Mirror Descent? Newton's Method? Accelerated Proximal Gradient? It's all here.


Asynchronous programming is already difficult enough without having to consider callbacks, threads, and all that other bally-hoo. `mirai` is a library modeled after Twitter's amazing Futures implementation for Python, making life unimaginably easier to work with.


Why is sending an email in Python so hard? Chainmail is a method chaining-based interface for composing email messages and sending them with support for unicode, attachments, and SMTP.


Too many times have men written REST APIs for SQL stores. No more! sqlrest provides a single command for generating a simple REST API for your MySQL, SQLite, PostgreSQL, or other SQL-based data store that in addition to the usual create/update/delete operations, allows for single-table analytic queries including group by, filtering, aggregation, ordering, and paging.


The line between configuration files and command line arguments is tenuous at best. Haven't you ever wanted to say, "run this command, but with this one configuration parameter changed?" Or maybe you were trying to combine multiple projects, each with their own config data format. Wouldn't it be easier to choose the format you're most comfortable with? configurati is a Python library for just that.


A Lego obsession gone wrong. Brickrake is a suite of tools for finding the cheapest way to buy Lego parts from BrickLink, the eBay of Lego parts. By scraping inventories and solving an Integer Linear Program, BrickRake will tell you precisely where and from whom to buy the parts you need to build that next big project. Moreover, BrickRake's bookmarklet automatically fills in purchase orders directly from your BrickLink wishlist.


Implementations of proximal gradient ascent, accelerated proximal gradient ascent, and coordinate ascent for solving convex clustering problems as described in this blog post .