posts brought to you by the category “axkit”
Das eez kaput! Sometime around 2002 I spaced the entire database
table that mapped individual entries to categories. Such is life.
What follows is a random sampling of entries that were associated
with the category. Over time, the entries will be updated and then it
will be even more confusing. Wander around, though, it's still a fun
way to find stuff.
Meanwhile, in the "Whatever you do, play it loud!" department:
It's a good day when
<s0:http://purl.org/dc/elements/1.1/identifier />
Norm Walsh laughs at your "sophisticated" weblogging system.
This morning, I had to learn Evolution's dictionary the word
"weblog".
I went to the Commerce and Design expo on Friday afternoon
Paul Graham : "What else can painting teach us about hacking?"
Michel Dumais : J'organise un NXNE (North by North East) à
Montréal.
www.localharvest.org
Local Harvest maintains a definitive and reliable "living" public
nationwide directory of small farms, farmers markets, and other local
food sources. Our search engine ... helps people find local sources
of sustainably grown food, and encourages them to establish direct
contact with family farms in their local area.
Luke Andrews on the Canadian hinterland and Hogtown
I updated the docs for the 'rels-to-unordered-lists' XSL
stylesheet
Ed is dead!
Subject: Glossaries - XPath, SAX and benchmarks
Date: Sun, 8 Sep 2002 15:35:43 -0400 (EDT)
From: Aaron Straup Cope
To: Karl Dubost
Cc: Steph
Subject: Glossaries: XPath, SAX and benchmarks
So, I sat down and did some tests this morning per
our
conversation
about glossaries and XBEL and XPath.
It's a bit depressing given the nature of the XPath query you need to pull
stuff out of an XBEL document :
"/xbel//bookmark[title=\"$keyword\"]/\@href"
Since the <bookmark> element can be either next to the root
<xbel> element
or contained in an arbitrary number of nested <folder> elements,
there
isn't much too do except sniff around every node until you find what
you're looking for.
Which takes a long time. Longer than you'd normally want anyway...
On the other hand, if you just use a plain old SAX widget to find the
keyword, it takes roughly 1/4 to 1/5 of the time to do a lookup.
Below are benchmarks for 100 iterations of a subroutine that does 5
keyword lookups against an XBEL file.
Note that the XPath query doesn't even instantiate a new object; the same
object is shared across all 500 calls to 'find'. The SAX query on the
other hand, instantiates a new filter and a new parser for each lookup.
Obviously, some clever caching of lookups would speed things up as well.
****
101 ->./debug.xbel
Benchmark: timing 100 iterations of xpathquery...
bquery: 765 wallclock secs (645.73 usr + 13.66 sys = 659.38 CPU) @
0.15/s (n=100)
101 ->./debug.xbel
Benchmark: timing 100 iterations of saxquery_pureperl...
saxquery_pureperl: 171 wallclock secs (148.23 usr + 0.62 sys = 148.86
CPU) @ 0.67/s (n=100)
102 ->./debug.xbel
Benchmark: timing 100 iterations of saxquery_expat...
saxquery_expat: 171 wallclock secs (148.17 usr + 0.20 sys = 148.38 CPU) @
0.67/s (n=100)
****
package Foo;
use base qw (XML::SAX::Base);
sub keyword {
my $self = shift;
$self->{'__keyword'} = $_[0];
}
sub link {
my $self = shift;
return $self->{'__link'};
}
sub start_element {
my $self = shift;
my $data = shift;
return if ($self->{'__match'});
if ((! $self->{'__bookmark'}) && ($data->{Name} eq
"bookmark")) {
$self->{'__bookmark'} = 1;
}
return if (! $self->{'__bookmark'});
if ($data->{Name} eq "bookmark") {
$self->{'__link'} = $data->{Attributes}->{'{}href'}->{Value};
}
$self->{'__title'} = 1 if ($data->{Name} eq "title");
}
sub end_element {
my $self = shift;
my $data = shift;
return if ($self->{'__match'});
if ($data->{Name} eq "title") {
$self->{'__title'} = 0;
}
if ($data->{Name} eq "bookmark") {
$self->{'__bookmark'} = 0;
}
}
sub characters {
my $self = shift;
my $data = shift;
return if ($self->{'__match'});
return if (! $self->{'__bookmark'});
return if (! $self->{'__title'});
if ($data->{Data} eq $self->{'__keyword'}) {
$self->{'__match'} = 1;
}
}
package main;
my $file = "/usr/home/asc/aaronland.net/asc/webdev.xbel";
use XML::SAX::ParserFactory;
$XML::SAX::ParserPackage = "XML::SAX::Expat";
use Benchmark;
my $count = 100;
my @keywords = (
'FilterProxy Home Page',
"REX XML Shallow Parsing with Regular Expressions",
"aaronland",
"Schematron - XML Validation Language",
">RE ActivePerl mod_perl ppd available",
);
timethese($count, {
saxquery_expat => sub {
foreach my $kw (@keywords) {
my $filter = Foo->new();
$filter->keyword($kw);
my $parser =
XML::SAX::ParserFactory->parser(Handler=>$filter);
$parser->parse_uri($file);
}
},
});
****
use XML::XPath;
use Benchmark;
my $file = "/usr/home/asc/aaronland.net/asc/webdev.xbel";
my $count = 100;
my $xbel = XML::XPath->new(filename=>$file);
my @keywords = (
'FilterProxy Home Page',
"REX XML Shallow Parsing with Regular Expressions",
"aaronland",
"Schematron - XML Validation Language",
">RE ActivePerl mod_perl ppd available",
);
timethese($count, {
xpathquery => sub {
foreach my $title (@keywords) {
my $query = "/xbel//bookmark[title=\"$title\"]/\@href";
my $r = $xbel->find($query);
}
},
});
A FreeBSD Operating System Security Checklist
Karl Dubost : Sémantique, liens et CSS : hreflang
Simon Waldman : "One of the prime reasons we embarked on the
competition
was to help start the debate about how a
traditional media owner such as ourselves can engage with a movement that
is in many ways the very antithesis of traditional media."
The dictified dictionary.com word of the day is : concomitant
Concomitant \Con*com"i*tant\, n. One who, or that which,
accompanies, or is collaterally connected with another; a companion; an
associate; an accompaniment. Reproach is a concomitant to greatness.
--Addison. The other concomitant of ingratitude is hardheartedness.
--South.
web1913
concomitant adj : following as a consequence; "an excessive
growth of bureaucracy, with related problems"; "snags incidental to the
changeover in management" [syn: {accompanying}, {attendant},
{incidental}, {incidental to(p)}] n : an event or situation that
happens at the same time as or in connection with another [syn:
{accompaniment}, {co-occurrence}]
wn
Rael Dornfest : Blosxom 0+5i: Categories
" take a gander at the
"[computers/internet/weblogs/blosxom]" bit at the end of this post. And
there's more to it than meets the eye. Think recursion. ;-)"
The dictified dictionary.com word of the day is : gregarious
Gregarious \Gre*ga"ri*ous\, a. [L. gregarius, fr. grex,
gregis, herd; cf. Gr. ? to assemble, Skr. jar to approach. Cf.
{Congregate}, {Egregious}.] Habitually living or moving in flocks or
herds; tending to flock or herd together; not habitually solitary or
living alone. --Burke. No birds of prey are gregarious. --Ray.
web1913
gregarious adj 1: tending to form a group with others of
the same kind; "gregarious bird species"; "man is a gregarious animal"
[ant: {ungregarious}] 2: seeking and enjoying the company of others; "a
gregarious person who avoids solitude"
wn
genehack rightly points out that the perlblog isn't really a
weblog.
Michael S. DeGraw-Bertsch : Configuring a FreeBSD Access Point for
your Wireless Network
The dictified dictionary.com word of the day is : nonagenarian
Nonagenarian \Non`a*ge*na"ri*an\, n. [L. nonagenarius
containing, or consisting of, ninety, fr. nonageni ninety each; akin to
novem nine.] A person ninety years old.
web1913
nonagenarian adj : being from 90 to 99 years old; "the
nonagenarian inhabitants of the nursing home" n : someone whose age is
in the nineties
wn
Karl Dubost : Show me Permalink (id)
"Ceci m'a fait penser à une bookmarket qui serait
très efficace et qui permettrait tous les id d'une page contenu dans des
"p". Voici c'est fait, si vous cliquez sur le lien Show me id. Vous
devriez voir apparaître au dessus du paragraphe concerné le nom du lien à
établir."
The random pseudodictionary.com word of the day is : body nazi
A self-obsessed workout king or queen.
ex. Where's the neck on that body nazi?
Jan Sipke van der Veen : Multiple webservers behind one IP
address
"This article discusses a network setup where
multiple webservers reside behind one IP address. Such a situation may
arise when you need a specific webserver for one task and a different
webserver for another task, running different operating systems or
webserver software. With only one IP address available from the Internet,
you could simply use Network Address Translation (NAT) with port
forwarding. However, this forces you to give each webserver an ugly URL
with a non-standard port number. Luckily, there is a better way. In the
setup described in this article, each webserver can be reached via its
own fully qualified domainname on the standard HTTP port (80)."
Me : SAX - measure twice, cut once
The random pseudodictionary.com word of the day is : saturdish
About Saturday.
ex. I'll be home saturdish.
The dict-ified dictionary.com word of the day is bedizen
| source : web1913 | Bedizen \Be*diz"en\, v. t.
To dress or adorn tawdrily or with false taste. Remnants of tapestried
hangings, . . . and shreds of pictures with which he had bedizened his
tatters. --Sir W. Scott. | source : wn | bedizen v 1: decorate
tastelessly 2: dress up garishly and tastelessly [syn: {dizen}]
No one asked, but since I'm already having a bad day
Randal L. Schwartz : Mac OSX 10.1 - mod_perl build
instructions
"Apparently, mod_perl wants to be built static
into Apache on OSX, and yet wants to use mod_so to load any additional
thingies like Apache::Request or Apache::Template. So after many hours of
trying different combinations of things, I finally yelled out "Yippee
Skippee"..."
The dict-ified dictionary.com word of the day is repine
| source : web1913 | Repine \Re*pine"\ (r?-p?n"),
v. i. [Pref. re- + pine to languish.] 1. To fail; to wane. [Obs.]
``Reppening courage yields no foot to foe.'' --Spenser. 2. To continue
pining; to feel inward discontent which preys on the spirits; to indulge
in envy or complaint; to murmur. But Lachesis thereat gan to repine.
--Spenser. What if the head, the eye, or ear repined To serve mere
engines to the ruling mind? --Pope. | source : web1913 | Repine
\Re*pine"\, n. Vexation; mortification. [Obs.] --Shak. | source : wn |
repine v : express discontent
The dict-ified dictionary.com word of the day is disport
| source : web1913 | Disport \Dis*port"\, n. [OF.
desport, deport. See {Disport}, v. i., and cf. {Sport}.] Play; sport;
pastime; diversion; playfulness. --Milton. | source : web1913 | Disport
\Dis*port"\, v. i. [imp. & p. p. {Disported}; p. pr. & vb. n.
{Disporting}.] [OF. se desporter; pref. des- (L. dis-) + F. porter to
carry; orig. therefore, to carry one's self away from work, to go to
amuse one's self. See {Port} demeanor, and cf. {Sport}.] To play; to
wanton; to move in gayety; to move lightly and without restraint; to
amuse one's self. Where light disports in ever mingling dyes. --Pope.
Childe Harold basked him in the noontide sun, Disporting there like any
other fly. --Byron. | source : web1913 | Disport \Dis*port"\, v. t. [OF.
desporter. See {Disport}, v. i.] 1. To divert or amuse; to make merry.
They could disport themselves. --Buckle. 2. To remove from a port; to
carry away. --Prynne. | source : wn | disport v 1: occupy in an
agreeable, entertaining or pleasant fashion; "The play amused the ladies"
[syn: {amuse}, {divert}] 2: play or romp around; "The children frolicked
in the garden"; "the gamboling lambs in the meadows" [syn: {frolic},
{lark}, {rollick}, {skylark}, {sport}, {cavort}, {gambol}, {frisk},
{romp}, {run around}, {lark about}]
eclectic : Understanding the ID
"I thought it might be useful to post a rolling
summary of the current XML-DEV discussion concerning ID attributes, to
help avoid creating a "cauldron of seething expectations". "
The Rhino Book 4.0, beta chapter
O'Reillynet : An Introduction to XML Digital Signatures
The dict-ified dictionary.com word of the day is cohort
| source : web1913 | Series \Se"ries\, n. 1.
(Bot.) In Engler's system of plant classification, a group of families
showing certain structural or morphological relationships. It corresponds
to the {cohort} of some writers, and to the {order} of many modern
systematists. 2. (Elec.) A mode of arranging the separate parts of a
circuit by connecting them successively end to end to form a single path
for the current; -- opposed to {parallel}. The parts so arranged are said
to be {in series}. 3. (Com.) A parcel of rough diamonds of assorted
qualities. | source : web1913 | Cohort \Co"hort\, n. [L. cohors, prop. an
inclosure: cf. F. cohorte. See {Court}, n.] 1. (Rom. Antiq.) A body of
about five or six hundred soldiers; the tenth part of a legion. 2. Any
band or body of warriors. With him the cohort bright Of watchful
cherubim. --Milton. 3. (Bot.) A natural group of orders of plants, less
comprehensive than a class. | source : wn | cohort n 1: a company of
companions or supporters 2: a band of warriors (originally a unit of a
Roman Legion)
The dict-ified dictionary.com word of the day is eremite
| source : web1913 | Eremite \Er"e*mite\, n. [See
{Hermit}.] A hermit. Thou art my heaven, and I thy eremite. --Keats. |
source : wn | eremite n : a Christian recluse [ant: {cenobite}]
The dict-ified dictionary.com word of the day is ossify
| source : web1913 | Ossify \Os"si*fy\, v. t.
[imp. & p. p. {Ossified}; p. pr. & vb. n. {Ossifying}.] [L. os,
ossis, bone + -fy: cf. F. ossifier. See {Osseous}.] 1. (Physiol.) To form
into bone; to change from a soft animal substance into bone, as by the
deposition of lime salts. 2. Fig.: To harden; as, to ossify the heart.
--Ruskin. | source : web1913 | Ossify \Os"si*fy\, v. i. (Physiol.) To
become bone; to change from a soft tissue to a hard bony tissue. | source
: wn | ossify v : become bony; "The tissue ossified"
The dict-ified dictionary.com word of the day is pulchritude
| source : web1913 | Pulchritude \Pul"chri*tude\,
n. [L. pulchritudo, fr. pulcher beautiful.] 1. That quality of appearance
which pleases the eye; beauty; comeliness; grace; loveliness. Piercing
our heartes with thy pulchritude. --Court of Love. 2. Attractive moral
excellence; moral beauty. By the pulchritude of their souls make up what
is wanting in the beauty of their bodies. --Ray. | source : wn |
pulchritude n : physical beauty (especially of a woman)
The dict-ified dictionary.com word of the day is luminary
| source : web1913 | Luminary \Lu"mi*na*ry\, n.;
pl. {Luminaries}, [F. luminaire, L. luminare a light or lamp, which was
lighted in the churches, a luminary, fr. lumen, luminis, light, fr.
lucere to be light, to shine, lux, lucis, light. See {Light}.] 1. Any
body that gives light, especially one of the heavenly bodies. `` Radiant
luminary.'' --Skelton. Where the great luminary . . . Dispenses light
from far. --Milton. 2. One who illustrates any subject, or enlightens
mankind; as, Newton was a distinguished luminary. | source : wn |
luminary n : a celebrity who is an inspiration to others; "he was host to
a large gathering of luminaries" [syn: {leading light}, {guiding light},
{notable}, {notability}] | source : devils | LUMINARY, n. One who throws
light upon a subject; as an editor by not writing about it.
The dict-ified dictionary.com word of the day is insuperable
| source : web1913 | Insuperable
\In*su"per*a*ble\, a. [L. insuperabilis: cf. OF. insuperable. See {In-}
not, and {Superable}.] Incapable of being passed over or surmounted;
insurmountable; as, insuperable difficulties. And middle natures, how
they long to join, Yet never pass the insuperable line? --Pope. The
difficulty is enhanced, or is . . . insuperable. --I. Taylor. Syn:
Impassable; insurmountable; unconquerable. -- {In*su"per*a*ble*ness}, n.
-- {In*su"per*a*bly}, adv. | source : wn | insuperable adj 1: impossible
to surmount [syn: {insurmountable}] 2: incapable of being surmounted or
excelled; "insuperable odds"; "insuperable heroes" [syn: {unconquerable}]
Jean-Sébastien Marsan : "En somme, bien que les phantasmes
technologiques
des ingénieurs soient sans limites, des
contraintes physiques, économiques et surtout humaines détermineront
l'informatique et les réseaux de demain. «Notre propre temps biologique
demeure relativement constant, même si celui qui nous entoure nous donne
l'impression de s'accélérer sans cesse, relativise M. Poussart. C'est
ainsi que la dimension d'une main demeure encore incontournable dans la
réalisation d'une interface tactile…»."
Ralph Steadman : "What I might have done is picked up on someone
else's vibes.
And all I've done is manifest it, then, in a
drawing, and people go, "I like that, because I think that way." That's
how people look at my work, I bet. But that's only preaching to the
converted, isn't it? People already think like that, so what am I doing?
I'm doing something which is out of date, finished."
MacNN : "Other [ MacOS X ] features highlighted
include a new Aqua Pro Mode option, which changes
all the Aqua elements to Graphite, to help reduce the graphic distraction
that some graphic artists expressed displeasure over in Aqua."
Anne Kingston on the Disney Wedding Pavillion
"There is no room for irony in the Magic Kingdom.
A couple will not hesitate to ask for imagery or music from a doomed love
story such as Titanic (though couples outside of Disney wouldn't either)
or for a glittering Wizard of Oz theme, the bride wearing ruby-red
slippers and unconcerned that Oz is meant to be a facade, a fraudulent
concept."
National Post : "Each article of skim.com clothing displays a
number
that doubles as that person's email address. For
example, someone wearing a skirt with 99876 stenciled in large print
across the back could be reached, or 'skimmed' at 99876@skim.com." Some
days, it's just too much to bear. Must... scream... in... despair... (oh,
the pain.)
A note to industrial designers
and persons thinking about buying a Visor: Why
the f*ck can't I put the protective cover back on my Visor when there is
a module in the fancy magic koolaid module slot we all got excited
about?!?! Either redesign the cover or make modules that take the
dumb-ass finger hook thingy into account. I think I am going to start
marketing myself as a high-tech bullshit detector because companies would
do themselves a favour if they didn't release products with such idiotic
and
brain-dead mistakes
.
Jeff Covey : Negotiating for Nerds
"Here is the number one piece of advice I have
for negotiating: SHUT UP! Sales people do this all the time. Ask a
leading question and then let it hang. Let the other person get nervous
and fill the space with a number or a suggestion. You never know what
you'll get using this technique, but I guarantee you won't get less. Ask
leading questions and then SHUT UP!"
Pew Research Center survey on journalistic self-censorship
"There is general agreement about the extent of
the self-censorship and its principal causes. Market pressures --
manifested when newsworthy stories are avoided because they are too
boring or complicated -- are seen as the most common factor. Majorities
in the print and broadcast media acknowledge that newsworthy stories are
often or sometimes avoided because of their complexity or lack of
audience appeal."
Even if I could blog from the hot-tub
FileMaker XML Central
Better late than never, I guess.
Libération : Sur le Net, chacun cherche sa loi
"Ainsi, pour le patron du Conseil supérieur de
l'audiovisuel (CSA) Hervé Bourges, à l'initiative de la rencontre, «il
apparaît généralement admis qu'une certaine régulation sera nécessaire».
Mais au-delà d'un accord minimum sur le fond, notamment sur la «diversité
culturelle» ou la «protection des mineurs et de la dignité humaine», les
invités d'Hervé Bourges ont peiné à clarifier leurs positions."
Social and Economic Implications of Informfation Technologies
A Bibliographic Database Pilot Project
Groove Collective, live in Hogtown
requires the evil g2 player.
WGBH : George Antheil's Ballet mécanique
"Composed in 1924 while Antheil lived in Paris,
"Ballet mécanique" calls for three xylophones, four bass drums, a tamtam
(gong), two pianos, a siren, three airplane propellers, seven electric
bells, and 16 synchronized player pianos." Live webcast, beginnning 21h15
EST.
O'Reilly : A Dictionary for Strangers in a Strange Land
or The Hitchhiker's Guide to Consumer OSes
JazzerWockies
CBC : Montreal exhibit aims to bring teleconferencing to the
masses
"It's aimed at peoples' lives, changing
something, offering opportunities or trying to understand the kind of
world we're moving into."
Dave Winer
"The message that Microsoft hears: 'We have no
say in what you do, so we thought we'd show you many of us there are.' "
Well...yeah. And if Microsoft would stop dicking around and release the
standards compliant browser they're obviously capable of writing, all
those people would stand up and cheer.
CBC : Hollywood vs. Hollywood North
"Those Canadians don't give a damn about
Westerns!" After beating the global economy drum for a decade, America
suddenly wakes up to the idea that it's just another entree on the buffet
table. real audio (starts 05:50)
Michal J Wallace : The PHP Snurk
The End of the Nation State
Some of it may seem a bit dated, but it offers an
interesting perspective on the frightening games the West and Russia have
been playing with each other these days.
Factoid Paranoia
"However, my worry about the factoid system is
about the "subpeona-bility" of the home database. Would you want a
step-by-step record of where you went and who you saw each day of your
life available to anyone who wants to start a nuisance civil suit against
you?" It's really scary how people seem willing to overlook this kind of
stuff if the "hack-value" is high enough.
wtf?
-
dude, where's my car
This document uses
CSS
kung-fu and a small amount of JavaScript for rendering its
contents. Efforts have been made to separate the form from the
content so if you are viewing this in a text-based browser it
shouldn't be an issue.
On the other hand it may look funny if you are viewing it in a
browser with incomplete
CSS
and/or JavaScript implementations. Internet Explorer 6 comes to
mind.
It's not that I don't love you. However, my time is limited and
I no longer feel very good about spending it working around any one
browser's inconsistencies with little, or no, confidence that they
will ever be fixed or otherwise made more inconsistent at some
later date.
On the other hand, if something is down-right
unreadable
please let me know and I will endeavour to fix it.
-
yes, we have no bananas
This page may not validate. It's not that I don't care, it's
just that I'm not aware of it yet. Part of the reason that I
rewrote the entire back-end for managing this site is that the old
stuff made it too easy for these kinds of mistakes to slip through
the cracks.
See also :
W3C::LogValidator.pm
-
it's the software, stupid
Use the source, Luke.