Extropia.com: A Case Study in Open Source Software
December 28, 1998
In the summer of 1994, the Selena Sol Public Domain Script
Archive went on-line with user documentation and source
code that I wrote for use
at the
Electronic Frontier Foundation
(EFF) website. The Archive was developed
primarily out of a desire to provide documentation of web
technologies and applications that I considered
fundamental to the future web infrastructure.
Initially, the archive was to be a public service for
other web application developers who were facing similar
problems in the early days of the web revolution.
The idea was that no web application developer should
duplicate research or expend energy solving a problem
that had already been solved by someone else. If all
web application developers worked together, I
reasoned, they as a group, could advance with far
greater efficiency and build a web infrastructure of
which they could all be proud.
Furthermore, releasing public domain code ensured that
all developers, regardless of race, gender, nationality,
class, education, or creed, would have access to web
applications and technology.
Joe Web's Fish Store, I believed, should
have as much right to reliable software on the web
as IBM or AT&T.
The Archive Takes Off: Intellectual Property - Just Say No!
Along with the
similarly-oriented site run by Matt Wright, the
Public Domain Script Archive was instantly a success
in the growing web application development community.
The
applications,
which at that time included WebStore,
WebBBS, WebResponder, WebGuestbook and SiteSearch,
began to show up on hundreds of web sites on every
continent. Scores of e-mail letters poured in from
developers who were using the code and who wanted to
report feature improvements, submit bug reports AND
bug fixes, or who just wanted to say
thank you.
By then, I had left the Electronic Frontier
Foundation to work at The
National Center for
Human Genome Research. There I met Gunther
Birznieks, and together we further developed
the initial group of web apps into a suite of
CGI/
Perl
applications based on the initial
code as well as the code, comments, and criticisms
submitted by hundreds of developers in the ether.
The
suite
added a Database Management and Search
Application, Groupware Calendar, Banner Rotator,
Site Administration and Access Control Library,
Animation Examples, a real-time Chat Application,
and several other miscellaneous applications and
development libraries in Perl and, in time,
Java.
By 1996, most of the applications on the Archive had
been revised four or five times each, with every
iteration based upon the feedback received from the
thousands of developers now using, installing, and
customizing them.
These developers sent in a constant stream of feature
wish lists, benchmark and efficiency reports, bug fixes,
and security enhancements, as well as third-party extension
code and supporting tools.
There were also several incredibly active
discussion
forums on which clients could ask each other questions, find
freelance support, or simply talk about common usage issues such as
advertising within a WebStore or better credit card
validation services.
By this time, the popularity of the site was raising
several eyebrows.
The site was awarded dozens of net achievement awards,
was featured in several online and offline magazines,
was mirrored
on five continents, and eventually attracted
the interests of publishers such as WAITE, M&T Press,
and Wiley.
Together, and with several other authors, Gunther
and I went on to write Perl 5: How To,
CGI For Commerce,
Programming with AFC,
CGI: How To,
and the classic
Instant Web Scripts with CGI/Perl
that documented all the web applications in the archive.
All the while, we remained true
to the ideals of information sharing. Even when we
published books and magazine articles, we demanded
contractually that all work would remain in the public
domain. M&T Press even agreed to publish
Instant Web Scripts with CGI/Perl online.
Problems Arise!
By 1997, we felt that the site had
fulfilled its original mission.
However, a serious problem was emerging.
Specifically, both of us were becoming
overwhelmed with e-mails and opportunities generated by
the archive. For example, despite the availability of
complete FAQS
and detailed documentation, I
received over 100 e-mails every day with questions about
web application development from specific customization
questions, to general questions with technologies including
SQL,
HTML,
CGI, and
Java. Also, we
were both inundated with freelance turnkey installation
projects that began to eat away at all their spare time.
Meanwhile, we realized that
the applications in the archive needed to be rewritten
in an object-oriented framework to take advantage of
concurrent technologies being developed in the web
application development community such as
Perl 5,
Active Server Pages, Servelets, Mod Perl, and other
web technologies.
It also was clear that new methodologies were needed
to increase scalability and enhance security. Additionally,
a wizard was needed to make installation and
customization more user-friendly.
To be frank, the original applications had never been
designed to handle World Wide E-Commerce Web 2000.
Unfortunately, we both had full-time
jobs that demanded our full-time attention. Maintaining
the archive became quite frustrating as developers around
the globe continued to clamor for solutions.
Extropia.com: A Case Study in Open Source Software
The Free Software Solution
|