Converting from CommunityServer to vBulletin

I’ve been using CommunityServer to power the forums at CSFBL for a few years now, with mixed results. The version I am running (2.1) is a bit buggy and a poor performer in some respects, but it is serviceable. Still, with hundreds of thousands of posts, I really need something more reliable.

The obvious choice was to upgrade to CommunityServer 2008, but problems with the upgrade script and stickershock at the new price tag pretty much put this right out of contention. I went out and bought a license for vBulletin — one of the most widely-used bulletin board products available — for $160, about 1/50th the price I’d pay to upgrade CommunityServer.

vBulletin offers some support for converting from CommuntyServer via their Impex utility. Unfortunately, the current implementation they had was quirky and unreliable… but vBulletin gives you the source code (everything, including the import/export scripts for dozens of other forums), so I began to tinker.

Continue reading

A free replacement for the Windows defragment utility

Defragmenting hard drives is something that is often unnecessary, but when it is necessary, most people run the built-in Windows “Disk Defragmenter” utility. It’s serviceable, but there is a better option: JkDefrag.

There’s a few things that make JkDefrag an improvement over what Windows offers:

  • It runs on anything that mounts like a disk drive — including USB drives and memory sticks.
  • You can run it from Windows, from a command line, or as a screen saver.
  • It offers several different optimization strategies.
  • It can be configured to defragment specific drives, files, or folders, or to exclude defragmenting specific drives, files, or folders.
  • You can run it in the background and tell it to run at less than full speed.
  • It’s continually developed by a person who you can actually talk to via an online forum.
  • There’s no installer — just extract files from a ZIP archive into a directory and run the executable.
  • It’s free, as in free beer, and open source.

Hats off to Jeroen Kessels for writing a fine utility and making it available for free. He doesn’t even ask for donations (too bad, because I’d have sent him a few bucks if he did!).

ComputerSims website gets an upgrade

It was way overdue, so I’m happy to say that my company, ComputerSims, just launched a redesigned web site, at

Being a development company specializing in web sites, it’s important that our web site (as simple as it may be) reflect some of the standards we live by: a focus on industry standards, accessibility, and usability. Hopefully those visiting agree that it delivers in those areas.

There’s nothing special under the hood of the site — it’s static HTML with some JavaScript. Some of the tools we used to power it include

  • JavaScript: Prototype, Scriptaculous, Lightbox (by Lokesh Dhakar), and a modified variant of SmoothScroll (by Stuart Langridge). The SmoothScroll JavaScript was a nice effective way to make sure the content you’re viewing on the Services page is front-and center.
  • CSS: Blueprint CSS framework (both typography and grid layout). I’ve used Blueprint for typography in the past, but this is the first project I’ve used the Blueprint grid code for, and I have to say, I’m impressed. If you need fixed width sites, there’s little reason not to use it.
  • A simple, generic little ASP.Net web page to handle the contact us form (using AJAX, of course).

Anyway, it’s not much, but it’s a nice step forward from what ComputerSims was up to this point.

Check it out, and let me know what you think!

What’s your Programmer Competency?

Via Gadgetopia, I stumbled across the Programmer Competency Matrix by IndianGeek.

What is my programmer competency, you ask? Let’s find out…

  • Computer Science: Level 1. This is not surprising to me, as the only formal computer science training I have is an Introduction to Programming class I took in college. I got an “A” in the class and spent half the time telling my classmates that the teacher was wrong. The class taught Pascal, a language I learned to use in 1984, because I was a 14-year old geek who wanted to learn programming beyond BASIC.
  • Software Engineering: Level 2/3. Before becoming a programmer, I was a systems engineer who scripted just about everything you can imagine (which is programming, too, but traditionally not looked at as such). In fact, me and a coworker scripted all Year 2000 compliance testing and updates for 2,500 users in a Fortune 500 company. We used to challenge each other to see who could do more work in one day without leaving our desks. We weren’t lazy; we just preferred to move around during lunch and for the 3:00 half-price cookies in the cafeteria.
  • Programming: Level 2/3. This is a huge category, so it’s hard to say anyone would be a solid “3,” but I feel I’ve mastered a good chunk of the items in here. The one I think I’m best at: “communication.” (Ask anyone who worked with me — peer, subordinate, or manager — and I think they’d concur.)
  • Experience: Level 2. I’m a programmer by evolution, not by initial choice. I’ve spent as much of my career as a programmer as I did as a systems engineer, so I lose points here.
  • Knowledge: Level 2. If I had time to read everything I want to, I’d be better in all categories above.

Continue reading