crazyguyonabike - started in 2000, this is a place for bicycle tourists and their journals. It began with my own account of a coast-to-coast ride across America in 1998, and grew when I developed the code to allow other people to post their own accounts. There are now almost 10,000 bicycle tour journals and articles by people from all over the world, along with over 1.5 million pictures.
topicwise, townwise and mywise - this is a family of websites based on the crazyguyonabike code, expanding the community template into other topics and locales. All the sites share the same user directory, and so build a strong community network which will span a wide variety of content. There is a topicwise overview article.
nilspace - an open-source project to develop a distributed, network-aware, easy-to-use computer language (Nil) and programming environment (under development, currently on hiatus while I develop the topicwise websites).
Linux Network Howto: A series of three articles on building a home LAN using Linux, connecting it to the outside world via DSL and a packet-filtering firewall, and finally setting up a public web server - all using Open Source tools such as Linux, Sendmail, Bind, Apache, Embperl and MySQL.
Rewrites Considered Harmful? - When is "good enough" enough? Does the constant rewriting of tools and packages which have attained great success and even ubiquity really benefit anybody? Some thoughts on the subject, just for the hell of it. Featured on slashdot.
Open Source Myths - thoughts on some of the "truths" that are spoken with regularity by some members of the Open Source community, which I feel are not always so obvious, simple, or even true. Featured on slashdot.
How my name was hijacked by email scammers - Fraudsters have been sending out emails pretending to be me, for some odd reason. Apparently I want to transfer large sums of money across international boundaries. Wow, just goes to show, you never know what you might be up to when you're not looking.
deep - a powerful and extensible Perl script which recursively traverses subdirectories, processing files that match a given filename pattern. There are different commands, such as find, replace and delete.
ping-www-server - a handy Perl script designed for running as a cronjob, to regularly fetch a given web page and send an email if this operation fails (there is some fault tolerance, e.g. it can try a certain number of times before giving up, and you can set a timeout for the fetch attempts). This script will handle webservers that have completely hung (i.e. it will successfully time out on the request even if the server side has not timed out). I have it set up to email my phone number, which results in a text on my cellphone. Run every minute from my backup server, it means I can be notified very quickly whenever MySQL decides to take a little vacation and stop talking to everybody.
swapwatch - a cron-based utility for monitoring how much swap memory is being used, and taking action when certain levels are reached. Useful for ensuring against oomkiller being invoked due to memory leaks in long-running processes.
mysearchbot - a Perl web indexing engine, published in April 2001 issue of Dr Dobb's Journal. The perl script is largely self explanatory. There's also a search template written in Embperl which demonstrates performing a search using the tool.