BlogBridge 3.0

BlogBridge, my most favoritest RSS aggregator app, was bumped to version 3.0 this week. Lots and lots of small improvements, but most of the big changes are under the hood. Performance rocks (it totally doesn’t feel like a Java app – it feels like any other native application), and things like syncing feeds and preferences with the BlogBridge service (for accessing from other machines, or publishing guides as OPML, or just as backup) is nearly instantaneous.

It’s also got support for notifications – using Growl on MacOSX and whatevertheheck Windows uses on that side of the fence. Handy. Now… If only they’d get that open-link-in-background-browser-window thing working, so my browser wouldn’t pop to the front every time I open a link…

I totally recommend BlogBridge to anyone looking for a way to easily/effectively manage a LOT of RSS feeds. I’d simply drown under my subscriptions without things like star ratings and smart feeds. And the built-in OPML/reading-list feature is simply killer.

They’ve released regular installer versions for MacOSX and Windows, as well as versions for Linux and Java WebStart (if you use the WebStart version, it can auto-update for you).

If you’ve already used BlogBridge, be sure to sync all of your guides with the (free) BlogBridge service before upgrading, as they’ve optimized the local database file format, which may blow away your previous database. Syncing seems quite bulletproof, so it’s a good habit to get into anyway…

I’m toying with the idea of doing a screencast to show just how quickly I can check all of my feeds. I can seriously check all 400+ feeds in about 10 minutes (or less).

DOPA is like locking your kids in the basement

I’ve been thinking about the moronically shortsighted DOPA doowackie that got passed South of the Border. Basically, if I understand correctly, it attempts to protect children from online predators (which is a Good Thing To Do™). But, it wants to do this by banning minors from websites that let them contribute. They won’t be able to use MySpace. Or Blogger.com. Or WordPress.com. Or Flickr.com. Or any other social “Web 2.0″ stuff. Kids will be protected by locking them out.

Which is akin to protecting your children from harm by locking them in the basement.

Sure, they’ll be safe, but they’ll be completely isolated and unable to function in a connected, online world once they reach the arbitrarily decided “safe” age of 18 or 21 or whatever silly number got picked from the hat.

You don’t protect kids by locking them away from danger. You cripple them.

And, this assumes the clever kids aren’t aware of anonymizing proxies, or something as difficult as clicking the wrong/right box on a web form, to gain access to verboten sites. Groups are working hard to provide these freedom tools to the oppressed civilians of China, unfairly locked behind the Great Firewall. While simultaneously allowing their government to impose the same arbitrary limitations on their own children.

Thankfully, there has been no word of a Canadian copycat legislation. Yet.

There are better ways to protect kids. The best, and most effective (but most difficult) way is to actually educate them. If they are aware of the issues (in whatever age-appropriate manner) they will be better able to safely cope with dangers. There’s already a handy group forming around this issue.

It’s better to teach kids to swim, than to trust a fence around the swimming pool. Or the lock on the basement door.

Power issues at Dreamhost (i.e., blog outage)

It’s a total non-issue for me, but Dreamhost (the cool company that’s hosting my blog) is going through some rough times in their data centre at the moment. Apparently the heat wave in California is wreaking havoc on their power situation, causing a power outtage. The generators kicked in, but there was a short. And a fire. Hell broke loose. (the mention of the fire has disappeared from their Dreamhoststatus.com blog, so maybe it wasn’t that bad…) So, my blog was down for awhile. Really no big deal. If you can read this, it’s back up. I’m guessing there may be periodic outtages while it’s sorted out.

David noticed and emailed me within minutes of the blackout – well before I would have. Actually, he seems to notice every outtage or hiccough on my server well before I do…

btw, Dreamhost is so unbelievably cool as a hosting company. I accidentally discovered that they have installed Appleshare services on my server (perhaps it’s standard on all of their servers?) – I can have my hosted directory mounted on my desktop, and take advantage of Finder-y goodness rather than resorting to FTP or shell connections for everything. Nice. So, I have a 20GB (that’s GigaBytes) volume, accessible anywhere, via FTP, AFP, or shell connections. They also offer WebDAV for directories (which I don’t use), and Subversion, and one-click installs of every web app I could ever want. And the shell account is fully enabled, with access to emacs, cron, rsync, lynx, etc… not like the silly locked down accounts some providers offer (what? we had no idea you’d want to edit files. we have to enable emacs for you… mysql command line access? really? why would you want that? etc…)

I’m babbling. Dreamhost is an insanely cool hosting company. I’m extremely happy with the service they offer, and this minor downtime is trivial (and unavoidable, given the fragility of the North American power grid – does this scare the crap out of anyone else? A fuse can blow in southern Ontario, and drop the entire Eastern seaboard into darkness. Prime targets. yikes.)

Dabble is a Drupal site!

Dabble was just pushed into full public mode, after being in a beta (does anything ever really leave beta?).

Looks like a pretty cool site – the main goal appears to be a social network growing around videos published around the internets.

It is a pretty thorough implementation, completely done in Drupal. It looks like it’s pretty heavily depending on a few modules in addition to the core (namely, video, playlist, tagadelic, buddylist(?), and likely a few others). The theme looks like a complete custom job, and the only thing that tipped me off was the use of “node” in some urls. Digging deeper, I found the telltale drupal.css file on the server (but not used in the theme…)

In all, a pretty impressive application of Drupal to launch a large social network site. There are currently over 300,000 video nodes in the database, with an unknown number of users. I’ll be keeping an eye on this one to see how it scales…

Cochrane Hill Sunset

