I have a real entry, but i'm going to do some more work on it before posting.
Had a realization today that one of the most important qualities i'm looking for in a job isn't "small company" or "casual environment". It's "no PowerPoint presentations". I can handle lots of things, but i flatly refuse to make ppt presentations (by which i mean "slideshow presentations", ppt being the standard, and easiest to deride).
I'm serious. It's not that i refuse to explain things to people -- i'm happy to do that. Give me a whiteboard and a half-hour, and i'll happily convey the concept of a TCP stack to the most unenlightened of board members. But i draw the line at reducing the problems of a department to three vapid, overgeneralized bullet-points, then following up with three equally vapid and overgeneralized solutions.
I realize that i'm probably painting an unfair portrait of the whole slideshow presentation thang, and i'm sure that, somewhere, they are being used for genuinely useful and appropriate exchanges of information. But that's an assumption -- i have no proof.
On a slightly less rant-ish note, i had the wonderfully cathartic experience of expounding on the sound capabilities of the Apple ][ earlier today on a listserv. I'm convinced i've weirded everyone else out, but it was good to type up some old 6502 assembler. Purges the soul.
Ah, so i've formulated a new theory on the young/old boundary. It's an esoteric thang, and really the only reason i bother mentioning it here is because i think it might apply to software maturity.
You see, the usual idea is that you become old when you're disillusioned with the ideals you had when you were younger. So, if you can look back five years and say, "Wow, i actually believed that. How cute.", then you're probably old.
I propose, however, that you're still young at that point, or at least at some not-young-but-not-yet-old state. Because, i think, there's a point at which you look back five years and think, "Yep, still right." That is when you're old. When you no longer innovate in your own value system.
Ok, ok, it's just a theory, and i haven't really thought it all the way through yet (and, ideally, the theory will obsolete itself in five years as far as i'm concerned). But i think there's something valid there, about how youth is the time when you grow, and growth is about making mistakes (or at least refining truths). And i think there might be a parallel in software development.
You know how it is, when you first start a project, and you whip through the first few iterations before realizing that some of your base assumptions were way out there (whether you whip through it in code, or on paper, or whatever, you usually get through the first few times pretty quickly). Then comes a period of time when you've decided on some basics, but everything else is in flux (should the API be functional or OO, how to group the code, which features should be extended...). Usually that period of time (at least for open source projects) is when the project has hit the "real world", and the changes are made to respond to real needs. That's when a project is really maturing, but can still change drastically over the course of a few months.
At some point, though, that kind of rapid change slows down, or even stops. Eventually, everything's in place, and the only new development is for bugfixes. Sometimes this is a wonderful thing, a venerable perfection, like TeX, or sh. It solves the task given to it with aplomb.
Sometimes, it's old senility, like sendmail, or the Windows Registry. Somewhere along the line, it ceased to be a process of refinement, and became a hack, stretching to fill a taskspace not originally part of the plan.
Hmmm.... i'm no longer sure where i'm going with this, so i'll stop. Analogies only carry you so far before you notice their deficiencies.
But, just for the record, i'm still right. :P
... at least for another couple years ...
The job search continues, and i seem to have stepped in a recruiter. Ugh. Although i like the benefits of employment, i find the whole business of becoming employed rather distasteful.
Work on Hume is continuing well, and i believe i've finally settled on an appropriately flexible framework for the pieces themselves. I need to verify that Python is capable of that kind of function-as-data thing, but i have a few workarounds if not. Things will pick up again when i bother to fix my home desktop.
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!