Golang Is Not Truly Opensource

Checkout this video snippet

IMAGE ALT TEXT

For the most of my career I have written softwares using Golang and almost all of my code resides on the world to see.

I have a certain image of an Open Source project in my mind:

  • Code for Everyone to see
  • Lot of people use the software
  • They have a say in what happens to the project
  • The project attempts to explain what the code does
  • The project attempts to be easily accessible and conforms to the community rules

Softwares are complex and big. If I put my code on GitHub for all to see without good documentation, it is just as bad as not putting the code in public. No one will be able to make sense of that. Most companies do this and act as if they care about opensource. Putting your junk software on GitHub is not open source.

If you build something for your specific use case and no one else needs that product, don’t bother showing that source code to people. If Facebook has the code for their site facebook.com for all to see and all of its contributors are employees of facebook, all the people asking for features are employees of facebook and no other organization is building a facebook-competitor using this code, I would not call it open source, because no one else cares for the code except themselves. It might as well be closed source and it won’t make any difference.

Most of the contributors are on either GitHub or GitLab. Using your own git platform is basically like telling that we don’t care if we get contributors or not and we don’t care what other software engineers think.

Almost all of the developers of Golang are Google Employees. It is part of the google and not a neutral foundation. They use their own git platform instead of GitHub or GitLab. They have religiously ignore heavily demanded features from the community. It is being developed more like an iPhone, where you think that users are dumb they don’t know what they want. Golang is a great language, but it sure as heck not open source. Having such a strong user base of Golang, gives them a great power and control over the developers and indirectly the way they develop softwares. This powers can be easily used to do good of Google rather than others.