Anyways, you get the idea. Coding takes solid concentration, and I have to manufacture some time over the last several weeks to get this done. Perhaps a dozen articles have been on hold in the ensuing time. But we’ve got comments once again. For some reason it’s no longer preserving line breaks. But I have made several key improvements over the 2004:
- Drupal conformance. Viewpoints now is a standalone module. I’ve disconnected it wholly from the comments.module (though it still populates the comments table), and it only requires one change in node.module. Also, it’s now using PHP Template aka Smarty. But I’ve completely revised and extended the smarty.engine to handle the templates I’ve added. So I still have to reconcile these somewhat.
- Improved interaction via AJAX. The interaction now runs a bit smoother with some AJAX (asynchronous javascript and XML) sensibility. Submitting a comment will only refresh the comment section; it will not refresh the whole page. I plan to update the ViewPoint submissions so that they only refresh the respective scoreboard.
- Browser-neutral javascript. I suppose that goes without saying with AJAX. I used only DOM2 standard API, so it works in both IE6 AND Firefox 1.5. I would like to test with additional browsers. (I would test in several Linux browsers, but I’ve exhausted my time months ago trying to locate the proper SuSE/Linux drivers for a NEC LCD1715 monitor, so I haven’t used my Linux desktop in a while)
- Less clicks. Submitting a viewpoint is one click as before, but submitting comments is now only two-clicks: one to show the comment section in line, and one to submit. The preview plane is gone. I may restore it in an AJAX fashion. Additionally, if I setup the tinyMCE editor for the comment textarea to use WYSIWYG, the Preview will be unnecessary. (As it is, tinyMCE isn’t without its performance costs– this is where my 5 year-old K6-533Mhz really starts showing its age).
- Additional icons. Flat-threading technique is designed to make the back-and-forth of a conversation branch easier to read (as we avoid the "staircase" effect), but it makes it tricky to see what comments are responses to a given comment. So now when you hover over a comment title, arrows will appear next to all of its direct responses.
That’s not to say my work is done. Here’s what’s left on my plate:
- Documentation. I’ll expand on all of the above.
- Packaging. Choose the appropriate open source license, write up the INSTALL steps, do some other cleanup, package as a zip. That should come this week.
- White papers. There’s no short-cuts on the Civilities website. I will be framing the ViewPoints module squarely as a solution for the problem of comment scaleability.
- Reconciliation. There’s always been interest from the Drupal team on this project. So I’ll need to start working real hard to reconcile this code with the main Drupal development: (a) coding standards; (b) new column in comments table; (c) how to reference from the node module; (d) module configuration. The one area of some philosophy to square away Drupal’s recent allowance of non-registered comment postings. My specific worry about is that a non-registered actor can literally stuff the ballotbox with ViewPoints. And these can’t be cleaned up ex post facto as there’d no way to tell which ViewPoints are legit.
- Scaleability Testing. On that point– while I’m reserving Civilities.net interaction for registered users, I’m going to set up a dedicated virtual server for open comments. This will enable, at the least, some scaleability testing as well as for demoing the functionality.
- Configuration. I have no doubt that a set of no more than twenty rhetorical signifiers can prove to be of essential use for constructive discussions. Certainly, we’ll have to see whether the standard ones are sufficient for different uses and cultures. To support some experimentation I’ll have to set up some configuration hooks.
- Statistics. Part of the original design is that the ViewPoint statistics can feed other information displays, such as giving scores to community members. This still needs to be designed.
Lastly, I did take note of this comment last month from another comment-writer in Nicholas Carr’s Blog: "It’s no fun to read blogs that don’t allow comments. Open up a little and let your posts evolve ;)" Well, comments by themselves don’t make posts evolve or or people evolve any. It depends on the values that the writer has. If the writer practices a hit-and-run, I-write-what-I-feel-like-writing that is all-too-common in blogging, you won’t have any evolution or growth at all. I try to do things differently here, by writing about a much more narrower field, following up on stories, and by doing so, refining my understanding. And I most certainly hope that the ViewPoints framework ultimately will help writers get a much wider understanding of who their readers are– much more than judging from the subset who happen to write in comments.