Open Source is more than just a license - join us at FOSS4G to dig into the “best practices” that can help your project succeed with open source. This talk builds on the lessons learned by the Open Source Geospatial Foundation in thirteen years helping project teams and building the foss4g community.
This presentations looks at the core values that OSGeo as an organization ask projects to adopt. We will discuss why we consider these factors critical to success, and practical ways they can be applied to your project.
To introduce OSGeo principles we will look at what is required to list an open source project on our website.
Our community program is used to explore how these principles are applied in practice.
Unpack how each principles is realized in the OSGeo incubation program, using examples of “OSGeo Projects” to explore different ways of achieving success.
We invite project teams interested in succeeding with open source to attend this talk (and list your project on the OSGeo project directory after the presentation).
If you are new to open source, or cautious, consider this talk an introduction to some of the risk factors associated with open source and community work - and mitigation steps to consider.
2. Welcome
Jody Garnett
Technical Director, GeoCat BV
jody.garnett@geocat.net
@jodygarnett
Open Source Projects
• GeoServer, GeoTools, JTS, uDig
Open Source Geospatial Foundation
• Board Member, Incubation Chair
• GeoTools Project Officer
• Marketing Committee
Eclipse Foundation
• Technology Project Chair
30 August 2019 Open Source Geospatial Foundation 2
3. Empower everyone with open source geospatial
• OSGeo is a not-for-profit software foundation
• Provides projects financial, organizational and legal support
• Outreach and advocacy
• Promoting global adoption of open source geospatial technology
• Partnerships on open approach to standards, data and
education.
• OSGeo is a volunteer driven
• Passionate membership of individuals from around the world.
30 August 2019 Open Source Geospatial Foundation 3
4. Open Geospatial
• Working with our partners:
• Open Source: a collaborative approach to software development.
• Open Data: freely available information to use as you wish
• Open Standards: avoid lock-in with interoperable software
• Open Education: Removing the barriers to learning and teaching
30 August 2019 Open Source Geospatial Foundation 4
6. Software Foundation
• We are responsible for
• Supporting our great
collection of projects
• Fostering new talent and
innovation.
• OSGeo supports projects
• Technically with community
of their peers
• Socially with community
building and outreach
• Professionally ensuring
each project is governed in
a fair and sustainable
manner
30 August 2019 Open Source Geospatial Foundation 6
7. Add to Website
Level 1 - Promotion
30 August 2019 Open Source Geospatial Foundation 7
8. Website for Outreach and advocacy
• Marketing Committee
• Communication
• Handouts
• Branding
• Local chapters
• Regional promotion
• one-on-one advocacy
• GeoForAll
• Research and Academic
• Incubation Committee
• Projects List
• Choose-a-project
30 August 2019 Open Source Geospatial Foundation 8
9. Project List
• Directory of open source goodness!
• Keep in mind
• Foundation wants to promote
open source geospatial!
• Not only OSGeo projects
30 August 2019 Open Source Geospatial Foundation 9
10. Choose-a-project
Don’t know where to start?
Guided “wizard”:
• Enthusiast
• Mapping
• Processing
• GIS Professional
• Cartography
• Analysis
• IT Professionals
• Development
30 August 2019 Open Source Geospatial Foundation 10
11. Add to Website
Are you Geospatial?
• Mapping or Location
Technology
• Examples
• Mapping and Cartography
• Location based
• Drones
• Indoor mapping
• Counter example
• Community mapping website
We ask projects to:
• Geospatial
30 August 2019 Open Source Geospatial Foundation 11
12. Add to Website
Are you Open Source?
Use an open source initiative
approved license!
• Examples
• BSD, GPL, Apache License
• Counter examples
• End-user License Agreement
• Education and Research
License
We ask projects to:
• Geospatial
• Open Source
Reference:
• https://opensource.org
30 August 2019 Open Source Geospatial Foundation 12
13. Add to Website
Can you play nice with
others?
• Examples
• Pull-requests
• Issue tracker
• Counter examples
• Must work for the company
• Pay to review pull-request
We ask projects to:
• Geospatial
• Open Source
• Participatory
30 August 2019 Open Source Geospatial Foundation 13
14. Add to Website
We ask projects to:
• Geospatial
• Open Source
• Participatory
30 August 2019 Open Source Geospatial Foundation 14
15. Add to Website
What we check
We ask projects to:
• Geospatial
• README
• Open Source
• LICENSE
• Participatory
• CONTRIBUTING
30 August 2019 Open Source Geospatial Foundation 15
16. Project
Name
We show what is important
• Project Identity
Outreach
• Brand awareness
30 August 2019 Open Source Geospatial Foundation 16
17. Project
Team
We show what is important
• Open source is about community
• Show the team!
• Important to project sustainability
• Recognize the people!
Outreach
• “Open source is full of people”
30 August 2019 Open Source Geospatial Foundation 17
18. Project
Technology
We show what is important
• Assist evaluating technology
• screen-shot!
• core features
• standards
Outreach:
• focus on public, what we provided
• we believe in open standards
30 August 2019 Open Source Geospatial Foundation 18
19. Empower
Choice
We show what is important
• Open source alternatives
• Migrate to open source
Outreach
• Open-source gives you choice!
30 August 2019 Open Source Geospatial Foundation 19
ArcGIS Online® is a trademarks of Esri in the United States, the
European Community, or certain other jurisdictions. Other
companies and products mentioned may be trademarks of their
respective owners.
20. Project
Communication
We show what is important
• Website
• Demo
• Download
Outreach:
• Help public make contact
• Transparent communication
30 August 2019 Open Source Geospatial Foundation 20
21. Project
Participation
We show what is important
• Issue trackers
• Source code
• License
Outreach:
• Enable open source re-mix culutre
30 August 2019 Open Source Geospatial Foundation 21
22. Commercial
Support
We show what is important
• Service providers
(employ community members)
Outreach
• “Open source is supported”
• Link to service providers
• Promote sustainability
• Show core-contributors
(that take part in our community)
30 August 2019 Open Source Geospatial Foundation 22
23. How to: Add to Website
Please ask!
1. Email to incubation list
• Introductions, discussion
2. Review
• GeoSpatial
• LICENSE.md
• CONTRIBUTING.md
3. Done
And then make a project page
1. Create an OSGeo UserID
• osgeo.org/osgeo_userid
• Sign into website
• Ask Vicky or Jody
for “project author” role
2. Create a project page
• Remember outreach focus!
3. Email incubation list
• Review and publish!
30 August 2019 Open Source Geospatial Foundation 23
25. OSGeo Community
• Support geospatial open
source project
• Marketing and outreach
• Community and Events
• Code sprints
• Infrastructure
• Budget via OSGeo board
• Support innovation in our
geospatial community
• Collaborate on ideas and
opportunities
30 August 2019 Open Source Geospatial Foundation 25
26. OSGeo Community
Are you Geospatial?
• Mapping or Location
Technology
• Take it up a level
• User documentation?
• Website?
• gis-stack exchange?
• IRC, gitter, slack?
We ask that community projects be:
• Geospatial
• Open Source
• Participatory
30 August 2019 Open Source Geospatial Foundation 26
27. OSGeo Community
Are you Open Source?
• OSI Approved License
• Take it up a level
• Check file headers
We ask that community projects be:
• Geospatial
• Open Source
• Participatory
30 August 2019 Open Source Geospatial Foundation 27
28. OSGeo Community
Are you Open Source?
• Open to contributors
• Take it up a level:
• Show collaboration!
• Pull requests, patches?
• Issue tracker?
• OSGeo Live?
We ask that community projects be:
• Geospatial
• Open Source
• Participatory
30 August 2019 Open Source Geospatial Foundation 28
29. OSGeo Community
We ask that community projects be:
• Geospatial
• Open Source
• Participatory
Recognized as part of OSGeo
• Public recognition with use of
“OSGeo Community” logo
• Access to OSGeo infrastructure
and marketing committee
• Take part of OSGeo annual budget
(making request via board)
30 August 2019 Open Source Geospatial Foundation 29
30. OSGeo Community
What we check
We ask projects to:
• Geospatial
• README
• User documentation
• Open Source
• LICENSE
• Headers
• Participatory
• CONTRIBUTING
• pull requests, patches
30 August 2019 30
31. OSGeo Community
What we check
We ask projects to:
• Geospatial
• README
• User documentation
• Open Source
• LICENSE
• Headers
• Participatory
• CONTRIBUTING
• pull requests, patches
30 August 2019 31
32. OSGeo Community
What we check
We ask projects to:
• Geospatial
• README
• User documentation
• Open Source
• LICENSE
• Headers
• Participatory
• CONTRIBUTING
• pull requests, patches
30 August 2019 32
33. OSGeo Community
What we check
We ask projects to:
• Geospatial
• README
• User documentation
• Open Source
• LICENSE
• Headers
• Participatory
• CONTRIBUTING
• pull requests, patches
30 August 2019 33
34. How to: Community Project
Community Project
1. Email to incubation list
• Introductions, discussion
2. Review
• GeoSpatial
• LICENSE.md
• CONTRIBUTING.md
3. Done
• cross link websites
OSGeo Project
1. Incubation application
• create a ticket
2. Find a mentor
• Start with incubation list
3. “Incubation Process”
• mentor to answer questions
• can be quick, often slow
4. Complete Checklist
5. Graduation
• incubation à osgeo board
30 August 2019 Open Source Geospatial Foundation 34
35. OSGeo Project
Level 3 – Foundation
30 August 2019 Open Source Geospatial Foundation 35
36. OSGeo Project
• A full OSGeo committee
• Project “officer” for the team!
• Start initiatives, coordinate
fundraising
• Set OSGeo Annual Budget
• Help set the annual budget
• Budget provides gives team
independence to operating
• Responsible for
• Report to OSGeo Board
• Annual General Meeting
Report
30 August 2019 Open Source Geospatial Foundation 36
37. OSGeo Projects
• Is your project open?
• Open source license
• Open communication channels
• Open decision making
• Examples:
• OSI Approved License
• Email, stack exchange, IRC, Gitter
• Project steering committee
• Why?
• Open source enables shared
development
• Empower feeling of being
included and ownership
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 37
38. OSGeo Projects
• Active / healthy community?
• community of developers and
users
• actively collaborate and support
each other
• In a healthy way
• Examples:
• Collaboration on issue tracker and
testing
• User participation in testing
release candidates
• Why? “Social contract”
• shares maintenance risk
• devs release early release often
• users responsible for “testing”
making software more stable and
cheaper to developer
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 38
39. OSGeo Projects
• Long term viability?
• Examples:
• Multiple developers
• Multiple organizations
(different sources of funding)
• Why?
• open source procurement
• Low “bus factor” metric
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 39
40. OSGeo Projects
• Can you publish as open
source?
• Code is open source license
• Did everyone actually agree?
• Really did you check?
• Examples:
• Code Providence Review
• List of all contributors w/
Agreement
• Why
• This is what it takes for
responsible open source
• “herd immunity”
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 40
41. OSGeo Projects
• Can you publish as open
source?
• Documentation uses an
open document license
• Examples:
• Creative Commons
• Why
• “Citation is not open”
• Grant writers the same re-mix
freedoms we enjoy in open
source
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 41
42. OSGeo Projects
• Development process
• code under source control
• Issue tracker
• Examples
• git, svn
• trac, github, jira
• Why
• Good software development
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 42
43. OSGeo Projects
• Fair development process
• “open governance”
• public decision making
• Examples
• Developers Guide or Wiki
• “Request for Proposal” (RFC)
• Why
• Welcome new developers
• Invite others to take part in a
fair manner!
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 43
44. OSGeo Projects
• User documentation
• Sufficient detail to perform
core functionality of app
• Examples
• Quickstart
• User guide
• Why
• Friendly to new users
• Avoid open source,
closed training
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 44
45. OSGeo Projects
• Developer documentation
• Checkout and build
• API Documentation
• Examples
• Javadocs for Java
• Sphinx for Python
• Why
• Friendly to new developers
• Enough detail for experienced
developer to contribute fix
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 45
46. OSGeo Projects
• Release guide
• Defined release procedure
• Documented testing process
• Examples
• Test before stable release
• Automated / Manual testing
• Test coverage goals
• Why
• Release early release often
• Enough detail to support new
developers taking part
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 46
47. OSGeo Projects
OSGeo projects demonstrate:
• Technical improvements, user
documentation, documenting
their release process.
• Social growth showing
collaboration with users, an open
community with clear transparent
communication
• Fair governance clearly
documenting how contributors
can take part with leadership
drawn from a number of
organizations for sustainability
30 August 2019 Open Source Geospatial Foundation 47
48. Graduation Checklist
• What OSGeo is looking for
• You can probably check off
most of this already!
• Be careful
• Teams get “inspired”
(and do too much!)
• Be creative
• It says “user list” but if you
use stack exchange it meets
the same goal!
30 August 2019 Open Source Geospatial Foundation 48
49. Providence Review
• Beyond checking headers
• License compatibility
• Check history
30 August 2019 Open Source Geospatial Foundation 49
50. How to: OSGeo Project
Application for Incubation
1. Add to website
2. Community Project
3. Incubation application
• create a ticket
• email incubation list
4. Find a mentor
• Start with incubation list
• This can take time (sigh)
Incubation with Mentor
1. Go over checklist
• Clarifications with mentor
2. Work on needed items
• Example providence review
• Mentor provided for
private/sensitive/security
discussions with team
3. Graduation
• Mentor makes motion
• Incubation committee review
• Committee voting
• Chair recommends to board
30 August 2019 Open Source Geospatial Foundation 50
51. May the Source
Be with you
From your friends at
Open Source Geospatial Foundation
PhotoWikiMedia