The upside of this heat, combined with the smoke and haze from all of the wildfires, are some pretty amazing sunsets. I drove up the highway to Cochrane last night to catch the sunset, and wound up shooting 207 photos in under an hour. I made myself delete all but 5 of them, which was much harder than I thought it would be.

I shot most photos in fine large jpeg mode, but shot many in RAW. The RAW shots are much nicer, with all of the rich shades of orange and red being captured more faithfully. Here’s one I took just after the sun sank below the horizon:

That was shot RAW, and converted to JPEG using Digital Photo Professional, since iPhoto’s conversion was painfully washed out.

Here are the other 4 survivors, all shot in jpeg:

Hot. Damned hot.

Woah. What a heat wave we’ve had the last couple of days. No doubt about global warming any more. This was taken outside my house in NW Calgary about 10 minutes ago (just before 3:30pm):

That’s 47.2?C or 117?F. Odds are, the temperature will rise a bit more in the late afternoon heat.

47.2?C. In Calgary. Canada. My igloo is melting. It’s 29?C inside, with all fans running at full blast. No AC, because it’s not worth the cost for the 1 week per year it’s needed.

But, at 15% humidity, at least it’s a dry heat. Ouch! Alan, that hurt!

Oh, and I realize I’m dabbling in the banal again. Screw it. It’s my blog, dammit. And it’s hot outside.

Drupal Shared Hosting Site Installer

Update: I added a cleaned up copy of my script, in case it comes in handy for anyone. Read the end of this post for more info…

I just finished whipping up a workable bash script to automate installing and (basically) configuring a new site on a shared Drupal hosting server.

Here’s the basic scenario. First, you set up a “template” site, and configure it however you want all new sites to start. Add common accounts. Enable modules. Twiddle bits. Etc… Then, you export a mysqldump of that template site’s database, and will use that to create new sites.

Now, whenever you want a new site, you just run this bash script and give the short site name as a parameter on the command line. It will create a symbolic link from the shared Drupal codebase to a location within the web directory, then create a new database and populate it using the freeze dried mysqldump. It will then make sure that the files directory in the new site’s “site” directory is writable, and insert some settings into settings.php to tell it to use the proper database and file_directory_path.

Initial tests show it’s working like a charm. I can now set up a new site in roughly 10 seconds. Very cool.

After I’ve cleaned up the script some more, and tested it a bit more (i.e., on a machine other than my Powerbook), I’ll post it online somewhere. It’s really a pretty simple script, now that it’s working. Including comments and liberal whitespace, it’s a whopping 52 lines of code (18 lines that actually do stuff).

I’ll also be doing some more playing around with the shiny new Drupal installer (part of the CVS branch of Drupal now) to see if that might be a better long term solution. Not sure how it handles tweaked settings. It handles enabling modules and themes, though…

Update: I’ve cleaned up the script, done some more testing, and it seems to work fine. So, here it is in case it comes in handy for anyone.

To make the automatic configuration of settings.php work, you need to modify your “template” settings.php to have “database_name_goes_here” where the database name goes (line 87 in my copy), and you can also have it set the files directory for the site if so desired, by editing the variable override array at the end of the file. Mine looks like this:

$conf = array(
    'file_directory_path' => 'sites/file_directory_path_goes_here/files',
    'clean_url' => '1'
);

Who’s evacuating the Lebanese civilians?

With the big brouhaha about the evacuation of Canadian (and American, and British, and French, etc…) civilians from Lebanon, I think we're all kind of missing the point.

There are 50,000 Canadian citizens in Lebanon right now. The Canadian government has had to rent some cruise ships to ferry them to Cyprus and/or Turkey for further evacuation by air. The process is taking longer than many would like, but our people are being transported out of the danger zone. Prime Minister Stephen Harper even used his PM Airbus (our version of Air Force One) to ferry a few Canadian civilians out (Stephen, that was a classy move. The only thing that would have topped that, since you were already in the area, would have been to clear everyone off of the plane, fill it to the gills with civilians, and wait for it to return with backup).

But, what about the Lebanese civilians? Are they officially to be left behind? If it's too dangerous for a North American or European civilian, why is it considered an acceptable risk for the 3.5 million innocent civilians that happen to live in the region?

I may be extremely naiive, but this really seems like a perfect candidate for the UN blue helmets to move in and help restore order. Likely a much better allocation of military and humanitarian resources than securing oil supplies to maintain a particular hegemony…

Stopping the raging banality

This blog is about 2 posts away from devolving into a bona fide cat diary (and I’m not exactly a fan of cats). I’ll be trying to stop barfing banality into the internet tubes, so as a result I’ll probably be posting much less. Hopefully, as quantity goes down, quality (and relevance) may go up? Or, I might just wind up raising the bar so high that I finally fall out of this whole blogging thing. Either way, meh…

2 weeks and still riding

It’s been 2 weeks since I started riding my bike to work (and home again). I’m feeling much better, cooling off faster after each rode, and gradually getting faster.

I’ve missed 3 rides (took one day off to hit the mountains, and had a family shindig one evening), but other than that, I’ve been riding full time. I don’t see anything that would make me stop now, except for wet (or white) stuff.

To keep myself motivated, I’ve been keeping a “ride log” here using Drupal’s custom content types, and some custom PHP/MySQL to generate an overview. That’s worked out pretty well from a technical perspective, and helps me to see at a glance how I’m doing.

Now, to put some cash into my bike. Hand grips are cracked and falling off. Gears need adjustment. Some mystery squeek/creak from the frame when I pedal. I’ll need a headlight/taillight soon, as it starts getting darker in the mornings. I really should put a bell on it, especially now that there’s at least a microscopic chance that I might actually pass someone…