WPMU Blogs Directory?

I’ve been trying to figure out how to build an effective directory of blogs hosted by a WPMU service. There’s the list-all mu-plugin widget, and it has a handy dandy list_all_wpmu_blogs() method. I’ve created a page template for my theme, and added this code to dump the list of public blogs:

<!-- directory stuff goes here -->
<ul>
<?php list_all_wpmu_blogs("","","<li>","</li>","updated"); ?>
</ul>
<!-- end of directory stuff -->

Create a new Page, call it something creative like “Directory” and select the template that contains the above code. That works, technically, but doesn’t produce the most effective directory once the service grows to more than a dozen or so blogs.

WPMU List-all Directory

But, once a service gets a bunch of blogs, say a hundred or so, a directory needs to be a bit more powerful. Sorting. Filtering. Searching. Categorizing. Letting people find blogs by activity (number of posts, number of comments, number of recent posts…) At the bare minimum, it’d be something like the great directories used by UMass and UTA. I haven’t been able to find out any detailed technical information about how either of those directories are built, but they appear to be static HTML files, probably generated by a separate script triggered by a cron job. They appear to run external to WordPress, but I could be wrong on that.

It should be relatively straightforward to build a WPMU blogs directory function, with the wp_blogs table containing basic metadata about each blog, and info about the owner and last post just a join away. Anyone have any cool code to share? Any ideas of how best to implement this?

Airport Extreme on Telus DSL?

I’ve been struggling with this all day. Haven’t found much help on the Telus website, and their tech agents haven’t had much in the way of helpful suggestions.

I use Telus DSL at home, recently switching to the TelusTV service (which apparently also affects the internet service, as the internet guys keep forwarding me to the TV department for support. wtf?)

My old Linksys 802.11a router has been acting up, so I splurged on a new Apple Airport Extreme 802.11n base station. I have it hooked up to the ethernet switch installed by the TelusTV guy the other day.

DSL Modem –> ethernet switch –> Airport Extreme –> Computer

If I run the AE in “Bridge” mode, with no DHCP service (so it’s essentially a hub, not a router), I can get an IP address if connecting via ethernet to the AE. If I try wireless, there’s no joy. If I try to “share a single IP address” – turn on DHCP and routing – the AE complains about pulling an invalid IP address (even though it’s the same one that was pulled by the computer when running the AE in Bridge Mode). No joy in connecting to the Internet via ethernet or wireless in that mode.

I’ve registered the MAC address for the AE via Telus’ registry app at http://oca.ab.hsia.telus.net – no joy.

Lazyweb request: has anyone configured an Airport Extreme to run over Telus DSL via TelusTV? This really shouldn’t be an all-day ordeal. Any tips? Is there a magic phone number or email address to contact to make things work the way they’re supposed to?

I’ve been seriously considering ditching Telus for internet to get it via Shaw, where this balogna apparently doesn’t happen. But that would likely mess up the whole TelusTV thing…

Update: here’s a kicker – I’ve entered both the AE ethernet and wireless MAC addresses into the 2 slots provided on oca.ab.hsia.telus.net to register my computers. My laptop’s MAC address is not registered. But, if I set the AE to “Bridge Mode”, the laptop can surf the web happily while connected to the AE via ethernet. If I set the AE to “Share a single IP address” mode, so that its MAC addresses are visible, then I can’t get off the LAN. WTF? There’s got to be a secret handshake somewhere… Haven’t been able to connect to the internet via wireless at all, no matter what mode the AE runs in.

Update: a handy dandy OmniGraffle diagram of the network topology:

Telus TV Network Topology

Update, the third: Finally got it working, with “share a single public IP address” running. Looks like the AirportExpress wasn’t reading the DNS values provided by DHCP, so nothing was resolvable. And Telus doesn’t appear to like off-Telus DNS servers, so I couldn’t just manually add others. Seems to be working now, after setting the AE internet panel to use “manual” and providing the info.

