You are viewing page 7 of 12.

Picture This

By Timothy R Butler | Posted at 5:00 AM

Well, I added my “official mug shot” to the right column of this page. I point you back to yesterday's post for the appropriate warnings about it, but it is at least better than the last. This is the head shot I referenced earlier this week.

As I noted previously, I've been on the web for either ten or eleven years now (I can't recall exactly when I first popped open a web browser — I think 1994), and this is a first. I've thought about doing so before, but just never got around to it. But now I have and Ed cannot complain about me should I decide to turn asisaid into an Internet Church now. ;-)

In other news, I did some minor adjustments to my Choose Your Own Adventure piece, so that it now specifically says that Riley was trying to contact the police. I'm not sure if it is quite what Christopher was looking for, though, so he is welcome to throw a rotten tomato at me and tell me to fix it in some other fashion, if he'd like.

Topically Speaking

By Timothy R Butler | Posted at 5:57 AM

I'm not sure if anyone has (or ever will, for that matter) make use of the topics on the sidebar, but as long as I have them, I decided to start putting things in order. My blog has been subtlety shifting to less of a technology focus (at least I think it has, did you notice?) and so I shifted things around to avoid placing new content into Miscellaneous. The Linux category and some other technology sections were merged into the existing Comp/Tech category, which makes more sense. Here's what's new:

  • Books, Literature and Language: This category will be a good place for discussion of books when they don't fit anywhere else. It will also contain my musings on literature (several longish pieces coming soon) and the English language. This kind of stuff is already on the site and I'm sorting through the other categories and moving stuff here as appropriate.
  • Holidays: This category absorbed the Christmas and Christmas Cheer categories and will also house some of my stuff from other holidays. Again, I'm still working on populating it with posts that previously went into less appropriate categories.
  • Creative Works: This takes over for my Writing and Poetry categories that house creative projects I've placed on asisaid. When inspiration of Haiku or Villanelle strikes, it will land here from now on. I have a few pending that I have not decided if I will release or not. If I ever get a start on the next Great American Novel, that will go here too. I've started placing items in it, expect some older ones to be added in the future.
  • Learning: Stuff from “the Academy.” I'm not sure exactly what will find its way here, but it will be more than mere discussion of course schedules in the future. More informal posts on the joy of learning may factor in too.
  • Question: This category is home to previous asisaid Challenge posts. If you want to revisit our friend Mosca from Volpone or recall the official languages of Sweden, check out these entries.]
  • Current Events: Apparently I don't comment on Science and News independently from other categories all that much, so I merged them together. I'll probably find some old posts that fit here in the future. If I discuss voting in Iraq, it will likely go here.

In addition, I'll be adding a Religion category soon, which should round out the new “Humanities Section.” This will house some posts I'd like to write on the Academic/Critical Study of Religion (not negative — critical can be positive) as opposed to my present Faith category, which normally focuses on the personal experience of faith in Jesus as opposed to systematic study of doctrines. If this difference sounds vague, stay tuned, as that will be the subject of my next post (or perhaps one post after that), time permitting.


By Timothy R Butler | Posted at 5:56 AM

You may have noticed I've added topics to the side column of the site now. I just stuck them there for the moment without concern for aesthetic issues, which I hope to deal with on this site in the next few weeks. I'll also need to re-organize to remove some of the topics that I've ceased to use and merge topics that are redundant.

Back when I was using my fork of Ciaran's Journal tool, I had hacked in topics by replacing another field, but there was never a place that listed all of the topics being used — an article was simply added if I typed in the right name in the box when posting (if I typed in something different, a new topic would be “created”). Now that I can see them all at once, I can see where I've changed topic names at times and can avoid doing likewise in the future.

More Progress

By Timothy R Butler | Posted at 6:34 AM

