Stackless Python
I work mostly with with a variation of Python 2.75 called Stackless python. Stackless implements cooperative multithreading and other multi threading structures like channels. I Became a fan when working on EvE as it allows for the simplification of game code. If you need to do a sequence of operations over time, then all you do is create a micro thread and use sleeps to separate the steps. IE. step, sleep, step, sleep,... In other programming environments you would need to handle the timing in a manner where your code doesn't block other code. With stackless the sleep becomes trivial way of scripting sequence of events, making the code much more readable.
ServiceManager.py / Service.py
(GitHub)
Service manager is a module that I have used in several projects now. It loosely follows the service manager concept that I learned at CCP. The concept is that the service manager installs itself into the builtins and is accessed by sm.xxxxxx. In my live code ServiceManager resides in a __init__.py file.
Other modules can derive a class from Service and by registering it can then be accessed from any other code by calling sm.GetService("ID"). Services are automatically started when first called or if StartService or the service is marked as auto starting. A service when defined can indicate what other services it depends on and those will also be auto started, if not already started.
An example of a service I have used multiple times is the DB service that I wrote (code not shown here) that when initialized reads the connection file and initializes a service provider. I have written service providers that interface with MySQL and sqlLite3. As MySQL has stored procedures and sqlLite3 lacks them. The service provider implements stored procedures on top of the sqlLite3 database, while the MySQL provider just passes it to the database engine.
This is how the service can be used to abstract implementation details.
The service manager also handles scattering of events between services. This allows for a service to list events that it wants to be notified about. When something happens in one service it can scatter the event to all other services that care. This removes the tightly coupled nature of notifying other services. In the Virtual Gaming Table project when a user logs into the web site, a scattered event is broadcast indicating which user, has logged in. Another is scattered when a user disconnects or reconnects. This allows other services like the User Manager to load it's data or unload it. The Map service listens to these events and when a user logs in and is part of a currently loaded map, then it loads that users details into the map. Updates other users that this user has joined the map.
Today I have built services for openGL rendering, openCL computing, Database, web service (html, file serving, and websockets) along with many others that are project specific.
The module and decoupled nature of the services allows for the development of a toolbox of services that can be dropped into a new project.