Favorite icons (a.k.a favicon.ico) are cool. IE recognizes them when you save bookmark a page, Mozilla based browsers automatically request them. They're a nice finishing touch on a website, but not something that's usually scheduled or requested.
If you're involved at all with websites, there's a reasonable chance that your first e-mail of 2005 will be marked with a red bang (!) and have the following subject line:
Think your smart? Well your not. Take this quiz and you can know that your dumb.
Look Around You - Maths Quiz
If you still think your smart than you should also take this programming quiz. To know what kind of programmer you are:
SecretGeek - What kind of programmer are you?
[heard about Look Around You from the staff of Shaff.com]
I'd really like to believe this is a joke...
One of my small contributions to the Monoppix project has been setting up hosting for the ISO. As we expected, distributing an ISO that's even remotely popular requires some serious bandwidh. Since the Monoppix 0.2.2.3 Preview Release was posted in August, it's been downloaded 11,067 times. At 404 MB per download, that's 4.47 TB, over 1.1 TB per month.
Fortunately, we're using Freecache so I don't have to pay for all that bandwidth. Freecache handles all that, for (as the name implies) free.
There's no setup, either. Assuming the link to the file was http://127.0.0.1/files/bigfile.iso, you can just link to it like http://freecache.org/http://127.0.0.1/files/bigfile.iso and you're set. The first time someone clicks on the link, Freecache picks up your file and distributes it to cache servers while the download is going on. All future downloads come from the cache servers, so you only need the bandwith to cover one download.
You can use it for files from 5MB to 1GB.
That URL is a bit ugly, but you can pretty it up with a free service like Shrinkster or URL123. The official download link for the Monoppix ISO is http://monoppix.url123.com/download, but it just logs the hit and pops over to Freecache. I like URL123, by the way, since it lets you set up subdomains like yourname.url123.com.
More info on Freecache here: http://www.archive.org/web/freecache.php
And if you just want to watch a cool animated GIF that (sort of) explains it, look no further:
 Monoppix is a GNU/Linux distribution which includes Mono, XSP, and Monodevelop, and runs completely off a CD. It allows you to get familiar with Mono development in Linux without installing anything on your computer. Monoppix was based on Knoppix and Miniknoppix and was developed by Roiy Zysman.
 It's possible that some segmented download utilities inflate these numbers a bit, but regardless we're still talking about Terrabytes of bandwidth I don't want to pay for.
I share a home computer with my wife and 3 year old daughter, Rosemary. As a computer nerd, I can't go below 1280x1024 on the screen resolution, while my wife likes 1024x768 and Rosemary uses 640x480.
Windows XP doesn't support per user screen resolutions: http://support.microsoft.com/?kbid=832295
Turns out there are some freeware products that do this. I checked out a few and settled on XPKeepPerUserDisplaySettings. It didn't seem to "take" the first time I made the settings for each user, but now it works like a charm.
 Rosemary only uses 640x480 because most children's computer programs are so poorly written they only work in 640x480. She amazes me - no problems at finding the little red X on a form at 1024x768. When her favorite site, www.uptoten.com, added a tiny link so parents would have to log their kids on and just break down and buy some non-free stuff, it took her a 30 second lesson to learn how to find the little "no thanks, take me to the free site" link. I can't wait until she's 4 and can take over BIOS upgrades for the family.
Back in April I wrote a very basic console app which would (theoretically) allow you to play Shoutcast Playlists (PLS files) in Windows Media Player. I say theoretically because in practice, I've been fielding a large amount of support requests from hapless users having trouble setting up the file associations, checking if they have .NET installed, etc.
I've re-released it with an installer and some improved error handling thrown in for good measure. Download it here: http://www.codeplex.com/openplsinwmp
The installer associates Shoutcast Playlist (PLS) files with OpenPLSInWMP.exe, which digs through the PLS file for the MP3 server info and then starts up Windows Media Player with that stream. It shows up in the Add / Remove Programs list so you can uninstall it easily if you are insane.
The end result is that Windows Media Player plays PLS files. Just in time for
Christmas Christmahannukwanzafestivusspecial chilly family togetherness season, too: SomaFM has the X-mas in Frisco stream going.
[UPDATE: Fixed problem with icon association. Download setup from same location, new version is 1.0.2.]
Software Architect / Visionary / Philosopher Michael Earls, while working on a contract far from home in Atlanta, muses:
We grow when the people around us have greater expectations for us than we do for ourselves.
To which Matt Ranlett retorts:
I expect you to grow to 6 foot 5 before you come back.
Greasemonkey is a Firefox extension which lets you to add bits of DHTML ("user scripts") to any webpage to change it's behavior. In much the same way that user CSS lets you take control of a webpage's style, user scripts let you easily control any aspect of a webpage's design or interaction.
It's kind of a more organized approach to site-specific bookmarklets. I've done some right-click context menu extensions in IE to work around problems / annoyances in intranet apps before; this would be perfect for that kind of thing.
There are already some useful scripts available:
- Make sure that all URLs displayed in the browser are clickable links
- Improve the usability of a site you frequent (AllMusic)
- Route around common and annoying website bugs
- KillBlank - converts target="_blank" links to use current window
I've been pretty silent on my blog lately due to time pressures at work. That's easing up a bit, and I'm very eager to start posting again, about (1) what I've learned on this project, and (2) other things I've been wanting to post about but haven't had time.