Matt D. Welsh: Ninja: generic distributed applications

Kragen Sitaker (kragen@pobox.com)
Sat, 25 Sep 1999 01:03:36 -0400 (EDT)


At http://ninja.cs.berkeley.edu/ and
http://ninja.cs.berkeley.edu/overview.html:
The Ninja project aims to develop a software infrastructure to support
the next generation of Internet-based applications. Central to the
Ninja approach is the concept of a service, an Internet-accessible
application (or set of applications) which is scalable (able to
support many thousands of concurrent users), fault-tolerant (able to
mask faults in the underlying server hardware), and highly-available
(resilient to network and hardware outages). Examples of current and
future Ninja services include an Internet stock-trading system; a
``universal inbox'' used to access e-mail, voice mail, pages, and
other personal correspondence; and the Ninja Jukebox, which provides
real-time streaming audio data served from a collection of music CDs
scattered about the network.

Sounds interesting.

Matt Welsh was one of the folks who worked on U-Net, which has grown
into VIA, which are the only current methods for providing
gigabit-speed network access to multiple processes. I believe he's
also been instrumental in the Linux Documentation Project. If Ninja
follows in the footsteps of these previous projects of his, it will be
so much better than anything else available that it will become the
gold standard in its field, and everybody will be using it.

He has, of course, also worked on other projects that are not quite so
widespread: http://www.cs.berkeley.edu/~mdw/research.html mentions
Siva, Split-C, data-acquisition board drivers for Linux, video model
motion tracking systems, a web proxy that makes animated gifs stop
animating, etc.