Here are links to selected articles and presentations by
In print and on web.
"How To Index Anything", Linux Journal, July
Read the article
"You might want to build custom indices of documents for many
reasons. A widely cited one is to supply search functionality to
a web site, but you also may want to index your e-mail or technical
documents. Anyone who has looked into implementing such a functionality
has probably found it's not as easy as it might seem. Various factors
conspire to make searching difficult."
Presentation and publication:
Thursday, July 1st, 2004
"Indexing Arbitrary Data with SWISH-E"
Read the paper (pdf)
Presented and published at the 2004
USENIX Annual Technical Conference.
This paper and talk will be similar to the one presented the
preceding week at YAPC, but for a more UNIX- and system administrator-oriented
audience. At the USENIX Annual Technical Conference, June
27-July 2nd, 2004 in Boston Massachussetts; presentation was on
Thursday, July 1st 2004.
Wednesday, June 9 2004
New York City
"Perl 6 and Parrot" Read
the Slides (pdf)_
Perl 6 is more than an incremental upgrade to Perl 5. It's "the
community's rewrite of perl", and will add deep features
and language changes while retaining backward compatibility with
the huge code base of current perl software. While Perl 6 as a
language is still in the design phase, many decisions are being
made, and development is underway on Parrot, an underlying virtual
machine intended as a platform for Perl 6, as well versions of
Scheme, BASIC, Befunge, and other languages. In this talk Josh
will cover why the world needs Perl 6, the over-arching Perl 6
design philosophies, some Perl 6 language features that are in
discussion and how they differ from Perl 5, and new features that
have no Perl 5 analog. Josh will also discuss Parrot's design,
which is driven by three principles: speed, abstraction, and stability,
and provide an overview of the current status of Perl 6 and Parrot.
Talk was at Sun Microsystems, 101 Park Avenue, New York, NY ,
June 9th 2004.
Friday, June 18th, 2004
Buffalo, New York
"Indexing and Retrieving Data with Perl and SWISH-E"
SWISH-E is a powerful, fast, and flexible system for building
and querying indices. Perl's text handling prowess coupled with
SWISH-E's special features and perl API provide a substantial
and robust system upon which to build searching systems.
In this talk we'll cover SWISH-E core concepts; Current challenges
when using SWISH-E with human languages and perl and future plans
for SWISH-E development.
We'll also discuss non-trivial real world examples including
Sman, a real-world open
source project that uses SWISH-E and perl to provide an enhanced
version of 'man -k' and 'apropos' , and 'swished',
a mod_perl-based concurrent and persistent swish-e server written
by Josh and available at joshr.com/src/SWISHED (see also the matching
client library, SWISH::API::Remote).
Such a server has long been on the SWISH-E "to do" list.
Presented at YAPC::NA 2004. in Buffalo, New York, on Friday, June