One of our aims is to create a community for developers that is supportive and fun to work in. We provide an infrastructure to support collaborative, agile development of software.

This section covers our community development principles and practices, drawing together material which was previously available in various places and forms.

Our software philosophy borrows heavily from the unix philosophy: small, simple and elegant is beautiful; make each program do one thing well; build a prototype as soon as possible; and choose portability over efficiency. Ideally software projects should be as small as is practical. Small, reliable tools and components can be re-used and built into […]

We aim to make collaborative, open source software development friendly and fun, while encouraging and helping members to follow some simple and effective best practices to ensure that the software is tested and used by as wide an audience as possible. We believe that the best software development practices are underpinned by communication and visibility. […]

Our software maturity model is designed to provide assurances about the quality of software under our stewardship. We’ve aimed to create a model that supports engineers while they’re developing software and users in assessing solutions against defined criteria. The intention is not to rival full-blown methodologies although we’ve taken into account aspects of standards such […]