Author archives: Mike

RSS feed of Mike

More porting-to-python-3 notes...

D'Arcy asked if I could port basicproperty, basictypes, wxoo, etceteras to Python3.  Not really high on the priority list, but why not dash it off; add 2to3, see happy Python3-ers.  Will log any issues as they arise here...

Python3.2 testing virtualenv can't install anything (not even pip).  Seems that the distribute and distutils code are ...

Continue reading

Evening Learning; I was hoping to get something done...

Mike Bayer mentioned in comments yesterday that one can configure SQLAlchemy to use one session with multiple database connections, so I decided to play with it tonight.  This is in the context of a TurboGears 2.1 app with SQLAlchemy 0.5.8, btw.

Documentation for how to setup the mapping isn't particularly helpful about best practice for ...

Continue reading

Cross-database relations in SQLAlchemy?

Set out to make an app use two different databases today; one for a high-write-volume set, the other for low-volume mostly-read set.  It's a TurboGears 2.0 application using SQLAlchemy.  I'd half-way hoped for "tell these tables they're in that db" and then have the ORM figure out all the magic of which session to use ...

Continue reading

Dreaming of deterministic profilers future...

Some things it occurs to me that I'd like to see in a new Python profiler:
  • High resolution, accurate, captured data (obviously)
  • Trace every line executed (yes, every line)
  • Trace every call operation, i.e. CALL #32 of function #45 took 0.0003s and have a record of CALL #32 which details what *it* called, its timing, ...

Continue reading

New release of globalsub is out

Globalsub is a mechanism to allow you easily replace an object throughout your interpreter.  This is normally done to make it easier to test.  You can stub out objects which have side effects for most of your tests and just test those functions in carefully isolated environments.  It comes from the Mocker codebase originally, but ...

Continue reading

KDE seems to have stabilized... I suppose I should break it

After the hiccups of a few days ago where suspend/resume didn't work for a day or so, my laptop seems to have settled into a happy place.  Suspend/resume is now working, and I haven't had any hard-hangs where the machine becomes unresponsive (which was why I upgraded to the backported KDE 4.7.1).  Which is to ...

Continue reading

The PyCon Presentation Proposal Deadline is Upon You!

You don't need to be an expert on something.  It doesn't need to be something obscure.

Talk about how to use a debugger effectively.  Talk about how using a debugger is a crutch for those too weak to use TDD.  Talk about how TDD is a crutch for those too insecure about their code to ...

Continue reading

Ugh, lost suspend-resume on the laptop...


Since updating to Ubuntu 11.04, my Thinkpad has, at long last, been able to resume.  Unfortunately, it has also suffered lots of X crashes/hangs from KDE software.  That's kinda frustrating, so I decided to try updating to KDE 4.7 on 11.04, to see if that was more stable.  Unfortunately, the machine is back to never ...

Continue reading

Find Equivalent Timezones with pytz?

Ran into a little problem today that requires being able to see what timezones (of the Linux-ish America/Toronto, America/Montreal variety) are equivalent to one another.:

#! /usr/bin/env python
"""Stupid little script to find equivalent timezones"""
import pytz, pprint, pickle, datetime
all_timezones = [pytz.timezone(name) for name in pytz.all_timezones]
def search():
now = datetime.datetime.now()
set = {} ...

Continue reading