KeyError in self._handlers: a journey deep into Tornado's internals.

Date Tags python

If you've worked with tornado, you may have encountered a traceback of a somewhat bewildering error:

Traceback (most recent call last):
    File "/usr/local/lib/python2.7/site-packages/tornado/ioloop.py", line 832, in start
fd_obj, handler_func = self._handlers[fd]
KeyError: 16

A few other people have been confused ...

more ...

Building a Windows Gaming VM for Steam Link: 2016 Edition

Date Tags kvm / vm

In 2016, I bought a Steam Link, allowing me to play games on my TV without having to lug a whole physical machine over. The main requirement of Steam Link is the link and the PC on the same network: this allows encoded streaming from the PC to the link ...

more ...


Global logging with flask

As of December 2016, Flask has a built-in logger that it instantiates for you. Unfortunately, this misses the errors and other log messages in other libraries that may also be valuable.

It would be nice to have a single logger, one that captures BOTH library AND app logs. For those ...

more ...

Hierarchal Naming

Date Tags design

One of the most interesting artifacts of most programming languages using English conventions is variable naming. Today I contend that:

English Grammar is a Terrible Programming Default

Consider how you would specify that a room is for guests in English, or a car is designed to be sporty. In both ...

more ...

How I Learn More Vocabulary

When it comes to reaching language proficiency, vocabulary is important. To reach proficiency as quickly as possible, the choice of vocabulary is important.

I'm going to explain my approach a bit.

How To Learn Vocabulary

Vocabulary from a spoken standpoint requires quick recall without a reference, which is really ...

more ...

Hacking Language Learning

Let's start with a disclaimer: I'm not a teacher, and I have no experience in teaching languages. I've been trying to learn quite a few though. Everything stated here is in my own, anecdotal case study opinion.

If the goal is some level or proficiency, I feel ...

more ...

Test Classes Don't Work

Date Tags testing

Test Classes don't work as a test structure.

It's worth clarifying what I mean by the test class. I'm speaking specifically about the following structure of an test:

  • having a test class, that contains the setup and teardown method for test fixtures
  • putting multiple tests in that ...
more ...

How I Design Test Suites

Date Tags testing

At Zillow, I've done a lot of work on the design and development of the test infrastructure we use for full-stack tests. It's always fun to watch your tool become popular, but even more interesting is the discussions around test suite design that come with it.

Many discussions ...

more ...

Book Report: Refactoring by Martin Fowler

Refactoring is a book covering the basics tenants of refactoring as dictated by Martin Fowler: a very smart person with some very good ideas about code in general.

First, the interesting thing about the definition of refactoring (as defined by this book) is that it doesn't encompass all code ...

more ...

About Yusuke Tsutsumi
Software Engineer at Zillow. I focus on tools and services for developer productivity, including build and testing.

My other interests include programming language design, game development, and learning languages (the non-programming ones).