So the boss sends me an e-mail today sez "last weekend" [what? And you couldn't tell me on Monday because...???] "the board of directors decided they needed a place to maintain ongoing conversations electronically." [exactly like they've wanted every year, for seven years, and have never used each time I provided them with something, you mean?] "They've left the details up to us, but they need it in two weeks." [Two weeks from last Monday, in other words.]
Well. Ok. So to translate: the board wants a BBS system, a "message board". Yeah, I can do that. Two-weeks-minus-one-week deadline? Sure, no problem.
So's I goes lookin. First stop, simhq. I use their message boards all the time, nice & easy (for me, which means 2 weeks of beating my head bloody with our "gee, what is this funny oblong plastic thing next to the keyboard? Why does the little arrow move around on the screen when I touch it?" board). Unfortunately, InfoPop isn't free, and I have received a THOU SHALT SPEND MONEY ONLY WHEN DRAWING BARB-BED WIRE THROUGH THINE NETHER REGIONS SEEMS PLEASANT commandment from on high.
So I go look elsewhere. Wheaton has a BBS, bastard gets like 200 posts a day on it. Slicker than Sam Donaldson's hairpiece too. If a washed up so-liberal-he's-going-to-fall-off-the-left-side-of-the-planet actor can set it up anybody can set it up. This leads me to phpBB, a very nice and most importantly free system.
Of course, Wheaton set his up on a server configured in pretty much a sane manner. The server I have available is the one I built a slash site on. You know, the slash site that does everything they need, for free, on Linux, the one I taught myself perl to run, so they can go and spend $280k on consultants and another commercial system, on Win2k, and tell me not only can I stuff all this work down a toilet but oh by the way we're going to trash the entire network for Win2k on this paper MCSE's advice? That one? But I digress...
Anyone who's ever dinked with slash knows you have to do strange, perverted things to the Apache web server and mod_perl engine to get it running (DAMN YOU TACO! DAMN YOU TO HELL!). I bank-shot Cold Fusion engine support into it about six months ago so our makes-dried-oatmeal-look-smart membership could sign up automatically. Which they still manage to screw up daily. Did I write down how I did that? What's the challenge in that?!?.
So now I gotta fold PHP support into it, without breaking the "Kiss me, I'm psychotic" slash site nor my cold fusion signup widget. The default documentation sounds easy enough, so I follow it right up to the point of "Make Install".
"Self", I says to myself, "if you install this thing over what you already have working, you know what will happen?"
"Umm... it'll all work just grand and we'll get to dance around the flowery hill with Tinky, Winky, Dipsy, Laa-La and Po?"
**SMACK** "WHAT DID YOU SAY RECRUIT?!?"
"Umm... it'll blow up so colorfully I'll be picking shrapnel out of the database server for the next two weeks?"
"THAT'S BETTER. BACK IT UP, MAGGOT."
Sure enough, my drill-sergeant conscience was correct... a standard install results in an apache server that doesn't even start. Just gives wimpy "configuration incorrect" errors and falls on its face with a PHP-shaped dagger sticking out of its back.
So I go over to the slashcode site, and look up the install how-to. Sure enough, there's my old friend the cryptic three-line mod perl statement you need to get it running. Says "if you need to install other modules you will, of course, need to modify this statement accordingly." Does it say how to do that? Geeze, if we did that then you might actually get something to work without spending three hours poring over our oh-so-cleverly commented code ("# Bite My Shiny, Metal Ass" is only funny the first time you try to figure out what a function does). You're obviously not even intelligent enough to hold the hem of our pizza-stained robe. Away with you!
So after cutting open the install routine like a three-week-dead armadillo, I figure out how to specify extra clauses. And sure enough, it all compiles and installs beautifully. After six tries. With fingers crossed I checked the slash site and the cold fusion widget, and both seemed to have survived the experience intact.
So I go test the PHP system. I mean, it went in without any errors, so it should work just fine, right?
"HAVE YOU BEEN PAYING ATTENTION, MAGGOT? HAVE YOU EVER INSTALLED OPEN SOURCE SOFTWARE AND HAD IT WORK EVEN THE TENTH TIME?" my conscience shouted at me.
"But all the guys on Slashdot keep going on and on about how easy this stuff is, how powerful and wonderful it is. How hard can it be?"
"FOR SOMEONE WHO DOESN'T HAVE A GIRLFRIEND AND SPENDS THEIR FREE TIME ARGUING IF THE ENTERPRISE COULD BLOW UP THE DEATH STAR IT'S REALLY EASY. ARE YOU ANY OF THOSE THINGS?!?"
"Death Star versus Enterprise... ah geeze that's an easy one. Obvious--"
"ANSWER THE QUESTION MAGGOT!"
"Well, umm, no. So I guess we better go test..."
Sure enough, it'd feed me PHP code, but not a PHP'd page. After an hour's tinkering I discovered I had to put the proper statements in the slash site's config file, not the main Apache file. BINGO! Up it comes in a flash. HOO-RA!
So I gave them what they wanted not in the ten-days-minus-five they gave me, but in four hours. For free. On a server which by rights should barely be able to hold a slash site, let alone a slash-cold fusion-php hybrid. BOO-YA gramma... BOOYA.
Of course, they'll never use the damned thing. If they can't get their son or their secretary to hold their hands each time they need to use it ("ok, right click here. No, right click. The RIGHT side mouse button. OPPOSITE the one you're clicking now"), they won't. So it's ultimately doomed to failure like nearly everything else the higher-ups cook up when it comes to IT projects.
But it was a lot of fun to tinker with. :)