Notanda
About Notanda
The program I wrote and used to automate the adding of content to the site, before switching to Drupal. Notanda draws primarily from the wiki concept, but includes elements of blogs and tagging.
It was written in PHP, but I began porting it to Python, partly for performance, but also as a learning exercise. It is still in beta at the moment with parts incomplete, but I still dig its ease of use -- being able to create a text file on my local computer and have a new article on my website in a little while, all without my doing anything besides saving and triggering an Automator script with QuickSilver.
Mmmmm...plaintext...
I may switch back to Notanda if I get around to finishing the Python port.
Notanda Theory
Features, ideas, and thinking on Notanda
Wiki linking functionality, but sans CamelCase. Bracket-linking only. (See CamelVsNonCamel.) It has been pointed out that not using CamelCase breaks AccidentalLinking unless it is compensated for it in some other non-manual way... but perhaps this is not as important as it has been made out to be.
VoodooPad does its thing by checking for patterns on every word -- I wonder if this is feasible due to the naturally limited nature of a personal desktop wiki. Would the server overhead be too much? See also FreeLink and GaGaParser. (Something I saw mentioned was to only check words four characters and longer.)
To forestall this I went with manually bracketing the desired wikiwords. This requires some memory of what articles have been already saved, but a quick CLI search can remind you. Oddly, I've found this promotes the creation of new articles, as I can quickly create a foobar.txt draft file on the fly for later writing.
RSS and Atom feeds are now available. They are hard files created via a cron-called script.
Journaling (aka blogging) could be is achieved by YYYY_MM_DD entries (e.g. 2005_07_27). Organized naturally with 2005_07 and 2005 pages. Still haven't programmed this, and I'm not sure if I will or not. I had been uncertain whether to go through the effort, but it wound up not being a problem. Eventually I will want to compensate for the number of day articles listed in the 0-9 section of the automated Index, probably by splitting them off into their own archives and leaving the year pages.
I've added in tagging capabilities, self-organizing the site a la Flickr and del.icio.us. Tags are added on the last line of the original plaintext file with a simple punctuation indicator. And leveraging the tag concept further, I created a sidebar section that allows you to search by that article's name as a keyword/tag on Flickr, del.icio.us, Technorati, and Google.
Bookmarks module Associating articles with tags (i.e. the article titles themselves are potential tags), so that if you're viewing my page on baseball, a sidebar would display any bookmarks list of "Related Articles" with that article's title as a tag is displayed at the end.
Other wikiesque functionality to be potentially added later: RecentChanges, FindPage, BackLinks (in addition to the current tagging), LastEdited, PageInfo.
Blogging functionality: of the standard blog features, the only one I'm really missing and would be interested in doing at this point would be comments, with some anti-spam capability.
I should mention that a lot of this has been inspired by Rui Carmo and the Tao of Mac site.
What is Wiki?
What is wiki? Here's a rather inflatedly philosophical definition. Like most intarweb systems that capture the imagination (e.g. blogs), people get a little effusive about wiki and the wonders of wiki "community" (c.f. blogosphere).
At the end of the day, all a basic wiki is is an easy way for any number of people to construct a set of hyperlinked documents, AKA a website. Done well, wiki is a pretty cool idea. It is not, however, a panacea or omni-tool. Other tools, such as VoodooPad, are what's known as desktop wikis, normally standalone programs that are edited on the user's computer rather than via a website. The common theme is ease of content creation, whether collectively or individually.
Temporarily temporary
I expect I'll be sticking with a Wordpress installation in the 2006 section for at least the first quarter of the year -- between coding projects, writing projects, and just regular life stuff, I suspect extra time is going to be at a premium at least through March. But we'll see.
Besides which, I need to do some thinking on the direction of Notanda and the site in general. This gives me the time to do that.
keywords
Found via Matt Gemmell's details on the tagging plugin he's using for his site, I installed and futzed with Jerome's Keywords to handle linking to the articles on the rest of the site. Basically, in the footer DIV of the post template, just add a call to the appropriate function in the plugin, viz:
<div class="post-footer">See also: <?php the_post_keytags(); ?></div>
This produces links that look like /2006/tag/foobar
Then, in the jeromes-keywords.php file itself, I tracked down the two spots that created those links and changed them to display /foobar/ instead (using the $keyword variable), giving me the nice links to the regular Celsius1414 articles.
If I decide to stick with Wordpress for the 2006 journaling, while doing the articles via Notanda, I'll set up a routine to automatically update Related Articles if they're tagged here.
Now I just have to remember to use commas between the tags, which I haven't been using on the rest of the site.
Happy New Year!
Well, as previously discussed, I am going with a temporary WordPress 2.0 installation for journal entries under the 2006 directory. Not sure just how temporary it is to be, but I don't have time at the moment to upgrade Notanda. :)
Also haven't yet determined how I'm going to handle the separate feed situation, but it'll probably be with Apache redirects. I loaded in a spiffy theme (see link at very bottom for where to find) and a Markdown plugin. So far so good.
Notanda vs VoodooPad
Updating the site globally today, so you will notice some peculiarities in the feeds. Do not be alarmed. ;)
Continuing the thoughts from yesterday (2005 12 26), another idea I've considered is trying VoodooPad as a backend engine for the site, then using its web export feature. Up until recently, however, that feature has been quite lacking. With the new 2.5 release, I've thought of revisiting and exploring the possibility.
One severely cool factor is the built-in markup interpretation, so that if (for example) you write using Textile, VoodooPad can interpret it on the fly during export. You can set up a plugin template, two scripts for before and after processing, and other stuff.
How my original yyyy/mm/dd needs might be handled I still need to figure out. :)