Jul 19, 2019

Open source maintainers and developer community square off, but Golang developers ultimately quash proposed ‘try’ function

In early June, the team behind Go proposed adding a built-in error check function ‘try’ into the next version of the Go language. The new error handler was intended to minimize boilerplate code by reducing the number of if statements needed when calling functions that may return errors. The simple proposal, however, sparked intense debate within the Go community. Members of the community felt that the changes would likely not reduce boilerplate code and would demote robust error handling to an easily-ignored afterthought. Moreover, many developers feared that Google would try to force the proposed changes into the language, despite uproar from the community.

As of last week, however, the Go team announced that the proposal had been declined and would not be included in future versions of Go. In a GitHub comment, the Go team noted: "we have heard clearly the many people who argued that this proposal was not targeting a worthwhile problem."

Many admired the outspokenness of the Go community and praised the Go team for declining the proposal, while others feared that Go’s progress as a language would suffer from a now overly-democratic decision-making process. Google, as the creator of Go, awkwardly straddles both sides of the table, hoping to grow Go's loyal developer community but seeking new ways to expand Go into an even more robust and innovative language. Many open source projects, including Go, are not immune from pressure from the tech giants that created and released them. For now, the Go community has prevailed, but the divisive story offers a cautionary tale for the future.

For contrast, a recent debate about whether or not the Google logo should be featured on the footers of each page of the Golang website showed that Google is willing to flex its strength in other ways. Despite complaints that the logo made Go seem like a Google commercial product, the changes were approved without much community discussion. While open source technology has increased developer access to powerful technologies, it also opens up the ecosystem to thorny issues when big tech gets involved. As open source software proliferates, power will continue to seesaw between its maintainers and the developers that use it.

Want to get more of these in your inbox?

Subscribe for weekly updates from the Software team.