Open Source Guidelines

Open-sourcing software follows Thinking Machines’ values of being a builder and a team player—only this time, within a larger community. Open-source enables us to participate in the larger practice of peer production, and gives us the opportunity to understand our users and co-developers well. To such, there are two main open-source guidelines that we should follow:

Technical Guidelines

We must strive to maintain a baseline quality on our software projects, this goes even outside our open-source work. A well-maintained project says a lot about the company, so we need to exert rigor in keeping our codebase healthy.

On Documentation

Documentation should be given equal priority to a program's business-logic. Remember that when we write documentation, we write for the person next to us.

On Code

Code is the core of our project and if left unkempt (especially with multiple contributors from multiple backgrounds, coding styles, etc.), might grow into an unmaintainable mess. Open-source software also demands a certain rigor in writing code.

Community Guidelines

Once a project is open-sourced, we should expect that Issues and Pull Requests will come from the community. As representatives of the company, we should act in the most professional way as possible. Below are guidelines that should codify how we would relate to our co-creators.

Some tricks and tips

STORIES

6 Use Cases of Geospatial Analytics That Change Your View of the World

Successful businesses use geospatial analytics wisely and we’ll tell you why you should start using it too.

Can machine learning and satellite imagery help improve humanitarian aid to Venezuelan migrants?

A hard life awaits millions of Venezuelan migrants seeking refuge in neighboring Colombia.

Querying Safely in the (Google) Cloud

Programming in BigQuery may feel very light, but do you have a safety net for when the cloud goes down?