Cookies now work (or should), subjects are automatically filled out in comments again, “Read More” links only show up when they should, etc. Am I done? Not even close, but I am closer. Let me know if you see any new bugs (or any old ones I've seemed to have overlooked — other than stuff like padding around text (the layout is on my list to fix).

Oh, and here is the RSS feed, if you are interested.

The Genealogy of SAFARI (Or How Blogging Revived Old Code)

By Timothy R Butler | Posted at 9:30 PM

SAFARI (Standardized Automated Format and Retrieval Interface) began its life in 1999. I had a simple goal and wanted a simple solution: I was redesigning my church's web site and I wanted an easy way to post the entire church newsletter online. At the time, I had been tinkering with Perl for about two and a half years and thought I was a much better Perl wrangler than I really was. So I decided what every overambitious Perl programmer would decide: I'll write a content management system.

At the time, there were far less CMS's out there, I wasn't aware of more than a handful, and none of them did what I wanted — provide a way to sort articles by issue, a must for a monthly publication. I started working on SAFARI, and quickly started to realize the enormity of what I had taken on. I had no idea where to begin. But I trudged ahead, creating a relatively modular CMS that uses a flat-file database (that's a fancy term for a text file that stores your data), provided multiple levels of user access and eventually even a rudimentary search engine. In 2001, I released the code here, although honestly the code has some serious flaws which I knew, even at that time, needed to be corrected.

In fact, SAFARI was so focused on issue-based content, that I had to go with PHP-Nuke when I launched OfB, simply because SAFARI didn't work in the proper fashion for a normal internet publication. It was rather depressing, but laziness has a way of winning over pride, and so that was that. OfB was launched two months before I even released the SAFARI code, which made the release of SAFARI ever more depressing. However, SAFARI did serve its niche well, so I did release it with hopes that maybe someone would find it useful.

Blogging Days
My blog launched in February of 2002, at the time before blogging had really become all that well known. In fact, while I had heard the term, I had ignored the trend, and when my friend and fellow DMOZ-editor Ciaran Hamilton told me he had started a blog and offered his then-unreleased Journal script to use, I decided to give blogging a spin. This did compound the fact that within four months I had passed over using my own SAFARI script not once, but twice, but by that time I had given up any grand plans for SAFARI.

I did not have any real intentions with my blog. Given that Ciaran was the only blogger I knew, I didn't really do much with it for a few months. Given my minor amusement rather than serious interest in the idea, I didn't even start it with a proper, memorable entry. No, the entry, as immortalized in Christopher's In the Beginning post that catalog's many blogs' first posts, said rather un-eloquently:
Hiya! My friend Ciaran Hamilton gave me this nice script, waddya think?
How I wish I had the foresight that I'd still be blogging today. Eduardo started by invoking the muse from Homer's Illiad, I start with broken English that makes me cringe. But, I digress…

Ciaran's Journal code is probably one of the tightest blog codebases you will find. It is a compact, two file package that gets the job done well. I know that much, since it served me well from February 21, 2002 through December 23 of this past year, when it finally died for a reason I still do not know. During that time, I synchronized with his official code based once in November of 2002, after which I forked the code, adding commenting capabilities, a much more standard issue look (attempting to mimic MovableType somewhat) and a few other features.

This is the point at which my interest in blogging would become galvanized. Blogging was only so interesting when you didn't know if people were actually reading the posts. I know Ciaran and Kevin were at least occasional readers, but only because I knew them from elsewhere. It was my first post with commenting support that Christopher left a short comment and I realized I had a reader originating from the blogosphere — maybe I could get into this thing after all!

The Christian Directory Project (OpenMoz/FreeMoz)
Another important thread in this genealogy is the ill-fated FreeMoz project. FreeMoz is key for two reasons — first it is the project that brought me into contact with Ciaran and also some of the lessons in database design that I learned working on it figure into SAFARI later on. Long before my DMOZ-editorship lapsed, I made a post on the editors forums asking if anyone knew of a way to get the DMOZ codebase to create another specialized directory. Ciaran answered and after exploring the options, we decided to write our own replacement. I hacked the basics together in December of 2001, Ciaran added some much needed functionality and we would continue to work on it on-and-off for about a year. The project died, as Antony Flew would say, a death of a thousand qualifications, as we sought to garner support to develop the software needed to create a Christian variant of DMOZ. The impetus for the project was an issue, or I should say, issues with DMOZ, such as DMOZ's listing of X-rated material as well as the simple fact that “FaithMoz” could hopefully leverage the same concept to bring together a directory of Christian sites perhaps even better than DMOZ's, since there would not be as much “noise.”

Like SAFARI, building a whole directory project was a big deal. Hoping to attract developers to create the code-base, which would be useful for many directories, I began talks with Richard M. Stallman (RMS) of the Free Software Foundation about making the software, re-badged FreeMoz by RMS's request, an official GNU Project. We ended up getting bogged down in legal (i.e. avoiding infringement of AOL/Netscape's DMOZ) and editorial freedom issues, and the months we spent on that ended up killing off the momentum of the project. It was my fault for worrying to much about amassing major support, rather than the FSF's fault for worrying about legalities.

Back to SAFARI
In March of 2003, OfB was hacked, thanks to PHP-Nuke's poor security model. Having taken a week of vacation that very week, I resolved to spend the time figuring out a replacement for PHP-Nuke. I became convinced that all of the Nuke-spinoffs had issues, and blogging software simply wasn't quite right for a news site. What was I going to do? I decided it was time to revive SAFARI. However, SAFARI needed to be improved vastly for it to work on OfB. I would need to lose the issue based mentality of the CMS (or, more correctly, relegate it to one of several modes of viewing the content), add commenting, and most importantly, port the whole thing over to a SQL backend instead of the inefficient flat-file database.

I was able to do the last item within about three days, but after my work-vacation ended, I did not have time to finish the project. I also invested some time in fixing parts of PHP-Nuke, so I gave up the idea of bringing back SAFARI, once again. The promise of a really useful version of SAFARI, that I could use somewhere other than just my church's web site, was starting to seem like vaporware.

Over the next year, OfB would be compromised again and, at the same time, I started noticing things that were lacking in my forked version of Ciaran's Journal code. For example, I could not delete or edit posts or comments without editing the database manually (editing was especially tedious because the db was encoded). I also noticed that asisaid was becoming extremely slow and a huge resource hog, since each view of any post required the entire one megabyte database to be processed thoroughly. At some point, I resolved that I would make asisaid a test site for SAFARI, since it was a low traffic site and needed a needed a CMS — once I got SAFARI into a state where it worked satisfactorily here, I could move OfB to it as well.

Over the past year or so, every few weeks I'd take some time (usually a few hours) and start rewriting functions of SAFARI. I integrated the comment code I had written from my old Journal code, finished SQL-support and started implementing a more sensible theme system, similar to the one used by PHP-Nuke. The comment code is essentially SAFARI's only link to Ciaran's code, although it also incorporates some of the ideas from Journal codebase.

Back to Genealogy
If you've been following this byte-wasting toy of mine all the way to this point, you've probably noticed that SAFARI doesn't have a clear genealogy. SAFARI is an older codebase than Journal is, but it is also, in some senses, the decedent of Journal. Likewise, while porting SAFARI to SQL, I incorporated many of the ideas I had first tried out for FreeMoz, which had, conversely, borrowed some ideas from the original SAFARI. Once I complete the project, SAFARI 2 will probably have enough new code that it might be fair to say that it is the grandchild of SAFARI 0.9, Journal and FreeMoz, but it is not a simple linage at all.

Why I've kept working on SAFARI for so long could merit an entire essay of its own. Part of it is the practical reasons I've listed above, but in some ways, it may have been almost more efficient to start off with someone else's code base and grow from there. Another part is that SAFARI has almost taken on a life of its own — code, in that way, is sort of like poetry, I guess. It is sort of comforting to work on it, like talking with an old friend. Now that my old friend is approaching being a robust, modernized CMS, it is also becoming rewarding to look at my blog and realize all of this work has finally started to come to fruition.
Lastly, to believe themselves, when they tell you they will make you immortal by their verses. Thus doing, your name shall flourish in the printers` shops. Thus doing, you shall be of kin to many a poetical preface. Thus doing, you shall be most fair, most rich, most wise, most all; you shall dwell upon superlatives. Thus doing, though you be libertino patre natus, you shall suddenly grow Herculea proles — Sir Philip Sidney

Buh Bye

By Timothy R Butler | Posted at 8:14 PM

The old blogging software I've been using seems to have given up its ghost. It's dead. As a doornail. Gone. Bit the dust. Bought the farm. All the entries now refuse to appear, although all the data is intact on the server. I have no idea why.

Fortunately, I've been planning a blogware update to my new SAFARI 2 Content System. Unfortunately, I discovered some bugs in it this afternoon as I was considering migrating it (this was all before I realized my blogware had died). Fortunately, I've fixed most of those bugs. Unfortunately, I haven't fixed all of them yet.

My big hope is that I'll return to the blogosphere within the next few days, at worst, maybe tonight, at best. In the mean time, I'll update this page, but I don't want to put too much effort into this static page.

I've placed a place holder article on where you can comment on this “entry” if you'd like to. Click here to read and post comments.

Merry Christmas to All of My Friends in the Blogosphere!

In the mean time…If you have not visited all of the sites on my blogroll before, why not visit one of them right now?

Give Me an Assignment!

By Timothy R Butler | Posted at 1:32 AM

You get to decide what to post to your own blog, but what about someone else's? Here's your chance to boss me around. The readers of asisaid can discuss what they would like me to post about, and I will blog about the topic agreed upon by the comment posters to this post. Here's a few requirements: (1) it should be a topic I can discuss within a typical sized post, certainly not more than two pages and (2) it should not require research of any substantial sort. If you were thinking of assigning me to write the book you always wish had been written, I'm sorry, but I cannot promise I'll do that.

So what do you think? Post your ideas below. I will not be commenting in the comments for this post — it is up to you and your fellow asisaid readers to come to a consensus on this.

The Blogroll

By Timothy R Butler | Posted at 11:05 PM

Here are some blogroll items I've been meaning to do and/or ask about:

asisaid Blogroll now with a personal touch: I decided to give my blogroll a more personal touch by switching from blog names to the names of the bloggers. Here's how I did it: if you publish your whole name on your site, your whole name went on the roll. If you publish only your first name and/or I am aware that you don't really want your whole name tied to your blog, I only included your first name or first name plus last initial. If I made a mistake, let me know. If I didn't put down your last name and you don't care if I do, comment below; if I did put down your last name and you don't want it listed, let me know that too. Thanks!

I also added a link to a blog by a friend of mine who just joined the blogosphere. Go take a look at Deep Thought and give Chris a hardy welcome! It looks like it should be an interesting blog for those interested in Macs (Chris has contributed a couple commentaries to, including one I mentioned the other day).

please ping I'd like to ask a favor, if I may. If you have a blog, please “ping” (your weblog software should support XML-RPC pinging) and/or when you update your blog. If your blog is at the bottom of my blogroll, that probably means you never ping and therefore blogrolling never moves your name to the top of my list. If you ping, then I'll know when you've updated and that means I (and others using BlogRolling's or Wordpress's ability to denote updated blogs) can enjoy your new posts.

blogrolling In a similar vein, if you are blogrolling me, remember that the address I ping is, not just or or any other variation. Therefore, if you are wondering why update notification never works on my blog, you now know why. It is rather unfortunate that the XML-RPC ping spec does not provide a convenient way to provide alternate URL's (as far as I know), but since it doesn't, the address must be exactly the correct one for update notification to work.


By Timothy R Butler | Posted at 12:29 AM
I was thinking about asisaid points, and I decided it is high time that I made them useful. Therefore, the first person to earn 350 asisaid points will get:
  • A 1 year purchase of the domain name of their choice (under the .com/.net/.org/.us/.biz/.info or a few other top level domains). is nice to have if you don't have it already. ($5.95 value)
  • 3 months of web hosting's Maple plan — a $60 value. Here's what you get:
    • 500 MB disk space
    • 24000 MB transfer per month
    • 80 e-mail addresses
    • 30 extra (sub)domains
    • 6 MySQL databases
    • 15 FTP accounts
    • Urchin Professional Statistics
    • Protected by my new Spam Blacklists configuration
    After three months you can keep the account, downgrade to a smaller account or cancel it. This is your choice. Your dealing with me, not AOL, so have no fear about getting stuck.
Now if you're saying, “I already have a hosting account,” that's OK, you can take the domain and skip the hosting (or vise versa). If neither item is of any interest, well, maybe I'll think of something else too.

Here's how it will work: I'll post questions that offer asisaid points a bit more frequently than I have in the past. If you are the first person to answer the question correctly, you'll earn your way toward the prize. This is on the honor system — I trust that my readers will not use Google or any other similar service to get the answer. I reserve the right to disqualify a participant who I have deemed to be failing to honor this request.

The small print.
Void where prohibited. No cash value, no purchase necessary. To enter, you must be a regular visitor to asisaid, as judged by Tim — this means regular commenting and not simply coming over to this site to try to get points. You know if you're regular or not. Most anyone who has commented on this site prior to this announcement is a regular. Offer expires June 1, 2005, when someone has earned the set 350 points or when Tim deems it necessary to stop. If either of the services offered become unavailable a substitution may be made or the offer may be revoked. Personal contact information will be required by the domain registrar for the WHOIS record, therefore participants in the contest must be 18 years of age or older.

Blog Spam

By Timothy R Butler | Posted at 1:21 AM

For the first time, my blog is being hit by blog spam. Since my blog requires a confirmation to post, I think it is fairly unfriendly to the average stupid spam bot, but someone has been on here posting generic posts of anti-Bush quotes over the last few days. If that person reads this, I do consider “boiler plate” comments — those written to go anywhere and everywhere and not specifically in response to this blog — a form of spam, and I will take the necessary measures with your ISP to put an end to this if you do not cease immediately (yes, I have logged you).

Don't play games with me.

You are viewing page 7 of 12.