I run a relatively active forum for an online (unpublished) Author. We run on phpBB, because that’s what the previous hoster was running, and it’s open source - so no licensing fees.
Unfortunately, PHPbb2.x has some issues – there’s no easy way to track mod actions or user-notes, the anti-spam stuff is a joke (it all comes down to requiring registration, and battling spam-bots at the registration page), and mods (the PHPbb word for plugin) are, frankly, a pain in the backside to install.
A few weeks back PHPbb3 RC1 was released, and I was running a test board just to try it out.
It has a number of major improvements – performance seems to be improved, and overall management is significantly better. You can track what moderators and admins have done too, so there’s more transparency on that end.
However, when I tried to install a mod (to provide a basic RSS feed from the forums) – I got a bit stuck. In PHPbb2, there was a mod which allowed you to upload other mods, and install them with just a few clicks. Somewhat similar to WordPress’s plugin model, though more prone to breaking things.
I thought that the PHPbb3 developers would have taken a leaf out of WordPress’s book, and implemented a proper plugin model – and given that there’s now this MODX format (basicly a zip file, with a bunch of other files in it, in a certain structure) – it seemed like that would be the approach.
The problem I was having was that I couldn’t find the location where to upload the MODX file. So, I jumped onto the PHPbb irc site hoping someone could quickly set me straight.
Here’s what happened (ps: “Spec8472″ is me) – trimmed for brevity, but otherwise people’s comments are as written.
Start of #phpbb buffer: Sun Jun 17 15:52:59 2007
* Now talking in #phpbb
<Spec8472-> Okay, question that’s probably really obvious to some, but I can’t find an answer online… where do I actually upload the mods to, in the phpbb3
directory?
<iWisdom> …
<iWisdom> You don’t.
<iWisdom> Unless, of course, the MOD instructs you to upload a file
<iWisdom> In which case, you follow the directions included in the .MOD file
<Highway_of_Life> .xml file
<iWisdom> There is no automated MOD installer
<Spec8472-> There’s not an automatic mod installation thingy like easyMod for PHPbb2?
<Spec8472-> damn :(
<iWisdom> Just open the .xml file in a web browser
<Highway_of_Life> no, spec, and don?t curse
Okay, so there’s no automated installer… Thats… disappointing.
<bsdboy> how hard is it to install mods manually?
<bsdboy> i dont think ive ever automatically installed a mod
<iWisdom> bsdboy: Not hard
<Spec8472-> Brilliant… that, and no event hooks…
<iWisdom> Spec8472-: Pardon?
<Highway_of_Life> bsdboy: it would depend on your level of expertise, for me it?s like combing my hair in the morning… well, easier actually… coming my hair can be difficult at times…
<iWisdom> Highway_of_Life: That’s since you basically live in the Olympus codebase
<karlsemple> following txt instructions on what changes to make is easy whether you know the code or not :p
<Highway_of_Life> But for some, they never seem to get it right, no matter how many times they try… but it usually depends on the quality of the instructions and how many code changes need to be made
<Spec8472-> Mod installation, should imo, be automatic – upload a file somewhere, click a few things, hey-presto you’ve got some new functionality (see WordPress) – sure, you might need to include some stuff in your presentation layer, but that’s all.
<WizardJames> ..
<iWisdom> …
<Highway_of_Life> ….
<iWisdom> Well, each person has the right to their own opinion
<iWisdom> But frankly that doesn’t mean we agree
<bsdboy> Spec8472-: You’re bloody lazy.
<iWisdom> Personally, I think it would be a bad idea
<iWisdom> It encourages users to go MOD crazy
<iWisdom> Which makes for a support hell
<WizardJames> bsdboy said my thoughts
<iWisdom> And it also increases the chances of things breaking during upgrades
<bsdboy> Highway_of_Life: Thhey shouldnt be allowed to live.
<iWisdom> It also encourages users, as bsdboy said and WizardJames echoed, to be lazy and not learn their way around the codebase
<Highway_of_Life> I prefer to control the whole aspect… but still, MODs should be of good enough quality that only a very small handful of changes need to be made
<Spec8472-> bsdboy: I don’t believe in extra effort, where effort isn’t needed.
<bsdboy> lol
<iWisdom> Spec8472-: To each his own
<bsdboy> Then write a fucking mod to install mods.
<bsdboy> Dont expect someone else to do it.
<karlsemple> please do not swear
<Spec8472-> bsdboy: Well, I would, except that I don’t code in PHP. Besides, that’s just more effort ;)
<Highway_of_Life> you don?t need to code in PHP to install a MOD
<bsdboy> Spec8472-, go shove it where the sun don’t shine if you expect someone to come on IRC and make your mods auto install. IF you don’t know at least basic PHP you shouldnt be running phpBB.
<Highway_of_Life> you just have to be able to follow instructions, that is all
<iWisdom> Copy/paste
<bsdboy> I didnt know PHP when i first started using phpBB, but you know what< I went and RTFM and followed the instructions
<iWisdom> It’s not complicated
<bsdboy> its nNOT hard.
<iWisdom> Considering the endless hours MOD authors invest
<iWisdom> It’s not work at all
<WizardJames> not that hard, just open file, find, paste, save, next file..
<Highway_of_Life> bsdboy: knowledge of PHP isn?t necessarily required to run phpBB, but it might be required if you want to modify your board in any way…
I don’t agree with the approach that PHPbb3 devs are taking to it – they’re obviously not taking the (quite active) modding scene into account, and it just makes both administrators and modder’s lives more difficult.
Defined interfaces make things much easier all around – take for example something that we all use every time we use a computer – Device Drivers for hardware.
Hardware manufacturers, for the most part, stick to defined interfaces for their drivers. They don’t need to patch the kernel or other parts of the operating system. When they do step outside those bounds, things get… interesting. Updates to the OS, or indeed changes by other drivers can trample all over each other, and result in system or driver crashes. All in all, a messy situation.
The same goes for other bits of software – if you need to extend Windows Live Writer, you use the SDK to create a plugin that conforms to certain specifications. You don’t need to patch the application’s code to add new functionality.
I don’t think I’m wrong in asking that PHPbb also take this model – and I think over time it would reduce the level of work required by the developers and support staff.