Oct
26
(2008)
overzealous antispam and campus blogging
Filed under: work. Tags: blogs, censorship, spam, ucalgaryblogs.ca. | 3 Comments
I just had to uninstall the TanTanNoodles Simple Spam Filter from UCalgaryBlogs.ca – it’s a simple plugin that uses a dictionary lookup to try to detect what it thinks are REALLY obvious spam comment attempts. But it was a bit overzealous. Instead of just modifying the dictionary to remove some valid words (which words are valid? who gets to decide that? in which contexts?), I decided to just delete the plugin outright so that comments can be posted without censorship.
The problem showed up when a student tried to write a comment on a blog post, and used the word “rape” in the text of the comment. Simple Spam Filter threw a flag on the play, and the comment evaporated. Not cool. The student is now suspicious of the blog service, and is wondering if we’re censoring or filtering their conversations. Totally the WRONG feeling for a productive and engaging blog community. I’ve deleted the plugin, and hopefully assured the student that there was no intention of censoring their conversation.
Fun with antispam. Thanks again, Google, for making this such a wonderful problem to have to keep dealing with. It’s so thoroughly rewarding, having to battle spammers and work to make sure valid content gets around the filters that have to be constructed to prevent spammers from gaming Googlejuice.
Aug
18
(2008)
Pimping the WPMU for ucalgaryblogs.ca
Filed under: work. Tags: blogs, ucalgaryblogs.ca, wordpress, wpmu. | 7 Comments
I’ve been slowly tweaking the WPMU install that drives ucalgaryblogs.ca – it’s not quite ready for prime time, but it’s darned close.
It’s now got:
- multiple blogs per user, and multiple users per blog
- subdomain hosting for each blog (i.e., myblog.ucalgaryblogs.ca)
- domain mapping – want to use your own custom domain? want myblog.com to point to the blog you’ve got at myblog.ucalgaryblogs.ca? there’s a setting for that, and then you just have to tell me what domain you want me to tell the webserver to respond to.
- multilingual admin interface. English. French. Spanish. Chinese. Klingon. Well, I still haven’t found the Klingon.po file for WordPress, but once I do… *shakesfist*
- over 100 themes, most of which are customizable. Want a photoblog? Got it covered. Newsletter? Done. Research project? Sure thing.
- 500MB of upload space quota per user. This could be increased if needed.
- Sitewide tag cloud and archives – want to find out who else is writing about mitochondrial RNA? Just hit the tag…
- Blog directory listing all blogs in the system (currently, some test blogs, and the UC Dinos Football Blog! WOOHOO!)
- A handy-dandy blog manager bar at the top of all pages – if you’re logged in, it gives you easy access to anything you want to do. If you’re not logged in, it gives you an easy place to login from, from any page on the ucalgaryblogs.ca service.
- Lots of other great WordPress goodies, like podcast serving, editing from your iPhone or iPod Touch, great visual editor for posts (with spel chekker, too!) and collaborative blogs with multiple authors.
But, there are still a few things on my todo list before I consider it fully ready for prime time:
- Documentation. It helps if there’s some M to RTF. I’ll be linking and borrowing heavily from the great stuff already out there…
- A UCalgary theme (or themes) for sites that need to look all offishul ‘n junk.
- better antispam – I can’t use Akismet because I have a budget of $0.00, and SpamKarma2 is EOL. Maybe Mollom? It doesn’t play well with WPMU yet…
- hmm… actually, that’s pretty much it. once it goes live, it can be tweaked on the fly…
Once it’s been live for a bit, I’ll look at stuff like BuddyPress, integration with Flickr, integration with MediaWiki, and a bunch of other stuff. So far, it’s been fun setting up the service. Now to start rolling this sucker out…
Aug
9
(2008)
on campus blogging at the university of calgary
Filed under: general. Tags: blogs, campus, ucalgary. | 5 Comments
I currently run two separate blogging services on campus, and think both actually have their place and so continue to maintain and manage both a community blogging service running on Drupal, and a more individual blogging space running on WordPress Multiuser.
weblogs.ucalgary.ca is the Drupal-powered community blogging system. It’s got the organic groups module enabled, with access control configured, meaning people can easily login using their campus LDAP credentials, create groups, and publish content knowing that only members of the specified group(s) can see it.
I first set the service up three and a half years ago, and in that time it’s seen activity by 1060 users, publishing 1599 posts. That’s a whopping 1.5 posts per person. Not a lot of high end activity, and a lot of tire-kicking (and possibly content deletion) going on.
The second service, ucalgaryblogs.ca, is less than a year old, and has received almost no marketing or promotion. Only a handful of people even know it exists (mostly readers of my blog). I just snuck a copy of WPMU onto a server, configured it to host subdomains aplenty, and let it sit there.
Why haven’t I started pimping the heck out of it, in the hopes of fostering something insanely awesome like Jim did at University of Mary Washington?
I’m not convinced that the Institution needs to host a blogging platform anymore.
WordPress.com, edublogs.org, and any of a number of other blogging services are doing extremely well, for free, without requiring any of my time to maintain any software.
The reasons I keep coming back to needing a campus-hosted blogging platform are:
- integration – potential integration with other services, explicitly campus-wide logins so people don’t need Yet Another Account to remember. This may not be a big deal. It’s not hard to remember a new username/login, and if you forget, it’s easy to get a reminder.
- trust – if it’s on a campus server, there may be a higher level of trust and/or confidence that the service will be there, that it will not change terms of usage, and that it won’t get sold to another third party that may not align with the needs of the users. This one could also go the other way – it’s possible that students may trust an off-campus service more than they would trust one offered by The Man.
- authority – having a campus-related URL may be beneficial, especially for people trying to build an online identity – but this could also go the other way, because it backfires for people who may be leaving the campus community and would then have to pack up their stuff and move to a new URL after ditching any googlejuice they’ve generated.
With that said, none of the high profile blog projects on campus (the President’s blog, CIO’s blog, solar challenge team, etc…) use either of the services I provide. Maybe that’s a sign that they’re really not necessary?
Nov
17
(2007)
WPMU Blogs Directory?
Filed under: fun. Tags: blogs, lazyweb, wordpress, wpmu. | 15 Comments
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.

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?
Oct
5
(2007)
pssst. wanna blog?
Filed under: work. Tags: blogs, ucalgaryblogs.ca. | 6 Comments
It’s still not officially released, and I’m still in the early stages of putting together a funding proposal to turn it into a supported service, but if you’re willing to live life on the edge and risk a little beta goodness, UCalgaryBlogs.ca is kinda on the air.
All you need is a valid @ucalgary.ca email address, and you’re off and running. You can create as many blogs as you like, and can select from a bajillion available themes.
Why use the service? Well, it’s more “individual” than the existing weblogs.ucalgary.ca services (which is still running) so it should be less of a communal space. It’s running essentially the same software as WordPress.com, but on a UCalgary server with a UCalgary-ish domain name.
One of the cooler reasons to use UCalgaryBlogs.ca is that you’re not locked into it – wanna take your blog with you? Sure! WordPress can export all of your stuff into a format that can be imported on another server.
Oh, yeah. There are lots of other great reasons to use WordPress to manage a blog, too.
This is not intended to compete with, or replace the Drupal service offered by IT. Want to manage a large departmental website? That’s the way to go. Want to keep a simple blog or newsletter? This just might be for you…
Just be advised that it’s currently a skunkworks project, on server space I’m sneakily “borrowing”, and I’ll be actively tinkering with the software. And I’m half expecting to get spanked for just going ahead with this. But if you want to come play, please feel free!