For future googlers: the DNS servers I use from Telus are

  • 199.185.220.36
  • 199.185.220.52

Updating a Large Scale Drupal Multisite Installation?

In the Teaching & Learning Centre, we run a couple of servers, each with a dozen or so Drupal sites installed in a multisite configuration (one copy of Drupal, using the sites directory to respond to various URLs). With every update to core or modules, the update.php file needs to be called for each site. That’s not too onerous, but is a bit of a PITA.

Our central IT shop at the University of Calgary has a whole ‘nother problem. Their Drupal server is currently running well over 400 sites. So, calling update.php on each one effectively means having a bunch of folks (students? interns?) clicking through the update.php screens for each site. Say it takes maybe 5 minutes per site, that’s over 30 hours of labour to update all sites. And new sites are added every day.

There has to be a better way. I was hoping Sympal Scripts had some magic fu, but came up empty. Are there any secret tricks to calling update.php on each site quasi-automatically for a large-scale Drupal multisite installation?

Inuktitut syallabics in blogs?

I just got an email from a colleague at UCalgary, posing a really interesting question. She is doing some blogging and writing with some residents of Nunavut, and needs a way to represent the Inuktitut language online.

There is a reference to Inuktitut syallabics in Unicode, but I couldn’t find any implementation details so I’m wondering if anyone has any experience dealing with Inuktitut as digital text? Can typical blogging platforms deal with it? How do you handle text input? Do you need special fonts to display it?

Update: I checked out the Attavik website a bit, from a promising-sounding link on the wikipedia page. “publishing Inuktituk on the web” – and got this page that doesn’t appear to have much in the way of content to help.

Inuktituk in Safari

Looks promising (at least in Safari) – but Firefox/Flock show this, instead:

Inuktituk in Firefox/Flock

I’m sending a message via their “Contact Us” form to see if they can provide more implementation information.

Update: it also renders properly in Firefox 2 on Ubuntu 7.0.4

My iDVD is borked

I’ve got a fully updated copy of iDVD on my MacBook Pro that refuses to cooperate. I can create a project, save it, and burn it to DVD. But, if I decide I want to quit iDVD, it borks the next time I launch it. It gets past “loading themes” and then just hangs. I can nuke my prefs, and get the “new project” dialog, but if I create a project, I get the same thing if I quit. Which makes editing an iDVD project a bit, well, problematic. I currently have to recreate the project from scratch every time I want to make a modification. Which makes the process a bit more tedious than it needs to be.

I’ve done searching on the Apple Support site. I’ve tried Googling. I’ve poked through manuals and documentation. No joy. Here’s all I get when I launch my incredibly awesome, soon-to-be-Oscar™-winning iDVD project:

iDVD borkage

The strange thing, if I click “Close”, it pauses for a few seconds, the “Unexpected Quit” dialog disappears, and the shell of the iDVD app remains. I can select menu items, and click on interface buttons (but they don’t do anything). I have to then Quit (or Force-Quit) the app to make it really go away.

Nothing in the crash log jumps out at me. I’ve uninstalled all of my InputManagers, all of the extra QuickTime codecs, anything I can think of that’s non-stock-MacOSX. No luck yet. Very frustrating.

Trends in Higher Education?

I’ve been asked to contribute to a series of short briefing papers for use by administration, in identifying and planning for trends in higher education. There are some obvious trends (social software – go to them, instead of making them come to us; open content; remix culture; personal publishing and the PLE; etc…) but I’m wondering about any non-obvious trends that people might be seeing. Anything surprising happening on other campuses? Are things like mobile access really starting to take off (esp. in Canada, where mobile internet charges are so unbelievably expensive)?

Ubuntu Server Not Seeing Localhost?

I’ve been setting up a shared Drupal hosting environment on an Ubuntu Server box, and just about everything is running great. Drupal’s running, MysQL is running, and everything feels nice and fast.

