2020 ACM Software System Award goes to Margo Seltzer
The Association for Computing Machinery (ACM) awarded UBC computer scientist Dr. Margo Seltzer, Mike Olson, formerly of Cloudera; and Keith Bostic, MongoDB, the 2020 ACM Software System Award for Berkeley DB.
It was an early exemplar of the NoSQL movement and pioneered the “dual-license” approach to software licensing.
Since 1991, Berkeley DB has been a pervasive force underlying the modern internet: It is a part of nearly every POSIX or POSIX-like system, as well as the GNU standard C library (glibc) and many higher-level scripting languages. Berkeley DB was the transactional key/value store for a range of first- and second-generation internet services, including account management, mail and identity servers, online trading platforms and many other software-as-a-service platforms.
As an open source package, Berkeley DB is an invaluable teaching tool, allowing students to see under the hood of a tool that they have grown familiar with by use. The code is clean, well structured, and well documented, as it was designed to be consumed and used by countless software developers.
As originally created by Dr. Seltzer, Olson and Bostic, Berkeley DB was distributed as part of the University of California’s Fourth Berkeley Software Distribution. Seltzer and Bostic subsequently founded Sleepycat Software in 1996 to continue development of Berkeley DB and provide commercial support. Olson joined in 1997, and for 10 years, Berkeley DB was the de facto data store for major web infrastructure.
"We used to joke that having an embedded database product meant that Berkeley DB was the industry’s best kept secret," Seltzer said.
As the first production quality, commercial key/value store, it helped launched the NoSQL movement; as the engine behind Amazon’s Dynamo and the University of Michigan’s SLAPD server, Berkeley DB helped move non-relational databases into the public eye.
Sleepycat Software pioneered the “dual-license” model of software licensing: use and redistribution in Open Source applications was always free, and companies could choose a commercial license for support or to distribute Berkeley DB as part of proprietary packages. This model pointed the way for a number of other open source companies, and this innovation has been widely adopted in open source communities. The open source Berkeley DB release includes all the features of the complete commercial version, and developers building prototypes with open source releases suffer no delay when transitioning to a proprietary product that embeds Berkeley DB.
Berkeley DB has been one of the most useful, powerful, reliable, and long-lived software packages. The longevity of Berkeley DB’s contribution is particularly impressive in an industry with frequent software system turnover.
"We were doing our job best when no one knew we existed," said Seltzer. "It’s incredibly exciting to see all that hard work acknowledged all these years later. While Keith, Mike, and I are the formal recipients of this award, Berkeley DB would not have been as influential without the full Sleepycat Software team, our worldwide network of customers, and my colleagues in academia who continue to view Berkeley DB as a worthy benchmark against which to compare modern systems. We accept the award on behalf of all of them."
The ACM Software System Award is presented to an institution or individual(s) recognized for developing a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both. The Software System Award carries a prize of $35,000. Financial support for the Software System Award is provided by IBM.
ACM, the Association for Computing Machinery, is the world’s largest educational and scientific computing society, uniting computing educators, researchers and professionals to inspire dialogue, share resources and address the field’s challenges.