March 18, 2004
Special Sauce in GTK+ 2.4?
I finally got around to pulling Fedora Core 2 Test 1 last weekend because I'm a good contributing citizen and all that. It looks nice thus far, no problems that I wouldn't expect. Feeling bleeding edge I went ahead and decided to sync up with rawhide, which was also pretty painless. Today I had 50 or so updated packages come down including the just released GTK+ 2.4.0. I restart X and come back to find what seems to be an enormous increase in perceived responsiveness of the entire GNOME environment. I usually run with the stock Bluecurve theme because I really just don't care that much about themes as long as they are tolerable and don't bog the system down. However, on this day, with GNOME acting all balls to the wall, I decide to load up the Milk 2.0 Theme [screenshot].
I've been envying a guy at work who lugs his PowerBook G4 17" into the office everyday--the panther GUI really does have amazing style and polish. I take the scenic route, passing his cube, to the coffee two or three times a day; sometimes, when he's not around, I admit I walk up and rub it softly and promise to come back for her when I have an extra $3,000 laying around.
Milk is pretty heavy on the pixmaps. I tried it for about 10 minutes about a week ago and was just completely disappointed at how much it slowed things down. Not now. I'm back around the same responsiveness I got with Bluecurve under GTK+ 2.2, which wasn't bad by a long shot. It's just kind of amazing how you can get serious system-wide increases by optimizing in sweet spots. We should be looking for more of these.
URLGrabber Project Page Up
Michael Stenner and myself have been working on an advanced URL grabbing package for python appropriately named urlgrabber. Michael started the project as part of yum and later decided that it should be split out into its own package. I was lucky enough to be in the right place at the right time with Michael proposing some serious redesign and enhancements to the project and me wanting to write as much python as possible.
>> Continue reading "URLGrabber Project Page Up"February 24, 2004
My First Yum Commit
Seth lost his mind over the weekend and gave me commit access to yum cvs.
Stoked. :)
February 22, 2004
IP Costs Millions of Information
(The title is not a mistake; that is what I meant to say)
I've heard many arguments for why Intellectual Property is bad. Most have the word "freedom" or "unfair" in them. In general most anti IP arguments are from the perspective of how big business is infringing on the rights of individuals or this great country or whatever. But here's an argument that you probably haven't heard that is a bit different: IP is expensive for businesses and the cost is rising steadily. I don't mean that it costs a lot to register a patent or copyright, or even that it costs a lot to litigate when IP is infringed upon. I am sure all that is expensive and you might make an argument that it is not worth it based solely on those aspects. However, those costs might be nothing compared to the amount of overhead businesses incur to protect IP at the operational and security levels.
>> Continue reading "IP Costs Millions of Information"February 18, 2004
Learning Python As You Go
A co-worker asked how global/class variable scoping worked in python today. Specifically, how to access globals/class variables from within a class method. I told him what I knew (global keyword.. yadda yadda.. self.. yadda yadda..) and he was satisfied. Then he asked, "where did you read that?" I thought for a second and realized that I had not really ever read much formal documentation on variable scoping and that I must have picked most of what I knew up from looking at code or just playing around. "What do you mean playing around?" he wants to know. "Well," I said, "I just try different stuff and see what happens." It occured to me that Python is excessively easy to pick up as you go because it is easy to try things quickly, measure results, and draw conclussions. Some people call this "The Scientific Method" or something. The conversation ended shortly after but I didn't get the feeling he took me seriously on the trial and error thing. Do most programmers feel that formal documentation is a requirement for learning? I sure don't. I'm positive I learn as much, if not more, scientifically than I do reading documentation. My python-fanboy column for today will thus be on how python lends itself well to those that prefer to learn scientifically as opposed to dictorially [is that a word?].
>> Continue reading "Learning Python As You Go"February 16, 2004
ET Covert Ops Rocks
I played way to much Enemy Territory [flash, eww] this weekend. I was hoping to get some Schwag work done but I guess I just needed a mindless weekend.
>> Continue reading "ET Covert Ops Rocks"February 14, 2004
URLGrabber Merged
We finally got the two URLGrabber source tree's sync'd up in CVS. Michael to audit and then we should be able to push out a stable 0.3 release for Seth. There was also an interesting bug found in current yum related to urlgrabber today. The user:pass parsing for authentication in URLs wasn't unescaping before it set values into the AuthHandler. I need to remember to log this in bugzilla and push up a patch for Seth.Meet the Prez
The Daily Show Feb 09, 2004 had a hillarious crack on Bush's Meet the Press interview, which I haven't seen in full yet. From what I've read, they should have just aired the interview on the comedy channel to begin with.
Here's some video (MOV).
February 13, 2004
Schwag Decisions
I need to make some decisions with what to do with Schwag. There are two real directions and I just cannot decide which I want to take. Part of me thinks I should keep it real simple and make it a planet.gnome.org like aggregator that would be used as generation tool for multi-user / public sites. The other half of me really wants to develop this personal portal thing. This goes more in the direction of a single-user, desktop aggregator/reader that has really strong aggregating and reading facilities as well as the ability to act as a bookmark manager type thing.
>> Continue reading "Schwag Decisions"February 12, 2004
Back into URLGrabber
I spoke with Michael and Seth a bit yesterday about getting back into a groove with URLGrabber. I finally put together a TODO list today and sent that out to them. It would be nice to get this stable for Seth's yum work.
Seth teased me with suggestions of trying to get some of the urlgrabber/byterange stuff into python core when we started. Running back through the code had me thinking that a lot of the FTP byterange stuff would fit better as a urllib(2) patch anyway.
February 02, 2004
Schwag - A Syndicate Feed Normalizer / Aggregator
I've been working on a little Syndicate Feed Reader in Python that I am calling Schwag (don't ask, don't tell), although the name is more of a place-holder for some other really cool name ™. It is less of a Reader, really, and more of a Normalizer/Converter/Aggregator that has some light reading facilities. It uses Mark Pilgrim's Ultra Liberal Feed Parser for support of all flavors of RSS / RDF / Atom feeds (even the bad one's). The feeds are normalized into Atom 0.3 format and dumped to disk. There is a light templating system that allows one to apply XSLT [1] transformations to the normalized feed to produce different representations (e.g. RSS 0.9x, RSS 1.0 / RDF, RSS 2, XHTML, etc). So, the basic idea is to have a feeder component that manages retrieval and normalization to a common format and then a templating component that provides pluggable representations of the normalized feed. This may sound semi-complex but the code is fairly simple as the feed parsing and XSLT machinery is handled by Mark's piece and libxml/libxslt, respectively. My code just kind of introduces the two to each other.
>> Continue reading "Schwag - A Syndicate Feed Normalizer / Aggregator"