2010-07-14: How to send good unicode email with Python


# coding: utf-8

# Python's email API is simple and easy to use!!!!!!!!!!!!!!

# Requirements:
# * UTF-8 headers
# * UTF-8 body
# * prefer quoted-printable to base64 transfer-encoding.
# * Don't escape "From" at the beginning of a line in the message - it's not
# the 1800s any more

from cStringIO import StringIO
from email.mime.multipart ...
more ...



2008-05-29: Requirements for a restricted execution runtime

I don't care what the language is, just please someone give me a runtime with these properties:


  1. Namespace restriction. Encapsulation. Capabilities. Whatever: the code should only be able to do what I say it can do.
  2. CPU timeslice restriction: Either I should be able to run some code for ...
more ...

2008-04-01: Corotwine 0.2

As is my tradition, I'm doing extremely rapid releases of my software.

Here's Corotwine 0.2, which contains the following changes:

  • Returning from a connection-handling function now closes the connection
  • A bug was fixed in the example Chat server

The API documentation has been updated.

Please post any ... more ...


2008-03-24: Twisted Isn't Specific

I was googling for some stuff related to Twisted and greenlet and I came across this post from last year by Jean-Paul Calderone: Twisted Isn't Specific. That subject is a reference to a quote in the Twisted.Quotes file:

<sayke> Acapnotic: don't make it twisted-specific
<dash> sayke: pffft ...
more ...

2008-01-19: How to create an archive

Why the hell do people who write ray tracers, whether in Python, Haskell, or Erlang, always put all the files into the top level of the archive instead of creating a subdirectory?

more ...

2007-12-24: unit testing code that uses third party libraries

In the year 3000, our libraries will come with verified-equivalent implementations of their APIs that users can use to unit test their code, when the normal implementation is inappropriate.

Our libraries will also have thorough documentation on how to unit test code that interacts with them.

more ...