Wednesday, June 24, 2009

The open source minefield

Needed to write a GUI, nothing fancy just some data binding. Tkinter is included within Python, great! Spend a bunch of time learning tkinter and its quirks, then I am done. Now to package my work of art with py2exe to deploy under windows .... splat.

Posted messages to the py2exe mailing list and waited, and waited. I suppose I could work it out, put in some hurclian effort and figure it all out. Trouble is I just don't have that much time, and the interface wasn't that complicated. Answer, lick some wounds, rewrite the interface in HTML and write a simple web server based on one of the activestate recipes.

Debugging Python threads

My understanding is that because pythonwin runs in its own thread if you spawn a thread - you can't debug it.
I have an application that runs 2 background threads. You can make special classes for testing the application outside of background threading, but that just gets confusing. I really don't want to be creating a whole bunch of code just to be able to debug what I already have.

I was really getting frustrated with the whole process, until I discovered winpdb. It is bloody mavellous, it really needs to be bundled into the activestate distribution.