You are viewing page 161 of 219.

Macmini Co-location

By Timothy R Butler | Posted at 6:28 AM

Yeah, you want one… you know you want a co-located Mac mini server for only $22.95 a month (plus the cost of the system). And as I noted when this was posted to a list I'm on, that is the only reason you'd actually sign up for this service: because you'd like to say you have a co-lo Mac mini.

Don't get me wrong, it is a neat idea — and you saw it first on asisaid — but with a paltry 20 GB bandwidth allowance, that skyrockets in cost if you up it to enough to keep a dedicated server busy, and 24×7 onsite monitoring only available after you give up an additional twenty greenbacks, you'll quickly end up in budget dedicated territory minus all the perks of budget dedicated machines.

Still, it's a neat idea if you want to play around with having your own server, but can't justify the price of something a bit more expensive. I actually like the idea, I just hope someone doesn't think they are getting a bargain when they end up having to add all the upgrades later on.

Personally, I think rather than sending a new Mac mini to this place, I'd keep it at home and make it a media PC. Or a file server. Or a kitchen PC. What would you do with a Mac mini?

Trackback and Pingback

By Timothy R Butler | Posted at 7:15 AM

Here's a question for my readers. Does your blogware do pingbacks, trackbacks or both? I'm trying to decide how to implement such things in SAFARI. It looks like trackback auto-discovery is fairly clunky, and, if I understand Six Apart's design of the same, it merely looks for an XML/RDF tag embedded inside the page — something I believe would not work on, for example, What in Tarnation!?!?!?!, which, to the best of my knowledge, seems to be lacking any XML/RDF information embedded on the article pages.

To continue to examine Christopher's blog (hope you don't mind, Christopher), I do see that he has a properly implemented < link > tag for Pingback auto-discovery on his site. Given this, I suppose SAFARI could automatically pingback every link mentioned in a post, but only trackback if explicitly told to. Of course, the other question is whether I should pingback to sites I also trackback. My dear reader, how does your blogware work on this matter?

Color me confused and boggled about this element of blogware implementation.

Update: OK, so Christopher's blog does have RDF encoded on the front page. But I haven't figured out how to properly find that if I link to a permalink rather than the front page. And that still leaves the question of whether I should pingback and trackback the same link. So, your insight is still much appreciated.

Update 2: It helps to examine more than one blog. As it turns out, Pressed and Ed both have proper embedded RDF information on the article pages. Kevin does not, but then again, I don't think his blog supports trackbacks now that he's moved off of WordPress.

So Christopher, straiten up and get trackback RDF information embedded in your article pages — it's the WITty thing to do. ;-) And, no, don't bother looking in my blog's HTML, I haven't implemented trackbacks yet.

Leave comments about how pingbacks and trackbacks work for your blogware below… I'll be very grateful for your help.

Blank

By Timothy R Butler | Posted at 6:33 AM

My mind is blank at the moment. I can't think of anything good to say and the inspiration mentioned yesterday is certainly elsewhere today (although now that I know what I am doing on SAFARI, I don't need much more inspiration on that, I can use it in other areas!). I am aiming to get a lot done in the next week, maybe that is part of the problem.

And Dream I Don't

By Timothy R Butler | Posted at 6:38 AM

But I do think, at least, in the middle of the night. Here's a sign that you've been planning things too much lately: you wake up in the middle of the night with a bright programming idea and start mentally planning how the code will go together. During normal waking hours, I've been thinking a lot more than actually coding SAFARI. But this was a new one. Sure I might wake up occasionally with a brainstorm, but rarely to the point where I'd then spend the next half hour laying in bed developing the idea.

It did, in fact, get better and better and several problems I'd been trying to figure out were resolved during this time. “Hmm… but how would I arrange the database for multiple categories without creating too much overhead? Well, if I created a separate table named categories, then created a table that showed which categories each article went in…” So many ideas inside my brain just kept popping out like that. It went on like this until I finally hoped I'd quit getting bright ideas so I could get back to sleep.

Finally I did, but not before my next few days worth of work was fully and properly hashed out. Today, however, I am tired. This project it taking over my time of rest! You go to sleep to get away from working, you know what I mean?

By the way, an extremely perceptive reader would look back on asisaid Challenge and be able to extrapolate an song title from this post. 25 points to the one who does, but it will be tough — I gotta break y'all back in. Oh, and while I'm at it, another 10 points to the person who can figure out what about this post has to do with my second IBM compatible computer. If you didn't guess, the Challenge is coming back from its forced hiatus.

The Key(board) to Reorganization

By Timothy R Butler | Posted at 1:29 AM

You've probably noticed a few tweaks to the look of asisaid for the last few days. Expect some more in the coming hours and days. Right now, I'm mostly still working on the backend, but I'm finally getting around to enabling some stuff that is noticeable on the public side of the interface. Hopefully in a few more days, asisaid will be nicer than it was before the (cue dramatic music) GREAT BLOGGING CRASH OF OH-FOUR.

On the backend side, I must set things up so that I do not have to manually ping Weblogs.com any longer. I'm sick of doing that!

I did get somewhat distracted over the last two days. I replaced my 6.5 year old Dell/Philips monitor with a flat panel, which required cleaning up my desk. While I was doing that, I decided to reorganize the cables under my desk and remove some of the extra stuff before I overload the circuit. I then neatly bundled the cables together and put everything back in place. Just in time to have my keyboard die. sigh At first I wasn't sure it was the keyboard, because it was intermittent and was causing problems with other USB devices as well. But I've been using another keyboard all day today and things seem much better. So now I just need to figure out what keyboard to replace my trusty old one with.

Right now, I'm using a basic Apple keyboard that I had laying around. It was that or and old Microsoft one. Neither one of them is an ergonomic one like my Dell Comfort Key was. Although I think Apple's mechanisms have a better tactile feel, like an old IBM keyboard. But I think I'll need something with a better angle, and perhaps ergonomic shape, again.

Revolution

By Timothy R Butler | Posted at 7:57 PM

Apple today launched the Mac mini and iPod Shuffle, at the low-end price points of $499 and $99, respectively. Read my article, linked, for the scoop and mark my words: Apple will reverse the trend of being a marginalized computing platform, starting today.

The Mac mini is sleek and everything the PowerMac G4 Cube should have been, only for way less than other Macs rather than more. This is Apple targeting the iPod generation with a system that will be considered every bit as “cool” as the iPod and priced at the higher low end of the computer spectrum. It would make an excellent extra computer, connected via AirPort to the computer in the home office or den, an excellent Media center PC (with included DVD combo drive, etc.), and so much more. This is the beginning of a revolution in computers, me thinks.

Moving Along

By Timothy R Butler | Posted at 5:58 AM

Topics are (almost) working. I've fixed some more bugs and continued to streamline things. Expect more updates tomorrow. Then, maybe I can get back to blogging rather than programming for a blog.

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

OK, So It'll Be Tomorrow

By Timothy R Butler | Posted at 6:12 AM

Well, I had good intentions, but they don't always work out, right? Expect a real post tomorrow… hopefully. Also, I really hope to do the SAFARI upgrade tomorrow. It will include a real, verified RSS feed, properly working cookies, elimination of some display bugs and various other fixes. Hopefully I can get topics working again soon, as well. Plus the blogroll!

Say tuned….

You are viewing page 161 of 219.