Open Source

Reminiscing about old code

I imported some long-forgotten CVS repositories into GitHub last night: anyInventory and Toby Web Mail (which contains the first commits I ever made to a version control system). They are nine years old and eight years old, respectively.

Those two projects were my introduction to participating in the Open Source ecosystem. It felt magical that strangers were emailing me, asking if they could help develop and translate these projects that I had previously been working on by myself, albeit in the open.


It’s painful to read some of the code, knowing how insecure it is. There aren’t any indications that I knew about XSS or database query paramaterization. That being said, the applications still work. I was able to install anyInventory on my Web server in about 90 seconds. Thank you, PHP backwards compatibility.


My commit messages were not so great back then:

“Various trivial changes”

The commit? 12 changed files with 227 additions and 195 deletions.


Here’s the Slashdot post that was the impetus for anyInventory. I left a comment suggesting that users could solve their inventory problems by just sending all of their uncatalogued junk to me, and I included my actual mailing address. Despite concerns from other users about a physical Slashdot effect, not one Slashdotter took me up on my offer. (Also note the then-requisite SCO comment at the end of the thread.)

Drew Hearle, who submitted that Slashdot post, ended up working on the anyInventory project with me for a while.

I credit the amount of time I spent on Slashdot for my stances on open source, Web standards, and pony pranks.


I wrote Toby Web Mail so that I wouldn’t have to use Outlook Express any more, and it eventually became the basis of my college senior-year independent study project, anyMail. I think, but cannot confirm, that at one point, there were Web hosts offering both Toby and anyInventory as one-click installs. The thought of this now terrifies me. (See the security section above.)

Standard

Leave a Reply

Your email address will not be published. Required fields are marked *