posts brought to you by the category “sax”
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.
"L'été c'est le temps de la crème glacée!"
Slate coins the word "bloghdad"...
The bloodrage will do that to you, I hear.
The Connection talks to Paul Krugman
Washington Post : Google Introduces Human-Less News
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);
}
},
});
The random pseudodictionary.com word of the day is : id (ten) t
error
Most common computer error.
ex. Oh, you have a "ID10T" error. (IDIOT)
The random pseudodictionary.com word of the day is : acronyze
(verb) The process of shortening phrases, via an acronym,
for the purpose of simplifing statements. Typically used in technical
data reporting or inter-office e-mails. (IE "FUBAR" or
"KISS")
ex. I didn't realize that phrase had been
acronyzed.
The dictified dictionary.com word of the day is : lissom
Lissom \Lis"som\, Lissome \Lis"some\ (l[i^]s"s[u^]m), a.
[For lithesome.] 1. Limber; supple; flexible; lithe; lithesome.
Straight, but as lissome as a hazel wand. --Tennyson. 2. Light; nimble;
active. --Halliwell. -- {Lis"some*ness}, n.
web1913
lissom adj : gracefully slender; moving and bending with
ease [syn: {lissome}, {lithe}, {lithesome}, {slender}, {supple},
{svelte}, {sylphlike}]
wn
The dictified dictionary.com word of the day is : polyglot
Polyglot \Pol"y*glot\, n. 1. One who speaks several
languages. [R.] ``A polyglot, or good linguist.'' --Howell. 2. A book
containing several versions of the same text, or containing the same
subject matter in several languages; esp., the Scriptures in several
languages. Enriched by the publication of polyglots. --Abp. Newcome.
web1913
polyglot adj : having a command of or composed in many
languages; "a polyglot traveler"; "a polyglot Bible contains versions
in different languages" n : a person who speaks more than one language
[syn: {linguist}]
wn
The dictified dictionary.com word of the day is : quotidian
Quotidian \Quo*tid"i*an\, a. [OE. cotidian, L. quotidianus,
fr. quotidie daily; quotus how many + dies day: cf. OF. cotidien, F.
quotidien. See {Quota}, {Deity}.] Occurring or returning daily; as, a
quotidian fever.
web1913
quotidian adj : found in the ordinary course of events; "a
placid everyday scene"; "it was a routine day"; "there's nothing quite
like a real...train conductor to add color to a quotidian commute"-
Anita Diamant [syn: {everyday}, {mundane}, {routine}, {unremarkable},
{workaday}]
wn
The random pseudodictionary.com word of the day is :
firkytoodle
(n) Foreplay. Not my original word, but a wonderful word
to say. Try it. Firkytoodle. Probably got it from Mrs. Byrne's
Dictionary.
ex. As in a song lyric: Momma don't 'low no firkytoodlin'
'round here.
The random pseudodictionary.com word of the day is : retes
Slang Doritos. Sounds like "pete's."
ex. Pass my the retes.
Big props to Dave for giving me the push
Dick Snyder : "Years ago I had brunch with a fabulous, very stylin'
woman.
Afterward, my suggestion was that we go check out
a few design-y stores and art galleries. Maybe she just didn't like me,
but her preference was to go jogging. I mean, this woman had a jogging
date set up after brunch. . My feeling was that pretty much sums a person
up. On a Sunday afternoon, you can go shopping with a guy as cool as me,
or you can go jogging."
The dict-ified dictionary.com word of the day is renege
| source : web1913 | Renege \Re*nege"\ (r?-n?j"
or r?-n?g"), v. t. [LL. renegare. See {Renegade}.] To deny; to disown.
[Obs.] --Shak. All Europe high (all sorts of rights reneged) Against the
truth and thee unholy leagued. --Sylvester. | source : web1913 | Renege
\Re*nege"\, v. i. 1. To deny. [Obs.] --Shak. 2. (Card Playing) To revoke.
[R.] | source : wn | renege n : the mistake of not following suit when
able to do so [syn: {revoke}] v : fail to fulfill a promise or
obligation; "She backed out of her promise" [syn: {renege on}, {renegue
on}, {go back on}]
The dict-ified dictionary.com word of the day is turbid
| source : web1913 | Turbid \Tur"bid\, a. [L.
turbidus, from turba tumult, disturbance, akin to turbare to disturb. See
{Trouble}, and cf. {Disturb}, {Perturb}.] 1. Having the lees or sediment
disturbed; roiled; muddy; thick; not clear; -- used of liquids of any
kind; as, turbid water; turbid wine. On that strong, turbid water, a
small boat, Guided by one weak hand, was seen to float. --Whittier. 2.
Disturbed; confused; disordered. `` Such turbid intervals that use to
attend close prisoners.'' --Howell. | source : wn | turbid adj : (of
especially liquids) clouded as with sediment; "a cloudy liquid"; "muddy
coffee"; "murky waters" [syn: {cloudy}, {muddy}, {mirky}, {murky}]
Simson Garfinkel : Spamthing
"maintains a list of people who are allowed to
send you mail. This list is called a whitelist. When somebody who is not
on your whitelist sends you an email message, they get a very simple
message in response ... When the sender gets this email message, all they
have to do is click reply and then click send. Spamthing scans all of
your incoming email for a message from the particular sender that has the
words SPAMTHING #119285431 in the Subject: line. When it finds this
message, it automatically adds the sender to your whitelist and sends
them [a] polite message in response."
Movable Thoughts #13
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
Paul Millar : abi[word]2html.xsl
Paul Johnson : Shell::Source.pm
"allows arbitrary shell scripts, or other
programs for that matter, to be run and their environment to be inherited
into a Perl program."
The dict-ified dictionary.com word of the day is arbiter
| source : web1913 | Arbiter \Ar"bi*ter\, v. t.
To act as arbiter between. [Obs.] | source : web1913 | Arbiter
\Ar"bi*ter\, n. [L. arbiter; ar- (for ad) + the root of betere to go;
hence properly, one who comes up to look on.] 1. A person appointed, or
chosen, by parties to determine a controversy between them. Note: In
modern usage, arbitrator is the technical word. 2. Any person who has the
power of judging and determining, or ordaining, without control; one
whose power of deciding and governing is not limited. For Jove is arbiter
of both to man. --Cowper. Syn: Arbitrator; umpire; director; referee;
controller; ruler; governor. | source : wn | arbiter n 1: someone with
the power to settle matters at will; "she was the final arbiter on all
matters of fashion" [syn: {supreme authority}] 2: someone chosen to judge
and decide a disputed issue [syn: {arbitrator}]
Doug Tidwell : Extending XSLT to Encrypt XML on the Fly
The dict-ified dictionary.com word of the day is presentiment
| source : web1913 | Presentiment
\Pre*sen"ti*ment\, n. [Pref. pre- + sentiment: cf. F. pressentiment. See
{Presentient}.] Previous sentiment, conception, or opinion; previous
apprehension; especially, an antecedent impression or conviction of
something unpleasant, distressing, or calamitous, about to happen;
anticipation of evil; foreboding. | source : wn | presentiment n : a
feeling of evil to come: "a steadily escalating sense of foreboding";
"the lawyer had a presentiment that the judge would dismiss the case"
[syn: {foreboding}, {premonition}, {boding}]
The dict-ified dictionary.com word of the day is efficacious
| source : web1913 | Efficacious
\Ef`fi*ca"cious\, a. [L. eficax, -acis, fr. efficere. See {Effect}, n.]
Possessing the quality of being effective; productive of, or powerful to
produce, the effect intended; as, an efficacious law. Syn: See
{Effectual}. -- {Ef`fi*ca"cious*ly}, adv. -- {Ef`fi*ca"cious*ness}, n. |
source : wn | efficacious adj 1: marked by qualities giving the power to
produce an intended effect; "written propaganda is less efficacious than
the habits and prejudices...of the readers"-Aldous Huxley; "the medicine
is efficacious in stopping a cough" [ant: {inefficacious}] 2: producing
or capable of producing an intended result or having a striking effect;
"an air-cooled motor was more effective than a witch's broomstick for
rapid long-distance transportation"-LewisMumford; "effective teaching
methods"; "effective steps toward peace"; "made an effective entrance";
"his complaint proved to be effectual in bringing action"; "an
efficacious law" [syn: {effective}, {effectual}] [ant: {ineffective}]
Dan Connolly : Palmagent
"is (intended to be) a Semantic Web Service,
providing paper-trail style synchronization."
Dennis McCarthy : Introduction to VoiceXML
The FreeBSD Corporate Networker's Guide : Printserving
Amy Benfer : "Talking to Jaime and Gilbert Hernandez about their
work
is like asking them to describe the women they
love most. The brothers grew up in Oxnard, Calif., with their mother, a
rabid comic book collector who suffered so greatly when her own mother
threw out her comic books that she vowed that her children would have all
the comic books they desired. She even let them read comics at the dinner
table (though she stopped reading "Love and Rockets," says Jaime,
"because it got a little too racy for her.")"
There is still a god.
Jay Barwell and Derek Rogusky : Social conservatives come out of
the closet
"This social conservative belief in, and
preference for, the democratic political process stands in contrast to
the practice of many left-wing organizations that prefer to use the legal
system to force their agenda on Canadians. These organizations don't
trust Canadians to vote properly so they turn to the courts in pursuit of
their agenda and rely on judicial activism to impose their values and
beliefs on society." What kind of nonsense is that? If you scratch the
surface on this one it reads : who needs a legal system when the tyranny
of the majority will do the job for you? see also :
Warren Kinsella : Ten reasons why Day won't be PM
"At the launch of his leadership campaign in March, Mr. Day stated that
he planned to invoke the non abstante section -- the constitutional
override -- whenever a court decision 'conflicts with the intent [sic] of
government.'"
Noah Richler bemoans the loss of innocence
"So even in our imaginations, we are no longer
cutting Savard-like loops behind the blue lines of our ids, or rushing
like Paul Coffey or Larry Robinson, the end to end of our egos. The
inveterate emblems of Canadian hockey -- the Prairie defenceman as tough
as oak, the French-Canadian speeding down the wing -- have given way to
boring and unremarkable, all-purpose American athlete types. Impeccably
attired, these media-savvy millionaires (hockey, basketball, baseball --
can you tell the difference?) have even fashionable haircuts." Speaking
of which,
where do you go to watch hockey in Rome?
Naomi Klein : How to radicalize a generation
"Is Chief Fantino inadvertently running a
recruitment drive for the young anarchists of Toronto? Maybe. After all,
the reason Reclaim the Streets hasn't taken off in Canada like it has in
Britain is that Canada's youth didn't wake up one morning to learn they
had been reclassified as dangerous criminals. Until now, that is."
On est au Québéc, mon hostie,
not in France. I'm sorry if you don't like it,
but you might as well have quoted Lord Durham while you were at it. see
also
Le Glossaire
Québécois
Wired asks 'What is your price for being ad-jacked?'
Despite the fact that "ad-jacking" is an
especially clever play on words, the time has come to make
The Magic
Christian
mandatory reading in high school. "Some friends, when I pulled up, they
were like, 'What the hell is that on your car? Did you start working for
an insurance company?' I'm like 'No, I'm getting paid to have
advertisements on my truck.' And they're like, 'Oh, are you gonna sell
your soul next?' I said I already sold it. It already belongs to
someone." see also :
RTMark's The Magic
Christian Fund
.
I just pulled the foil off
a new bottle of wine only to discover a URL
printed on the top of the cork. This upsets me.
C'est La Vie talks to Daniel Pinard
I had a lovely time at the 5 a 7
last night with with
Mikel
,
Ed
,
Heather
and
David
. I made a conscious effort not to bring a digital camera but I admit
that things seemed a little strange until others broke out theirs. Truth
be told, I thought it would be more fun to sketch the affair but decided
that, since I'd never met any of them before, it might weird people out.
So, if we do it again, you've been warned :-)
Post-meta
Well, the new code is up and I will spend the
next day(s) watching the error logs. Courtesy the More-Art-Less-Words
Department, you can now display listings by
individual entry
, by
day
, by
category
as well as several in
popular European translations
. I am also thinking that I would like to create a
Gutenbook
version but that may just be a reaction to all the blather about the
popularity of The Scary One's recent ebook. Like you, I asked myself --
at three o'clock in the morning -- what the hell the point of all this
goofy stuff is ( I added hooks for a spell-checker, no less ) and the
best answer I came up with was
hack value
. Then I started thinking you could do an interesting sociology /
anthropology class on the subject of hack value but I finally went to
bed. Anyway, as I write this I've already found a bug with the display
mechanism for older entries. I expect the week will be a bit bumpy, but
please let me know
if and when stuff breaks. Thanks. Note : the various XML syndication
files should be ready in a day or two and it will surely take longer to
populate all the many
category entries
.
Finally
If you already think webcams are weird
William Safire : Bagels vs. Doughnuts
"In the bagel's adaptive triumph lies the
poppyseed of its self-destruction. For the bagel has moved toward the
center, and that center has no distinctive hole; its crust has lost its
hard-boiled nature." Finally, someone else who thinks blueberry bagels
are the work of dark dark forces!
Has Ron Harris got a deal for you
"This is Darwin's natural selection at its very
best. The highest bidder gets youth and beauty. ... It is not my
intention to suggest we make a super society of only beautiful people.
This site simply mirrors our current society, in that beauty always goes
to the highest bidder."
Canadian Medical Association Journal
Madeleine Bunting : They're just cannon fodder
"There is no time to query why life has to be
such an exhausting and demanding obstacle race, no time to wonder if
there might be another way, which didn't leave quite so many casualties
along the route."
Sakiko Fukuda-Parr
"Je ne crois pas que notre idée puisse être
comparée à la taxe Tobin. Cette proposition visait à stabiliser les
mouvements de capitaux pour éviter la spéculation. Pour nous, une taxe
sur les mails n'a pas pour objectif de stabiliser l'expansion de
l'Internet, ce qui serait néfaste. Au contraire, nous disons qu'on peut
profiter de cette explosion pour en faire bénéficier le plus grand nombre
et réduire ainsi les écarts entre les branchés et les autres." I think
it's a wothwhile idea but I also think the
backend
will kill it (if it ever gets off the ground).
Try This Non-Wash, No-Iron Cyberfuture For Size
I'm not sure what I find more interesting: the
article, or the fact that it was written by someone whose title is
"European Consumer Goods Correspondent".
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.