« January 4, 2009 - January 10, 2009 »
January 8, 2009
Python web service fun

For a long time I've wanted to put together a web service to host on my site. I always had modest goals in mind; start with a service to spit out movie lines, favorite lyrics, or quotes. I never got around to implementing them though, even when I was working on WSDL support at Netscape or flat-out investigating web services for opportunities there. I even put together some tools to auto-generate all the files and configuration you need for a Java based web service. (man what a pain!).

Today I finally got an XML-RPC service running for the first time, in Python. I've been playing around with it on the train to and from work, off and on, for a week or two. Today I finally had a chunk of solid time to dig and figure out my problem. (as it turns out, it was the lack of an actual procedure call -duh). While doing it I got to play around with the SimpleXMLRPCServer and BaseHTTPServer (because I thought I had to do something really tricky, which I didn't). In the end I got my little helloworld web service written and functioning. I'll post the code and maybe even host it on jgaunt.com for fun.

Part of what may have kicked me into gear to get this finally written was the end goal. This time around it's not just a silly web service. I have in mind a pretty complicated integration with bugzilla to allow me to do more tracking of the Songbird eng team. We have an agile shop going and as lead I need to keep a close eye on the bugs and having a tool that is written with that in mind should really help (versus the standard bugzilla query-based interface).

In other Songbird news I'm having a really good discussion with a couple of Mozilla engineers (:bs and :rstrong) over in bmo bug 472606 about appname and distributionId and the effect of changing how those pieces fit in to the application puzzle. I have an idea of what I think would work for Songbird, but I don't think Mozilla has the same requirements for customization (or end goals), so I may have to adjust my vision of what an ideal solution will be, hopefully we can hash our way into a solution that works for both parties and is backward compatible with what they need (we don't have anything to be backward compatible with!).

Posted by redfive at 2:13 PM in Web
Comments (669) | TrackBack (0)