Pentaho employs a great variety of technologies. Each technology comes with it's own set of development standards, guidelines and best practices. This guide is an attempt to collect these in a central location. What follows ranges from code styling, to license headers, to preferred design-patterns and how our software is built and architected.
In practice, Pentaho's software is a collection of projects developed for many years with different styles, architectures and standards. There is a lot of code that is not in agreement with this document. Adherence is a work in progress. For all future development however, the "Pentaho Standards" will be enforced. Development Guidelines and Best Practices while not as strongly enforced, are strongly encouraged.