Site Update

Another piece of the American Dream has checked out.

2005-02-14 squee wiki super convenience utility !


Tags All Tech

Are you ever working at someone else's computer when you find a useful bit of information you'll want later? Well, you could rummage around for a pen, or email the snippet (or a link) to yourself. Wouldn't it be useful to have an online notepad, though?

Well, here's a possible solution:

All you need is some webspace with php (and FTP access to CHMOD a directory) and you're ready to roll. The code is less than 10Kb when installed, easy to modify and gives you the following niceties:

I've made a few changes, stylesheeting the form elements a bit so that they dynamically resize, but that didn't take more than a couple of minutes. With FTP access and a normal server (eg, one running Apache) it took another minute or two to .htaccess password the directory so that only I can edit pages.

Now a bit of background on wikis for those wondering what I'm gibbering about...

Wiki-wiki means 'very fast' in Hawaiian, and refers in this context to easy editing and linking together of documents. First implemented by a guy called Ward Cunningham, the initial concept was described as: The simplest online database that could possibly work. Since then, wikis have gained acceptance in all sorts and scales of group projects, being a friendly way of getting documents online and allowing modification. Once they're set up no coding knowledge is generally required to enter data, the emphasis being on content rather than the mechanics of web pages.

This evening's project came about as the result of a chance comment made to Glyn about Wikipedia, a large publically-editable encyclopedia wiki and a good demonstration of why wikis are effective for global collaboration. (It's also a good demonstration of why most wiki software enables automatic backups, so that people can if needs be restore earlier versions of a document, but that shall be a topic for another day.) I'd found myself earlier without a pen and so leaving on my guestbook the URL to an auction with a list of book titles... which got me thinking about making an online notepad for snippets like this and the instant-editing properties of wikis. I was intending to just write a quick bit of php to allow me to edit an HTML document and display it with automatic linebreaks, but thought I'd have a look around for prebuilt code with more functionality.

roWiki isn't perfect; there's no mechanism to delete pages, only to blank them. It doesn't handle uploading of images to your server (remember, inlining images from the servers of other people is impolite as it's thieving their bandwidth.) However, in all other respects it's a good balance of simplicity and power for what I want.

Onward, therefore, to complimenting software:

File Thingie is a ~60Kb php file manager that provides quarantined uploading (only to a directory of your choice) with optional passwording—there's no need here, as there's already .htaccess protection in place. Anyway, we tell File Thingie to use the /pages/ directory from roWiki, since all the wiki engine cares about is the text files that are in there. The presence of image files won't bother roWiki, and FT then becomes simultaneously useful for deleting redundant pages.

Throw in a link from the roWiki page to File Thingie and a link from filethingie.php to the roWiki index.php and you're all set. Of course, you can accomplish similar with other prebuilt wiki tools, and there are leaner file managers than File Thingie—writing the php for everything from scratch wouldn't be that difficult—but for a solution that was quicker to throw together than this blog entry, I think it works rather well.


Tags All Tech