The Jikes Research Virtual Machine project: Building an open-source research community

B. Alpern, S. Augart, S. M. Blackburn, M. Butrico, A. Cocchi, P. Cheng, J. Dolby, S. Fink, D. Grove, M. Hind, K. S. McKinley, M. Mergen (+4 others)
2005 IBM Systems Journal  
This paper describes the evolution of the Jikese Research Virtual Machine project from an IBM internal research project, called Jalapeñ o, into an open-source project. After summarizing the original goals of the project, we discuss the motivation for releasing it as an open-source project and the activities performed to ensure the success of the project. Throughout, we highlight the unique challenges of developing and maintaining an open-source project designed specifically to support a
more » ... community. On October 15, 2001, IBM Research launched the Jikes* RVM (Research Virtual Machine) open-source project. Jikes RVM provides a novel virtual-machine software infrastructure, suitable for research on modern programming language design and implementation techniques. Over the past three years, the project has grown and made a significant impact on the programming-language research community. This paper describes the evolution of Jikes RVM from an IBM internal research project, called Jalapeñ o, into a full-fledged open-source project. The story provides an instructive case study on how a small systems research project can grow into a shared project used by hundreds of researchers. The paper discusses a variety of challenges that arose in this process, including the technical enhancements and software-engineering practices needed to ensure the project's success; dealing with intellectual property, corporate process, and licensing issues; promoting the system in the research community; and developing a community to maintain and enhance the system in the future. The primary focus of the Jikes RVM project was the development of a software platform designed to be a research testbed for the prototyping of new technologies. In contrast, most open-source projects develop software products for use by the general public. We focus on the implications of this distinction throughout the paper. The remainder of this paper is as follows. The next section begins with a general discussion of issues Ó
doi:10.1147/sj.442.0399 fatcat:5tvfp3lzljgdvozblbcqfpzzvy