Recent blog entries for eskimoses

Today marks the release of version 0.21 of WikkiTikkiTavi, my PHP- and MySQL-based wiki engine. Now with XHTML-strict compliance, CSS, table syntax, an RSS feed, and other minor additions, tweaks, and fixes.

Had fun last night whipping up a chessboard macro for my wiki engine, just to prove it could be done.

I wish I had more time to spend on wiki, both hacking the backend and contributing to wiki sites themselves. Work keeps me busy these days.

Aargh. I like PHP. I love Perl regular expressions. Hence, I love preg_match and preg_replace.

Or I used to. Y'see, preg_replace has Perl's cool "evaluate the right-hand-side as though it were code" operator: 'e'. Coolness. So I write a whole mess of functions to do all sorts of cool transformations of wiki markup into HTML.

Except, if the right hand side is code, preg_replace has no consistent means of representing backreferences! Try this, kiddos:

function f($x) { print $x; }
$s = "a' \" \\b";
$s = preg_replace('/a(.*)b/e', 'f("$1")', $s);

Yeppers, it bombs. Seems that, while they remembered to escape quotes, they forgot to escape backslashes themselves. Oops.

I just wish they could treat that $1 the way Perl does it: like a variable and not like a "replace this token with the string itself"! Tell me that wouldn't make lots more sense. :-)

Thanks to the wonders of still-open PHP bug reports and very slow upgrades on virtual hosts, it looks like I'm doomed to keep my wiki engine in perpetual beta for quite a bit longer (been lingering on this for nearly two months now, no sign of relief). Other than this it's ready for release! Grr.

That was therapeutic. :-) Except it doesn't get me closer to a solution. I'm almost ready to ditch PHP altogether. Perl or Python, anyone?

Hobbies and Work

WikkiTikkiTavi version 0.20 is now in beta test. Did a complete rewrite of the parsing engine and presentation system. It's now got templates and a whole host of other additions, making for a considerably more mature product. The whole exercise was quite fun.

Just in time for work to start sucking up all of my free time. :-) Beginning the next release cycle with some heavy-duty assignments, which will be fun but extraordinarily demanding.

What little free time remains I will continue to work on AndStuffWiki, which suffered a little while I was working on the wiki engine. I'm really eager for it to start growing at a measured and steady pace, both in terms of content and participants.

Life

My wife and I are buying a house, which we'll be closing on at the end of May. Our first house, which has been quite an educational experience! Thankfully, we had a wonderful realtor who helped us every step of the way. It'll be a pleasant improvement over our apartment, not to mention the fact that we'll finally be sinking our monthly payments into real equity.

2 Jan 2001 (updated 2 Jan 2001 at 19:17 UTC) »

So for a while now I've had a virtual host on a hosting provider. They provide me with a few free POP accounts, but I want perhaps a dozen or so web-accessible e-mail accounts. So here's my idea:

  1. Set up procmail to redirect e-mail for those "accounts" to a file, such as /home/myhost/spool/blahblah. Optionally, clutter my database schema even further by tossing it into my (one and only) database instead.

  2. Stick fake info for the "accounts" in /home/myhost/etc/passwd.

  3. Find a web-based e-mail interface and wire it up to /home/myhost/etc/passwd and /home/myhost/spool/blahblah.

Now the problem is with step 3. I searched Freshmeat and Sourceforge, to no avail. I'd hoped to use SquirrelMail, but it seems happy only with IMAP. Does anyone know of open-source CGI scripts that do what I want (i.e., read spool files instead of IMAP or POP)? I don't really have the time to roll up my sleeves and reinvent the wheel. I might consider patching an existent project if it didn't turn out to be a massive chore.

Posted some interesting thoughts that have been bugging me off and on at MeatBall:TheoryOfRelativity. A different perspective on the effects of gravity on spacetime. I'd love it if anybody looked it over with a critical eye.

