1. Google Summer of Code, Open Source, and Education
Carol Smith, Open Source Programs Manager
2. ● Me
● Why do people participate in open
source software development?
● University Education Now
● Google Summer of Code
● What you can do to help
Agenda
10. Open Source Software Development
Journalist Daniel Pink,"Drive: The
Surprising Truth About What Motivates
Us" discusses the science behind this. [1]
11. Open Source Software Development
Pink has analyzed research on different
regions of the world and on different
kinds of work people can do.
12. Open Source Software Development
What motivations will produce the best
results for different types of work?
13. Open Source Software Development
Offer a tiered payment structure for
different kinds of work to MIT students
and examine the results.
14. Open Source Software Development
Spatial puzzles, throwing a ball through
a hoop, memorizing strings of digits,
solving word puzzles, etc.
15. Open Source Software Development
Those who do the best at the task get a
large cash prize, those who do ok get a
medium reward, and those who do
poorly only get a small monetary
reward.
16. Open Source Software Development
For tasks that are manual or
algorithmic, this incentive structure
works fine.
18. Open Source Software Development
For tasks that are complicated (when it
requires conceptual thinking) the
motivator of "do better at something to
get more money" doesn't work.
19. Open Source Software Development
Conceptual thinking...doesn't that
sound a lot like coding?
20. Open Source Software Development
So what is it that motivates people to
produce better results for conceptual,
complicated work?
24. Open Source Software Development
Purpose is a sense of making a
contribution to a cause.
25. Open Source Software Development
If you pay people enough that they're
not worried about paying their bills and
feeding themselves, they work to do
the things that enrich them and they
enjoy.
26. Open Source Software Development
Open source software development
lines up really well with these
motivations.
27. Open Source Software Development
Open source software lets people work
independently.
28. Open Source Software Development
Open source software gives people the
ability to get better at coding.
29. Open Source Software Development
Open source software gives people a
sense of place and purpose.
52. Google Summer of Code is an online,
international program designed to
encourage university student
participation in open source software
development.
Enter Google Summer of Code...
53. Open Source Software Development
Roughly half of the students who
participated in Google Summer of Code
this year (2012) listed something other
than "computer science" as their major.
54. Open Source Software Development
Roughly a third of the students who
participated in Google Summer of Code
this year (2012) were pursuing either a
masters or PhD degree.
56. What are the goals of the program?
Inspire students to begin participating
in open source development.
57. What are the goals of the program?
Provide students the opportunity to do
work related to their academic pursuits
during the summer.
58. What are the goals of the program?
Give students more exposure to real-
world software development scenarios
(e.g. distributed development,
software licensing questions, revision
control, mailing list etiquette, etc.)
59. What are the goals of the program?
Get more open source code created
and released for the benefit of all.
60. What are the goals of the program?
Help open source projects identify and
bring in new developers and
committers.
62. How is the program structured?
Free and open source software projects
apply to participate as mentoring
organizations.
63. How is the program structured?
Accepted mentoring organizations
publish an "ideas page" of projects
they'd like to have student developers
work on.
64. How is the program structured?
Students submit proposals to the
mentoring organizations for those
projects they'd like to work on.
65. How is the program structured?
Mentoring organizations choose which
students they'd like to accept.
66. How is the program structured?
Accepted students spend the program
term being mentored by their
organizations, working with the
community, and coding on their
project.
67. How is the program structured?
The students are given two evaluations
during the term and paid a stipend for
passing each evaluation.
68. How is the program structured?
Students submit their completed code
publicly at the end of the program for
the use and benefit of all.
70. A proposal
Start a Summer of Code-like of your
own in your university or organization!
71. A proposal
Encourage your university to teach
open source as part of the computer
science curriculum if it's not already.
72. A proposal
Encourage your university to get all of
its students involved in open source
software development even if they are
not in the computer science
department.
73. A proposal
Talk to other universities or
organizations about doing the same.
84. References
[4]Using Open Source Software in Computer
Science Courses", 2006, Rajendra K. Raj and
Fereydoun Kazemian, Frontiers in Education
Conference, 36th Annual