Handling the "N + 1 selects" problem in SQLAlchemy - Dec 17, 2017

Latency in database-backed web applications often results from too many database calls, especially when you have models linked using foreign keys and loading one kind of (parent) object entails loading a few other (child) objects. In this post we'll look at one way SQLAlchemy helps you handle such cases.

Speeding up Python using Cython - Nov 30, 2017

If you've worked with Python before, you probably know that it makes a trade-off between developer productivity and speed of execution. But what if you didn't have to sacrifice on speed and could still have the Python-level of productivity?

Tornado + SQLAlchemy - Aug 27, 2017

I spend a lot of time working with Tornado and SQLAlchemy. So I recently wrote a small module that provides a set of helper functions to make SQLAlchemy usage easier in Tornado applications.

Stuck in Vim - Jun 27, 2017

I had some free time on my hand on a 10 hour flight, so I built a small web app which can help you in case you're using Vim but don't know how to exit the editor. This is a story of how and why.

Streaming multipart/form-data parser for Python - May 06, 2017

Every web framework allows handling multipart/form-data encoded content, but none of those allow for event-driven parsing on such data. Since I needed something like that for work, I ended up writing one and learned a cool new Python technology in the process.