I think it's funny how such a large proportion of diary entries here start out with an apology for how long it's been since the author wrote. I realized a while ago that I had the same tendency in writing e-mails to friends I hadn't written in a while. Invariably, the e-mails would begin with "Sorry I haven't written in quite a while. Partially due to busy-ness, but also just due to my own laziness."

It occurred to me that this must get annoying to whomever I'm sending ('cause it typically happened to be the same people). So right then and there I resolved never to give an excuse for a late e-mail, but to make up for it instead by giving more details on what happened since last I wrote.

Just an amusing thought that struck me this morning. There's a whole lot of "been a long time since I wrote" being saved for posterity here. :-)

21 Sep 2000 (updated 21 Sep 2000 at 14:54 UTC) »

Why MeatballWiki and Wiki are fast becoming my preferred places to hang out:

  • whoami.
  • kuro5hin.com is back.
  • kuro5hin is becoming rather, um, popular. Perhaps too much so. But perhaps it'll calm down.
  • If worse comes to worst, you can delete bad content on a wiki; bad content, once posted, is semi-permanent on Slashdot, Kuro5hin, and Advogato.
  • Wikis are just darn cool, 'specially the two listed above.

PS: On the ever so slight chance that I'm delighting any troll by having "bit the bait", this isn't a rant at all (cf. my previous diary entry regarding the self-defining nature of community); it's more of a wistful statement of my slowly shifting tendencies in community preference.

PPS: raph, I'd be happy to be docked all the way back to observer if that's what it takes to stiffen the trust metric to a more reasonable threshold. I'm sure most other participants would also gladly give up some or all of the "status" they've attained. Again, I have few problems with who certs who; the trust metric, however, is I think a tad too generous.

A number of people have commented lately that they don't feel like they deserve their certification. I'm not quite as concerned about this as some have expressed, for these reasons:

  • I think there's room here at Advogato for more than just active contributors to OSS. I say this somewhat selfishly, since I don't participate actively in OSS design, development, or testing. I think, however, that there is scope for open-source "philosophers", into which category I'd place myself -- people able and willing to speak at length on open-source (and contribute to it through their participation in Advogato discussions), but who in general don't participate otherwise.
  • A community is what the community defines itself to be, not what it has been decreed to be by its founder(s). I've been continuing to ponder the notion of online communities and technological controls on the communities. I think what I wanted most to avoid was the degradation of a community into spam, trolling, etc. But what I failed to consider is that communities are vibrant, dynamic entities with a personality of their own that is independent of the personalities participating in it. The more restrictions and conditions that are imposed on a community, the more it will chafe under those restrictions. I think growth and death are key elements of any community. At least, "death" in the sense that it shifts from the founding intent, perhaps to the extent that the founders jump ship. What I'm saying is that if the community decides on a particular attitude towards certification, that is not inherently "wrong". (Note: I would argue that perhaps stronger preconditions should be used to justify the metric's bumping people to a higher level. However, I wouldn't argue with any individual's choice to certify any other individual.)

I would speculate that someday, Advogato will become too big for its britches (some people probably already are starting to feel this way). Yes, there will probably be stop-gap measures, like a diary "favorites" list to only show you the diary entries you want to see (someday the diary list will be completely recycled in a matter of hours, I'd bet). But enough people will become dissatisfied that they set up additional communities elsewhere, and life goes on. I don't think that's bad -- I think it's a good and healthy progression in the life of communities and their participants. It's necessary to keep the flow of new and exciting ideas going.

nymia, keep up the good work. I like reading your diary entries; 'twould be sad to see it move elsewhere or disappear as "private".

I hope to tutor a fellow from church tonight, if our schedules coincide. He's in high-school but is taking classes at NC State. He's got problems with math, which is right up my alley. Finally an opportunity to start giving back in response for all that my mentor gave me! I would probably barely even be using computers today if he hadn't done so much to help and encourage me to where I am. I owe a lot to him. Here's to mentors everywhere, and the idea of mentoring! (clink!)

8 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!