“If the taps (faucets, in usa english) look good, why bother about the plumbing?”
I seem to remember this approximate quote in a comment from way back about Windows Server comparing it to Linux. It surfaced in my consciousness recently after I read a pretty damming indictment of the BuddyPress codebase at Frumph.com in The exodus of BuddyPress the arrival of SocialPress. Can you judge the value, worth, or usefulness of a system from its user interface or how it seems to work? Do taps (faucets) matter more than plumbing? And how can one judge the quality of plumbing which is hidden from plain view? It seems to me that systems that are founded on spaghetti code can provide a deceptive appearance and user interaction but in the longer term are “doomed to impending ruin” (from Vergil’s Aeneid). An example that comes to mind is the Workshop module in Moodle which has been spaghetti code for so long that the core developers are now having to do a complete rewrite for version 2.0 of Moodle.
This is germane to where I find myself at present in the Quest for the Ultimate Open Source Pedagogically Powerful Blogging / Social Networking System. Before I read this posting I was somewhat gung ho about employing BuddyPress but now I’m super reticent. The problem for someone like myself who is more of an administrator / implementor of Open Source systems than a developer, and who knows just enough to be dangerous, is making a good judgement call about directions that projects are heading. Case in point: I spent a year or so trying out Elgg in beta and it looked like it was really going places. When a number of universities in the UK jumped on board I decided to go with this too and brought up version 0.92 which I hacked a theme to. Six months later the developers completely changed the system architecture, produced a radically different system for 1.0 and offered no upgrade path. And that’s why I’m currently looking at alternatives.
Assessing the quality of the codebase is frankly not a task which I consider myself qualified to do, and therefore I have to rely on the opinions of code developers (which may be, and usually are, biased). It’s a conundrum and, like life, one has to make a choice, carry it through, and if it’s a mistake pick yourself up and start again. At Earlham we avoided the pit that others got into with Blackboard by running with Moodle from version 1.3, but it was not obvious in 2004 that Moodle would become as successful as it has been. And as I describe here, I looked at WP-MU in 2006 and decided to go with Elgg. Perhaps I would have been better not doing this, but who can tell. But one immediate thing that strikes me about WP-MU is the file size of the core code. It’s tiny. This is encouraging in and of itself.