It is GitLab’s mission to make it so that everyone can contribute.
There are three ways you can contribute:
- Everyone can contribute with GitLab
- Everyone can contribute to GitLab, the application
- Everyone can contribute to GitLab, the company
Everyone can contribute with GitLab
To ensure that everyone can contribute with GitLab we allow anyone to create a proposal, at any time, without setup, and with confidence. Let’s analyze that sentence a bit.
- Anyone: Every person in the world should be able to afford great DevSecOps software. GitLab.com has free private repos and CI runners and GitLab CE is free as in speech and as in beer. But open source is more than a license, that is why we are a good steward of GitLab CE and keep both GitLab CE and EE open to inspection, modifications, enhancements, and suggestions.
- Create: It is a single application based on convention over configuration.
- Proposal: With Git, if you can read it, you can fork it to create a proposal.
- At any time: You can work concurrently with other people, without having to wait for permission or approval from others.
- Without setup: You can make something without installing or configuring for hours with our web IDE and Auto DevSecOps.
- With confidence: Reduce the risk of a flawed proposal with review apps, CI/CD, code quality, security scans, performance testing, and monitoring.
Everyone can contribute to GitLab, the application
We actively welcome contributors to ensure that everyone can contribute to GitLab, the application. When everyone can contribute, users become contributors and we greatly increase the rate of innovation. We think that it is logical that our collaboration tools are a collaborative work themselves. More than 3,000 people from the wider community have contributed to GitLab to make that a reality.
We do this by having quality code, tests, documentation, popular frameworks, and offering a comprehensive GitLab Development Kit and a dedicated GitLab Design System. We use GitLab at GitLab Inc., we dogfood it and make it a tool we continue to love. We celebrate contributions by recognizing a Most Valuable Person (MVP) every month. We allow everyone to anticipate, propose, discuss, and contribute features by having everything on a public issue tracker. We ship a new version every month so contributions and feedback are visible fast. To contribute to open source software, people must be empowered to learn programming. That is why we sponsor initiatives such as Rails Girls. There are a few significant, but often overlooked, nuances of the everyone can contribute to GitLab, the application mantra:
- While collaboration is a core value of GitLab, over collaborating tends to involve team members unnecessarily, leading to consensus-based decision making, and ultimately slowing the pace of improvement in the GitLab application. Consider doing it yourself, creating a merge request, and facilitating a discussion on the solution.
- For valuable features in line with our product philosophy, that do not yet exist within the application, don’t worry about UX having a world class design before shipping. While we must be good stewards of maintaining a quality product, we also believe in rapid iteration to add polish and depth after an MVC is created.
- Prefer creating merge requests ahead of issues in order to suggest a tangible change to facilitate collaboration, driving conversation to the recommended implementation.
- Contributors should feel free to create what they need in GitLab. If quality engineering requires charting features, for example, which would normally be implemented out of another team, they should feel empowered to prioritize their own time to focus on this aspect of the application.
- GitLab maintainers, developers, and Product Managers should be viewed as coaches for contributions, independent of source. While there are contributions that may not get merged as-is (such as copy/paste of EE code into the CE code base or features that aren’t aligned with product philosophy), the goal is to coach contributors to contribute in ways that are cohesive to the rest of the application.
A group discussion reiterating the importance of everyone being able to contribute:
Everyone can contribute to GitLab, the company
To ensure that everyone can contribute to GitLab, the company we have open business processes. This allows all team members to suggest improvements to our handbook. We hire remotely so everyone with an internet connection can come work for us and be judged on results, not presence in an office. We offer equal opportunity for every nationality. We are agnostic to location and create more equality of opportunity in the world. We engage on Hacker News, Twitter, and our blog post comments. And we strive to take decisions guided by our values.
Everyone can contribute to about.gitlab.com
We welcome all contributors in the www-gitlab-com project so that everyone can contribute to about.gitlab.com. GitLab uses about.gitlab.com to share our expertise with the world and believe we can build even greater levels of trust with contributions from our team and community. We strive to provide a great experience for our existing and new community members by reviewing changes and integrating the contributions into our regularly planned updates.
Cadence and Alignment
Our Mission is on a 30 year cadence.
Our purpose is to help people increase their lifetime earnings through training, access to opportunities, and the DevSecOps platform.
Our mission is the way we realize our purpose. By making it so everyone can contribute, we increase access for people to be creators. With more contributors and more creators, we increase both the volume and velocity of innovation. More innovation drives economic progress that benefits consumers, businesses, and the economy as a whole. As a result, innovation both directly and indirectly increases the total volume of available opportunities and average value of each individual opportunity.
Access to a broader set of more valuable opportunities ultimately increases people’s lifetime earnings.
Our purpose is on the same 30 year cadence as our mission. Our purpose informs our mission, which directly or indirectly informs the rest of the items in our cadence. As a result, progress for the items on our cadence page like Yearlies creates progress for both our mission and our purpose.
Our mission is the inspiration for our vision. Our vision is on a 10 year cadence.
Our mission guides our path, and our values are the principles we live along this path.
We firmly adhere to laws including trade compliance laws – see the GitLab Code of Business Conduct and Ethics, in countries where we do business, and welcome everyone abiding by those legal restrictions to be customers of GitLab. In some circumstances, we may opt to not work with particular organizations, on a case-by-case basis. Some reasons we may choose not to work with certain entities include, but are not limited to:
- Engaging in illegal, unlawful behavior.
- Making derogatory statements or threats toward anyone in our community.
- Encouraging violence or discrimination against legally protected groups.
This policy is in alignment with our mission, contributor and employee code-of-conduct and company values. Here are some links that may give you some background at how we arrived at this customer acceptance policy:
- Our mission is “everyone can contribute.” This mission is in alignment with our open source roots and the MIT license our open source software is subject to. The MIT License is a free software license that allows users the freedom to run the program as they wish, for any purpose.
- GitLab has a contributor code of conduct for how to contribute to GitLab, but there are no restrictions on who can contribute to GitLab. We desire that everyone can contribute, as long as they abide by the code of conduct.
- GitLab has a set of values for how GitLab team members strive to conduct themselves. We don’t expect all companies to value collaboration, results, efficiency, diversity, inclusion and transparency in the same way we do. As an open company, “everyone can contribute” is our default and transparency is our check and balance. Transparency means our handbook, issues, merge requests and product roadmap are online for everyone to see and contribute to.
- Related topic: At GitLab, we want to avoid an environment where people feel alienated for their religious or political opinions. Therefore, we encourage GitLab team members to refrain from taking positions on specific religious or political issues in public company forums (such as on the GitLab Contribute stage or Slack channels) because it is easy to alienate people that may have a minority opinion. It is acceptable to bring up these topics in social contexts such as coffee chats and real-life meetups with other coworkers, but always be aware of cultural sensitivities, exercise your best judgement, and make sure you stay within the boundaries of our Code of Business Conduct & Ethics. We always encourage discussion and iteration on any company policy, including this one.
We acknowledge the concerns to achieving our goals. We document them in our Mitigating Concerns page.