But, the server can’t see itself on the network. It can’t even ping itself (via 127.0.0.1, localhost, or either of the domains pointing to the box). It can ping other boxes, though. It can’t curl or wget or lynx any of the sites on itself. It can’t telnet to its own services (which makes setting up mail services etc… a bit tricky).

The bizarre thing is, I can have full access to the services on that box remotely. SSH, FTP, ping, HTTP, etc… are all up and running, and respond normally to requests from off-machine.

None of that would be fatal, but the result of not being able to even curl a URL on the same box, means I can’t run a script to automatically run cron.php on all Drupal sites.

I’m not sure what might need tweaking to enable the box to see itself over TCP/IP. I’ve checked in /etc/hosts, I’ve checked apache2 configs (nothing is rejecting from localhost).

Any ideas?

I’ve been setting up a shared Drupal hosting environment on an Ubuntu Server box, and just about everything is running great. Drupal’s running, MysQL is running, and everything feels nice and fast.

But, the server can’t see itself on the network. It can’t even ping itself (via 127.0.0.1, localhost, or either of the domains pointing to the box). It can ping other boxes, though. It can’t curl or wget or lynx any of the sites on itself. It can’t telnet to its own services (which makes setting up mail services etc… a bit tricky).

The bizarre thing is, I can have full access to the services on that box remotely. SSH, FTP, ping, HTTP, etc… are all up and running, and respond normally to requests from off-machine.

None of that would be fatal, but the result of not being able to even curl a URL on the same box, means I can’t run a script to automatically run cron.php on all Drupal sites.

I’m not sure what might need tweaking to enable the box to see itself over TCP/IP. I’ve checked in /etc/hosts, I’ve checked apache2 configs (nothing is rejecting from localhost).

Any ideas?

Portable Camera Storage on the cheap?

I’m planning a vacation in the spring. The tickets are all in place, and we’re looking forward to it. Can’t say more, because it’s a surprise Christmas present. I’d love to leave the laptop at home, but would currently need to bring it along to dump photos off the camera every day.

Does anyone have any great (and cheap) solution to offload photos from a camera (Canon Digital Rebel xt) without a laptop? I’ve got a 5G iPod (30 Gig), and have looked at the Apple and Belkin media readers – both of which apparently suck the soul out of the battery before finishing the job.

I’ve seen some pretty sweet portable hard drive systems (Epson P-3000, Smartdisk Photobank, XS Drive Super, etc…), but I’m not going to spend $800 for a handy camera offloader, no matter how cool it is.

Lazyweb, help me! What’s the best bang-for-the-buck solution? DIY is OK, too. Oh, and Epson? If you want to send me a P-3000 to review, I’d be more than happy to test it out…

I’m planning a vacation in the spring. The tickets are all in place, and we’re looking forward to it. Can’t say more, because it’s a surprise Christmas present. I’d love to leave the laptop at home, but would currently need to bring it along to dump photos off the camera every day.

Does anyone have any great (and cheap) solution to offload photos from a camera (Canon Digital Rebel xt) without a laptop? I’ve got a 5G iPod (30 Gig), and have looked at the Apple and Belkin media readers – both of which apparently suck the soul out of the battery before finishing the job.

I’ve seen some pretty sweet portable hard drive systems (Epson P-3000, Smartdisk Photobank, XS Drive Super, etc…), but I’m not going to spend $800 for a handy camera offloader, no matter how cool it is.

Lazyweb, help me! What’s the best bang-for-the-buck solution? DIY is OK, too. Oh, and Epson? If you want to send me a P-3000 to review, I’d be more than happy to test it out…

Help – Slow MySQL Insert?

I’ve been struggling with this for what feels like months. On a project, we’re using a third party hosting provider, who offers us space on a managed server, complete with everything we need to run Drupal in a shared hosting environment. We’re running a copy of Provisionator on the server to help us deploy lots of Drupal sites easily.

