Older blog entries for robocoder (starting at number 168)

2 Mar 2005 (updated 10 Jan 2006 at 20:56 UTC) »

Since my last post, I got married (to Elizabeth) and I/we bought a new house. This being my (our) first house, I'm (we're) getting a crash course in home ownership.

Also off-topic: after shovelling the snow from our driveway and clearing an additional 4' extending into the road (thinking this would make it easier to drive in/out), the city snow plough came by and left a 4' wide x 20' long x 1' high mound of packed snow, 3' away from where my driveway ends. *grumble* I hate snow.

On the coding side of things, I continue to cobble together Perl scripts to scrape data from web sites of personal interest ... time permitting. :P

One particular site recently switched to text images (one image for each letter), each image having a unique (likely dynamically generated) URL (i.e., if the letter 'A' appears twice, the first bitmap 'A' has a different URL from the second bitmap 'A'). As a result, users are subjected to longer page load times (i.e., can't fetch cached images), while the site faces increased net traffic. In addition, the IMG tag contains no ALT or TITLE attributes. Fortunately, this change only applies to a small area of text on the web page, and scraping it doesn't require OCR. And while the ADA/Section 508 doesn't apply to the web site, I still think it is a bad example of web design. It is 2005, right?

We opted to put together our own compilations for the wedding reception. This presented an opportunity to try out, compare, and contrast PureTracks and iTunes.

  • PureTracks:
    • + Downloading seemed faster (e.g., up to 4 tracks simultaneously).
    • - Song preview sometimes didn't work (and not at all with FireFox).
  • iTunes:
    • + Larger music selection.
    • - Despite NOT choosing iTunes as my default player, it hijacked ".mp3".
    • - Store access was sometimes slow or inaccessible.
    • - Meaningless error messages with cryptic numbers (e.g. 502).
  • Biggest gripe: lack of inter-operability between Windows Media Player and the iTunes app.
  • Ugliest workaround: burn music to CD from one app and rip with the other.
  • Minor nitpick: neither service had "Kung Fu Fighting" (Carl Douglas) or "Wake Me Up Before You Go Go" (Wham!).

Lately, I've been giving more thought to peopleware issues (not necessarily in a software development environment). For example, when strong emotions are involved, people often don't think logically or act rationally. This got me thinking about the mental health of an organization. How is individual concern or disagreement voiced? How often does conflict erupt into moments of heated argument? How is conflict managed? Is it win-win, win-lose, or lose-lose? What are the ill after-effects? What lingers beneath the surface vs what others sees, including, but not limited to, motivation, productivity, behaviour, and attitude?

New Year's Resolution: find more time for open source software development. But with the wedding only a month away, I've been limited to tinkering with osCommerce for a prospective client project.

A web site visitor commented on not being able to find my resume online. Why don't I post it? Well, for starters,I've managed thus far to gain employment without doing so. And then there's the privacy issue and identify theft concern. But I would not be surprised to learn that there exists -- somewhere out there -- a resume builder with an option to aggressively filter the content (e.g., remove personal contact info, change company names to generic descriptions, remove dates, etc).

Year 2005 problem: my bank's online banking system won't accept future dated bill payments. =P

You have selected an invalid payment date. Please select a valid date.

{Result #U305}

They've since added a notice to the bill payment form:
The future-dated payments feature is temporarily unavailable. We apologize for the inconvenience. Same-day payments can still be made.
I suspect the problem will fix itself tomorrow...
30 Dec 2004 (updated 30 Dec 2004 at 07:13 UTC) »

Catching up on my backlog of periodicals, I read with interest, "Outperforming LRU with an Adaptive Replacement Cache Algorithm" (Computer, Apr 2004).

Hmm... I see (or more accurately, searched and found) PostgreSQL and Jakarta Turbine JCS developers already implemented ARC variants/derivatives for their respective code streams.

22 Dec 2004 (updated 22 Dec 2004 at 07:43 UTC) »
The Bleeding Edge

Updating my server to Apache httpd 2.0.52 and PHP 4.3.10 (Woohoo...my first time using "rpmbuild -tb".)

Woes:

This was painful and unproductive. ("Is Apache 2.0 Worth the Switch for PHP?")
Warning: *** RANT ALERT ***

There is a lot of useful and freely redistributable source code out there, and if the code does what it says, and does it well, does it matter what the source looks like?

An emphatic, "YES", I say. First, we all have requirements/ expectations/desires that may not match the author's requirements/expectations/desires. Second, code, in general, rots, though not necessarily now or tomorrow. Unless the goal is to obfuscate, developers need to make some (quantifiable?) attempt at maintainability (i.e., for perfective, adaptive, and/or corrective maintenance).

I ran across this snippet of JavaScript the other day ("dd" is the difference between two dates in milliseconds). Optimists might call this an "opportunity for improvement", but "ugly", "smelly", and "WTF?!" come to my mind.

dday=Math.floor(dd/(60*60*1000*24)*1)
dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1)
dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1)
dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1)
We can all talk up the beauty of refactoring and elegant optimizations, but the $#*% rolls downhill when we're fixing someone else's code.

Am I alone in thinking that cathedral-style development is, more often than not, a pre-requisite to bootstrapping a successful open source project? From what I've seen, bazaar-style coding favors a project that has a foundation (design & code), while bazaar-style design (from the ground up) often falters.

Still ... cathedral-style development has its challenges too. Time management, [self-]motivation, enthusiasm/inspiration/passion ... are (arguably) all essential, yet easily undermined by any one.

I hope I didn't spend more time on the wed-site than on actual wedding planning...but Elizabeth and I have a wed-site up now (under various domains, including www.anthonandelizabeth.info, www.elizabethandanthon.info, and www.mywedsite.info). More pictures to come. (Yes, the gift registry is still under construction.)

159 older entries...

New Advogato Features

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!