- How Should I Learn TCP?
As a maintainer of a database driver, I need to understand TCP a thousand times more deeply than I do now. I want to know about windows and Nagle and keep-alive and every little detail. What's the best book or online course?
- Copying A Python Function's Signature
A supplement to functools.wraps.
- Review of "JavaScript: The Good Parts" by Douglas Crockford
An obsessive and eccentric book, but well worth reading.
- Syntax Highlighting With PyCharm, Pygments, and Keynote
I'm prepping talks for a few conferences. I think I've got my workflow down for syntax highlighting slides in Keynote on my Mac. 1. "pip install pygments", not in a virtualenv but in your default Python. 2. Make a Bash script [ ... ]
- Mollified About ResourceWarnings
Last month I griped about ResourceWarnings in Python 3, arguing they're a useless irritation in a language that can clean up resources automatically. Python core developer Nick Coghlan responded in the comments and I understand the [ ... ]
- Python's Thread Locals Are Weird
- Review of "Introductory Graph Theory" by Gary Chartrand
If you are a software developer, then from time to time you will have to solve an Interesting Problem in optimization, such as finding the best matches on a dating site, or the right sharding key for a database cluster. As often as not, such [ ... ]
- Review of "The Little Book Of Semaphores" by Allen B. Downey
The Little Book of Semaphores is a free PDF. Whenever I write code to synchronize multiple threads, I always think, "There must be some method to this." I've been warned by the popular adage, "Any non-trivial multithreaded program has [ ... ]
- Against ResourceWarnings in Python 3
Update: Nick Coghlan has changed my mind, see our comment thread for the explanation. Allow me to grumble. Consider this function from Python 3.2.3's socketmodule.c: /* Deallocate a socket object in response to the last Py_DECREF(). [ ... ]
- Python's swap is not atomic
I rewrote PyMongo's connection pool over the last few months. Among the concurrency issues I had to nail down was, if a thread is resetting the connection pool as another thread is using the pool, how do I keep them from stepping on each [ ... ]