Open Source Statement of Intent
At Truss, we prefer to open source our code whenever possible; there are a variety of reasons for this:
- Transparency is one of our most important values; by open sourcing our work, we show our clients and potential clients that we are willing to expose our work to scrutiny. This also allows us to get feedback from the larger community around open source, which can make our products better.
- In addition, by open sourcing our projects, we make it easy to share code between clients and with the general public. As we benefit from open source projects for much of our work, contributing back to that pool returns the favor, so to speak. In addition, both we and the clients benefit from us not needing to reinvent the wheel on every project, and also means that clients can rely on maintained code even if we leave the project.
- Not only does it make sharing code between clients and the general public easier, it also eases project onboarding for new Trussels -- the process of getting access to repositories can sometimes take weeks or months, and if the code is open-sourced, a new team member can immediately begin reviewing code and working locally.
- Open sourcing our code is also good for Truss in terms of publicity and recruiting; people who have used our code will be more aware of us and what we do, and have a better idea of the quality of work that we provide. For potential clients, they can see the level of work they will receive, and for potential employees, they can see the type of work they will be doing.
This extends even beyond the code for our software; we make our Engineering Playbook and the Trussels’ Guide public for the same reasons.
Truss prefers to use the Apache License v2.0 for software projects, the GNU Affero GPL for bids or tech challenges (but MUST NOT use this for client work), and the Creative Commons Attribution 4.0 International License for non-software projects. This TDR (Truss internal link) discusses how we came to these conclusions and any exceptions.