Why I'm Reinventing Disqus

Author: Jacob Barkdull on Wednesday, July 21 2010 Comments

Why am I reinventing Disqus? That is the question I've been getting asked since I "announced" on Identi.ca that I'd be replacing Disqus with a free (AGPL) comment system that I was to write. Well, I am not the inventor of Disqus, so technically I can't reinvent something I didn't forehand invent. And because I'm not about to run a service for millions of people, my comment system won't have accounts (though it will have the possibility of setting a password so that only certain persons can post with their certain names.)

I've also been getting the pragmatic question of "Why replace it, if it works? Source Code isn't worth having to reinvent Disqus." Well I guess I should point out a few things I don't like about Disqus, both technically and ethically. So let's start with the obvious.

Where my Comment System is at (features and how it works): There are only a few things that need to be implemented before my comment system will be fit for the job: 1. Replies, with notification of replies to the email supplied, 2. 1. A way to ensure that only certain people can post with certain names (i.e. No visitor can use the name "Webmaster" or "Tildehash" in my case.), 2. Delete option, comments have to be able to be deleted, 3. 2. Clean up code.

Looking at where the comment system started, it had just "Name" and "Comment" fields, the form had to be placed on the page as HTML, and each page had to be entered into the script manually. Now, to place comments on pages you use a simple <script> tag, it automatically detects which page it is on and displays comments for just that page, there are "Name", "E-mail Address", "Website", and "Comment" fields, all but the "Comment" field remembers what you entered even if you navigate away from the page (using browser "cookies" which expire a month after the last comment posted), simple BBCode support, URLs automatically become links, referrer checking, and permalinks.

When a user posts a comment, a .TXT XML file is created in a directory specified in the script, default is "/comments". The first comment is called "1.xml", second is called "2.xml", and so on, so to delete a comment you just delete the corresponding file. This of course isn't practical it needs to be easy, which is why I plan on implementing a "Delete" option, it's just a matter of how to do it securely.

Well, currently, Disqus is technologically superior to my comment system, but already ethically inferior for the reasons above. You can view the comment system's source code here. Anyone interested in helping me develop this or if you need help using it, please contact me, or do-what-you-do-at-Identi.ca at me.

And finally this article is the first web page to use the comment system,
so enjoy it before I break it trying to implement replies ;)
Share This Page On...
Subscribe to Newsletter:
Advertisements: portfolio