Here’s where it gets messy. We can create new databases just fine, but importing a .sql file takes for freaking ever. Imports that take 3 seconds on my Powerbook can take 90 – 300 seconds on this server. Running the import on a dual G5 XServe with the same version of MySQL finishes the job in about a second.

I’ve tried removing variables from the equation. Using full-on Provisionator. Using a separate custom .php script. Using phpMyAdmin. Each take so long that browsers often time out before completing the import (leaving partially imported databases). I’ve tried command line mysql directly on the server, with the same range of very slow times.

I can’t seem to find anything that might make imports of a smallish .sql (~400K) file take so long. Unfortunately, it’s making the process of deploying new sites essentially useless for now.

The curious thing is that once a database has (eventually) been populated, the select queries seem to run at normalish speed.

Any ideas on how to get the server back up to speed? It’s running MySQL 4.1.20 with MyISAM tables on a RedHat Linux box. I don’t have access to tools like top, ps, netstat, or even env, so exact details of the box’s config are shrouded in a veil of mystery and obscurity.

I’ve been struggling with this for what feels like months. On a project, we’re using a third party hosting provider, who offers us space on a managed server, complete with everything we need to run Drupal in a shared hosting environment. We’re running a copy of Provisionator on the server to help us deploy lots of Drupal sites easily.

Here’s where it gets messy. We can create new databases just fine, but importing a .sql file takes for freaking ever. Imports that take 3 seconds on my Powerbook can take 90 – 300 seconds on this server. Running the import on a dual G5 XServe with the same version of MySQL finishes the job in about a second.

I’ve tried removing variables from the equation. Using full-on Provisionator. Using a separate custom .php script. Using phpMyAdmin. Each take so long that browsers often time out before completing the import (leaving partially imported databases). I’ve tried command line mysql directly on the server, with the same range of very slow times.

I can’t seem to find anything that might make imports of a smallish .sql (~400K) file take so long. Unfortunately, it’s making the process of deploying new sites essentially useless for now.

The curious thing is that once a database has (eventually) been populated, the select queries seem to run at normalish speed.

Any ideas on how to get the server back up to speed? It’s running MySQL 4.1.20 with MyISAM tables on a RedHat Linux box. I don’t have access to tools like top, ps, netstat, or even env, so exact details of the box’s config are shrouded in a veil of mystery and obscurity.

Camera + Bike transport?

I’ve been trying to find an answer to this, but haven’t found anything definitive either way. Occasionally, I want to bring my Canon XT DSLR along when riding my bike. I might want to photograph something on campus at work, or along the path.

So, the question is – is it safe to pack the XT inside a compact LowePro case, and stuff that in a pannier? It seems pretty secure, but I wonder about vibrations from the ride (about half an hour, ranging from 20-60 km/h, depending on weather, traffic, blood sugar…)

I’m trying to avoid a backpack, so I’ve tried this a few times without any obvious issues. But, am I begging for trouble? Better to suck it up and use a backpack or messenger bag? I suppose I could also stuff the camera inside the LowePro case, and put that inside the larger LowePro/Canon carrying case, and bungie that to the top of the rear rack…

Update: Did some more Googling, and came up with:

I’ve been trying to find an answer to this, but haven’t found anything definitive either way. Occasionally, I want to bring my Canon XT DSLR along when riding my bike. I might want to photograph something on campus at work, or along the path.

So, the question is – is it safe to pack the XT inside a compact LowePro case, and stuff that in a pannier? It seems pretty secure, but I wonder about vibrations from the ride (about half an hour, ranging from 20-60 km/h, depending on weather, traffic, blood sugar…)

I’m trying to avoid a backpack, so I’ve tried this a few times without any obvious issues. But, am I begging for trouble? Better to suck it up and use a backpack or messenger bag? I suppose I could also stuff the camera inside the LowePro case, and put that inside the larger LowePro/Canon carrying case, and bungie that to the top of the rear rack…

Update: Did some more Googling, and came up with: