Archive for February, 2006

The human side of the web applications

February 24th, 2006 | Filed under Interface design

Frederico’s spot-on when he says that Flickr’s frequent error messages are a lot easier to deal with because they seem human:

How many times have you seen Flickr fail? I have seen it happen quite a few times, but something behind the “Flickr is having a massage” message, shown whenever someone tripped on a few cables, keeps me comfortable - it lets me know my photos and those of my friends, are in good hands. It will all be okay, even when something has clearly gone wrong.

I like Flickr’s (and I paraphrase), “Whoah Nelly, hold your clicks! The server’s running HOT right now!” error message which is WAY more effective than “HTTP 500 Internal Server Error.” Just goes to show a little editorial goes a long long way.

The human side of the web applications [WeBreakStuff]

FileChucker: AJAX File Upload Script with Progress Bar

February 24th, 2006 | Filed under AJAX, Perl

FileChucker’s a $15 Perl script that provides an Ajax-y file upload interface for your web site, complete with progress bar. Haven’t tried it, but looks pretty cool.

FileChucker: AJAX File Upload Script with Progress Bar [Encodable Industries]

AJAX Unit Testing

February 15th, 2006 | Filed under AJAX, Unit testing

The words “Ajax” and “Unit testing” spoken in the same how-to article make me all warm and tingly inside. If JSUnit is actually workable, I’ll have a lot less mental blockage around dev’ing Ajax functionality for sure.

AJAX and Unit Testing - it’s time to mingle [Jim Plush’s Programming Paradise]

The Trendiest Web2.0 Page on the Net!

February 14th, 2006 | Filed under Design

There are some aspects of contemporary web (web2.0?) design which are duplicated across many sites…

TrendyWEB | The Trendiest Web2.0 Page on the Net!

Yahoo! UI Library

February 13th, 2006 | Filed under Javascript, DHTML, AJAX

The Yahoo! User Interface Library’s got a bunch of open source Ajaxy UI components, including a Calendar control, Drag and Drop, a Slider and Tree View. Neat.

Yahoo! UI Library

MovableType and > 250(0) categories

February 9th, 2006 | Filed under Javascript, MovableType, Greasemonkey

Warning: Rambling about work ahead.

I went off on MovableType’s atrocious performance while posting to Lifehacker awhile back. Turns out that one of MT’s biggest performance pain points is the huge number of possible post categories the Gawker sites (including Lifehacker) use - a number that goes well into the thousands. (Why, you ask? Well, narrow topic silos and focused category pages make for good sponsorship opportunities and highly-targeted text ads and great Google-fu, and we’re an advertising-supported business.)

Anyway, we use a plugin for MT that turns categories into “tags,” allowing you to enter categories in a del.icio.us style input box versus the clumsy category dropdown. “Go nuts with tags!” was the editorial edict. So we did, adding categories at a clip. Sadly, we were shooting ourselves in the foot. Rendering the interface with a list of hundreds of tags slowed things considerably, specifically, the “suggest a tag” Javascript on the New and Edit Entry pages. Apparently MT’s not built to handle more than 250 2500 categories per site, and we’re the first to push this limit. (Buh? 2500 is a lot more reasonable than 250. Tx Anil.) Also, apparently MT’s database interface makes what only needs to be one query for one recordset one query PER CATEGORY - thus, hundreds of queries per page request, hence the slowdown. (As a developer, can I just say - WTF, 6A? Anyway.)

Gawker’s solution was to remove the helper Javascript from the MT interface and have us enter tags cold; for me and my co-editors this was unacceptable, given how prone we are to typos and crazy variations of the same tag (”Mac,” “OS X,” “Mac OS X”, “Stuff we like,” “Things we like,” “Books”, “book,” etc.)

Fortunately for Gawker, I don’t have any access to the MT installation or template editing/creation for Lifehacker, so I was a bit handcuffed, not able to do much except complain loudly. Finally, to stop the tag mess from getting worse editorially, I wrote a Greasemonkey script which includes the static category list Javascript from afar on those pages, which is super damn fast AND gives us back the past tag helper. I’d publish that script but it’s got a little too much information about our server setup and is specific to the tags plugin, so I won’t. But you get the idea.

If we can get a category template of that Javascript include publishing every few hours and including newly-created tags (the existing one doesn’t update with new tags, boooo), life will be good.

Now back to our regularly-scheduled programming. (Ha!)


Enable image hotlinking from LiveJournal subdomains

February 9th, 2006 | Filed under Apache web server, mod_rewrite, .htaccess

A friend of mine disables image hotlinking from her site using mod_rewrite, but she also syndicates her weblog to LiveJournal, so she allowed livejournal.com to hotlink with her .htaccess file, like this:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?livejournal.com.*$ [NC]
RewriteRule \.(jpe?g|gif|bmp|png)$ images/stealingbandwidth.gif [L]

But recently LJ changed their URL scheme to subdomains, so all her friends were seeing her “You’re stealing bandwidth!” image when they read her journal from username.livejournal.com.

So, we modified her .htacess mod_rewrite rule to:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://([a-zA-Z0-9_]+\.)?livejournal.com.*$ [NC]
RewriteRule \.(jpe?g|gif|bmp|png)$ images/stealingbandwidth.gif [L]

And in the process I was once again reminded how the simplest of regex’s can still completely kick my ass.


Ajax tutorial linkdump

February 9th, 2006 | Filed under Reference, AJAX, Tutorials

A few Ajax links I’ve been hoarding:

Updated with one more link.


Clearbits - CSS based icons

February 9th, 2006 | Filed under CSS, Icons

The Clearbits icon set can be styled and colored using CSS. Very cool… and what looks like a very extensive range of icons. I only wish the rounded corners didn’t look so pixelated in Firefox on WinXP.

Clearbits [Some Random Dude]

Current style in web design

February 9th, 2006 | Filed under Design

Interesting summary of the current state of web design.

Current style in web design [Web design from scratch]