Developer Relations

How Does Google Do Open Source?

2018-10-03
Developer Relations
en

Google is one of the leading contributors to open source, but the search giant doesn’t like all open source licenses.

Reporting from Toronto: Marc Merlin has been an engineer at Google since 2002 and has done a lot of open source and Linux-related work. At the LinuxCon North America summit this week, Merlin gave a presentation revealing how Google uses open source and contributes to it.

“Google wouldn’t exist today without open source software,” Merlin said.

Merlin noted that Google’s early resources for giving back to the open source community were limited. Google’s first-generation software was all written for internal use and wasn’t originally designed for open source. He added that, in fact, open source isn’t a simple matter. That is, Google’s early software wasn’t originally intended to be open sourced, but Google published technical papers describing the methods and code used so others could implement the same principles.

Marc Merlin at LinuxCon North America

In various open source technology areas, Google’s early contributions were mainly bug fixes.

“We were usually the first to discover and fix bugs that only appeared at our scale,” Merlin said.

To date, Merlin said Google has contributed over 5,000 patches to the Linux kernel, covering everything from small fixes to complete drivers and subsystems like containers.

With Google’s efforts in open source, it has now published over 3,000 open source projects on GitHub. To manage the entire process from a legal perspective, Merlin said Google has six people dedicated to compliance management for using and releasing open source software internally.

To ensure legal consistency, Google stores all external open source code in a third-party system. Merlin added that Google only allows open source software with licenses that Google can follow. One license that’s not acceptable is AGPL (Affero General Public License), which is a reciprocal license that requires providing a link to the source code when using that code.

“The cost of ensuring we don’t use AGPL code in any external products is too high; it’s better to find a less restrictive alternative or write one ourselves,” Merlin said.

For code contributed to Google projects, Google requires developers to accept a Contributor License AgreementContributor License Agreement (CLA), which mainly allows Google to re-license the contributed code and provides Google with patent licensing for the code.

“You still own your code; you’re just granting Google a license,” Merlin said.

Compiled from: http://www.datamation.com/open-source/how-google-does-open-source.html Author: Sean Michael Kerner Original: LCTT https://linux.cn/article-7735-1.html Translator: Xingyu.Wang

Reprinted with permission: Developer Relations »


Similar Posts

Content icon
Content