There are a set of patterns that successful open source software projects follow. These activities can be organized as software construction, community development, and IP management activities. This talk explores their connections to build on ramps for community success . Video: https://www.youtube.com/watch?v=iPjvLnJSn7U
3. ROTOR
500K
LoC
500K
Lines-‐of-‐Test
Harness
Ran
on
Windows,
Mac
OS
X,
FreeBSD
One
script
to
set
environment
One
command
to
build
everything
One
command
to
test
it
all
Minimal
documenta7on
24
hours
later
…
24
hours
later
again
…
9. How
do
you
increase
your
user
base?
(How
do
you
make
it
easy
to
install/configure/use
the
soZware?)
How
do
you
encourage
developers?
(How
do
you
make
it
easy
to
build/test/experiment?)
How
do
you
make
it
easy
to
contribute?
(What
do
you
communicate
to
your
community)
10. How
do
you
increase
your
user
base?
(How
do
you
make
it
easy
to
install/configure/use
the
soZware?)
11. How
do
you
increase
your
user
base?
(How
do
you
make
it
easy
to
install/configure/use
the
soZware?)
Project
Exes
published
Project
Install
Automated
SoZware
Construc7on
Ac7vi7es
Project
BugTracking
12. How
do
you
increase
your
user
base?
(How
do
you
make
it
easy
to
install/configure/use
the
soZware?)
Project
Exes
published
Project
Install
Automated
SoZware
Construc7on
Ac7vi7es
Project
License
FAQs,
Howto
Community
Development
Ac7vi7es
Project
BugTracking
Forums,
Email
13. How
do
you
encourage
developers?
(How
do
you
make
it
easy
to
build/test/experiment?)
14. How
do
you
encourage
developers?
(How
do
you
make
it
easy
to
build/test/experiment?)
Project
Build
Automated
I
Complete
Src
published
Project
Test
Automated
I
SoZware
Construc7on
Ac7vi7es
15. How
do
you
encourage
developers?
(How
do
you
make
it
easy
to
build/test/experiment?)
Project
Build
Automated
I
Complete
Src
published
Project
Test
Automated
I
SoZware
Construc7on
Ac7vi7es
Mission
Statement
Comms
Plaborm
Contributoion
Guidelines
Community
Development
Ac7vi7es
Code
of
Conduct
16. How
do
you
make
it
easy
to
contribute?
(What
do
you
communicate
to
your
community)
17. How
do
you
make
it
easy
to
contribute?
(What
do
you
communicate
to
your
community)
Project
Build
Automated
II
Project
Test
Automated
II
Basic
Arch
Descrip7on
SoZware
Construc7on
Ac7vi7es
18. How
do
you
make
it
easy
to
contribute?
(What
do
you
communicate
to
your
community)
Project
Build
Automated
II
Project
Test
Automated
II
Basic
Arch
Descrip7on
SoZware
Construc7on
Ac7vi7es
Governance
Events
Community
Development
Ac7vi7es
19. How
do
you
make
it
easy
to
contribute?
(What
do
you
communicate
to
your
COMMERCIAL
community)
Project
License
Provenance
Tracking
Repositories
Protected
Dependencies
Documented
Contribu7ons
AudiQed
Provenance
Management
CommiQers
Indemnified
CommiQer
Governance
Trademark
Management
IP
Management
Ac7vi7es
20.
Open
Source
Community
Pa#erns
Project
Exes
published
Project
Build
Automated
I
Project
Install
Automated
Complete
Src
published
Project
BugTracking
Project
Build
Automated
II
Project
Test
Automated
I
Project
Test
Automated
II
Basic
Arch
Descrip7on
Project
License
Project
License
Mission
Statement
Code
of
Conduct
Forums,
Email
Comms
Plaborm
FAQs,
Howto
Governance
Contributoion
Guidelines
Events
Provenance
Tracking
Repositories
Protected
Dependencies
Documented
Contribu7ons
AudiQed
Provenance
Management
CommiQers
Indemnified
CommiQer
Governance
Trademark
Management
IP
Management
Ac7vi7es
Community
Development
SoZware
Construc7on
Maturity
22. Developers
Users
CommiQers
+
Code
Books
Contractors
Products
Distribu2ons
Consul2ng
Training
Support
Building
the
Ecosystem
23. Plan
Forward
• This
is
a
Work-‐in-‐Progress
• Github
• Atlas
(asciiDoc
and
Markdown)
• Run
as
an
open
source
project
• Crea7ve
Commons
Licensed
• Designed/developed
to
be
as
inclusive
as
possible