Chris DiBona is the Open Source Programs Manager at Google. He discusses Google's extensive use of open source software as infrastructure and for building platforms like Android, Google Web Toolkit, and Google Chrome. DiBona explains that Google contributes to open source to maintain independence, gain flexibility, and appeal to their ethos. Google takes part by releasing over 3 million lines of code, hosting projects on Google Code, patching hundreds of projects, and participating in programs like Summer of Code which funds student open source work.
1 of 21
Download to read offline
More Related Content
2008 11 14 Google Oss Stanford
1. Google and Open Source
Chris DiBona
Friday, November 14, 2008
2. Who am I?
Open Source Programs Manager, Google Inc.
License Compliance
Code Release
The Summer of Code
Protocol and API Licensing
Formerly:
Slashdot
Co-Editor Open Sources & Open Source 2.0
Floss Weekly Podcast
2
4. Why do people release code at all?
A BCG/OSDN Study found that open source developers
are motivated by:
Intellectual Curiosity/Stimulation (44.9%)
Skills Improvement (41.3%)
Work needs (33.8 %)
Open Source Idealism (33.1%)
Non-Work Functionality (29.7%)
Professional Status (17.5%)
Reputation building within Open Source (11%)
Dislike/distrust of proprietary software (11.1%)
4
http://osdn.com/bcg
5. How does Google use Open Source?
As Infrastructure
Linux kernel
Apache Tomcat and many other Apache tools
SSH, and other system management tools
The Languages and compilers that we use.
Engineers and others running Linux (Goobuntu)
As building blocks
Our repositories have hundreds of libraries used in
Google software
5
6. For our Platforms
Google Web Toolkit (Ajax toolkit for Java
developers)
Android (Cell Phone operating system)
Google Gears (offline web)
Google Applications
Chrome
6
7. But Why does Google use Open Source
Control and Ownership
Maintain our independence from external software
companies
Adaptability and Flexibility
We can drill down to repair and enhance our services
If we want to do something out of the ordinary, we can
do so without showing our hand
No one is incentivized to hurt us
Roots
Appeals to the Google ethic
7
9. Googles Open Source Programs
Patching and Code Release
Donations
Internal License Discipline
API/Protocol License Discipline
Industry Trade Group Participation
Open Source Infrastructure & Leadership
Summer of Code
OLPC Engineering
9
10. Code Release
Over 3 million lines of code released to date
Examples:
Airbag Crash Reporting
MySQL Replication Tools
MacFuse (userspace filesystems under OS X)
Google Web Toolkit
Approaching 200 released packages: Search for
label:Google on http://code.google.com/hosting/
Updates for older releases like gflags, sparcehash,
tcmalloc, etc..
10
11. Open Source Infrastructure
Hosting on Google Code which provides:
Reliable, scalable, clean project Hosting
Version Control
Issue/Bug Tracking
Wikis
Over 160k projects online
11
12. Patching
Hundreds of Googlers patching into projects such as
The Linux Kernel ICU
Apache Tomcat and Axis Wine
The Gnu Compiler Collection Derby
Subversion Aspell
Python DSpace
Perl Glib
MySQL Autoconf/automake
SSH/OpenSSL Make
Eclipse Glibc
Emacs Binutils
Vim Java
Gaim Samba
Adium Various Emulators
And Many More
12
13. Open Source Developers
Andrew Morton
2.6 Kernel Maintainer
Guido Van Rossum
Python BDFL
Bram Molenaar
Vim creator and maintainer
Jeremy Allison
Samba Lead Developer
And more.......
13
14. Big Projects
Android
Fully Open Source Cell phone OS.
Now on Shipping Devices, More to Come
Incredibly fast to develop for
Chrome
Webkit + v8 for speed.
Fully Open Source as the Chromium project
14
15. The Summer Of Code, 2008
1130 students
175 Organizations
Over 2000 Mentors
6000+ applications
98 Countries
81% pass rate!
Over 3 million lines of code
15
16. How it Works
1) Student applies to work on a project for, say, the ASF
2) ASF mentors review the application and accept the student
3) Google pays student $500 for being accepted
4) Student works with an ASF mentor to create project
5) Mid-Term, good students are paid $2000 by Google
6) Student continues work with mentor to create project
7) Final: If the student has completed the goals set forth in the
application and student is paid $2000 by Google
8) Successful student gets t-shirt, certificate and valuable
experience along with the money.
16
17. The Applicants
GSoc 2006 Geographic Distribution: Accepted Students (Top 10 Countries
180
160
140
120
# Students
100
80
60
40
20 13
0
United Germany Canada United India Brazil France Poland Spain China
States Kingdom
Students Per Country
Country of Residence Min: 1
Max: 178
Sum: 630
Mean: 10.68
Median: 3
Stdev: 24.26
17
18. Student Educational Distribution
GSoc 2006 Expected Graduation Year GSoc 2006 Student Level Distribution
250 450
225 400
200 350
175
300
# Students
# Students
150
250
125
100 200
75 150
50 100
25 50
0
0
2006 2007 2008 2009 2010 2011 2012 2013
undergrad masters phd
Year
Degree Level
Average graduation year: 2007 Undergraduates most common participants
19. Not Just Computer Scientists
Mechanical Engineering
English Literature
Interior Design
Urban Planning
Astronomy
Cartography
Genetics
Developmental Psychology
20. Why do we do all this funding?
Keep students coding
Flip Bits, not Burgers
Ensure a healthy open source ecosystem
Good for the Internet
Good for Google
A great way to meet students all over the world
A great way for open source organizations to grow and
thrive.
A lot of Googlers come from the Open Source World
Giving Back
20
21. The End
Questions?
cdibona@google.com
http://code.google.com/opensource
21