Python interface stuff

I’m currently working on a laaaaarge and very complicated database system – a real beast. I think it’s about time I wrote some nice GUIs to help me wrestle with this beast… You know, drag myself off the command line and into the 1980s and all that. Naturally, I’m working in python, and since I’ve inherited some Tkinter based code, and it looks reasonable, I think I’ll try that out.

These things must be multi-threaded, because there are some very long-running operations taking place. Remembering I’d seen some good stuff online on this very task, I fired up the googlesaw, and found the following: A short example of Tkinter and threads by the venerable Fredrik Lundh, the classic (in that I’ve met it before, back in my Frontier days) Threads, Tkinter and asynchronous I/O from the ActiveState Cookbook (OK, I’m not exactly doing async I/O, but you could consider long-running database ops from that point of view), and finally (for now) a complete Python Tkinter sample application for a long operation, which pays attention to progress bars and the like.

Writing the words “ActiveState Cookbook” reminds me that I’ve got “The Python Cookbook” in dead tree form on my bookshelf. Maybe I should look at that too… Yep, there are a few Tkinter bits and bobs in there (and some database stuff I should probably check out). Groovy.

Bonus level, this looks cool: A Sinus Plasma, using Pygame. That takes me back to my Amiga days, when I used to watch these crazy colourful “demos” with swirly sine waves, the precursors of all the nifty visualisation plugins for winamp, itunes, etc. I always wondered how it was done – apparently it’s bloody simple. :)