SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
Destroy Your
Community
     in


    5
Easy Steps
               Josh Berkus
               Community Hit Man
               SCALE 2010
Community Size
                 Community Growth




                      Project Year
Carbon Concentration
                       Global CO2 Concentration




                                  Year
Community Size
                 Cut Off That Ugly Growth!




                          Project Year
1. We Don't Need No Stinkin' Docs!
NEVER DOCUMENT
 … the code
 … the build methods
 … the patch submission process
 … the release process
 … how to install it
 … how to use it
1. We Don't Need No Stinkin' Docs!
NEVER DOCUMENT
 … the code
 … the build methods
 … the patch submission process
 … the release process
 … how to install it
 … how to use it
                           If it was hard to write,
                it should be hard to understand!
For Advanced Players


  Proprietary
   Licensed
 Documentation
2.
Feed
 The
Trolls
Nurture Your Trolls!


1.   Argue with them at length
2.   Denounce them venemously
3.   Ban them
4.   Argue with them in other projects
Nurture Your Trolls!


1.   Argue with them at length
2.   Denounce them venemously
3.   Ban them
4.   Argue with them in other projects
5.   Allow them back into your project
6.   GOTO 1
3. Non-Standard Licenses
         Bob's License
  Preamble: This license is
  just like the GPL, except
that I changed a few clauses
since it's only fair that if
   you make money with this
software I should be able to
        make money too.
Add some exceptions ...
 1. This FLOSS Exception applies
  to all Programs that contain a
    this notice saying that the
Program may be distributed under
      the terms of this FLOSS
             Exception.
2. If you prefer you can use the
Zope Database Adapter ZPsycopgDA
   (i.e., every file inside the
  ZPsycopgDA directory) user the
            ZPL license.
and change licenses frequently!


   This work and all of its
   derivative works may be
relicensed by the Bob project
at any time simply by posting
     a new license on this
           web page.
4. Lock it up!
●   Your version control system allows you to
    restrict permissions … use it!
    ●   Only grant commit rights on specific directories
    ●   Only grant commit rights on specific branches
    ●   Lock everyone out when you're “working”
    ●   Create files that only you are allowed to modify
    ●   Suspend people's commit rights whenever they
        break one of your “rules”
4. Lock it down!
●   Only you should have admin on the web
    server
●   Only you should have control of the DNS
●   Only you should touch the mail server
●   Only you should administrate the CMS
4. Lock it down!
●   Only you should have admin on the web
    server
●   Only you should have control of the DNS
●   Only you should touch the mail server
●   Only you should administrate the CMS

    … then vanish off the internet
    for weeks at a time!
Just Be Yourself




… a self-righteous jerk
Wrong
Dear submitter,
Thanks for your patch!
You might need to check out this
discussion <link> about some of the
side effects of what you propose, and
let us know if you have ideas on how
to get around them. Also, please do
look at the developer FAQ <link>;
there are a few code formatting
issues, particularly use of tabs.
Let us know if you have questions!
Right
Hey newbie,
Jesus, another threading patch?
Didn't you search the archives, or at
least pay attention for a week?
And boy, can I tell you're fresh out
of school, you have tabs all over the
place.
Come back when you've learned how to
code.
The 5 Steps
1.No docs
2.Feed the trolls
3.Non-standard licensing
4.Lock it up, lock it down
5.Be a jerk

 Now you have your project to yourself again …
 and the world is safe!

       This presentation copyright 2009 Josh Berkus, licensed for distribution under the
        Creative Commons Attribution License, except for photos, most of which were
        stolen from other people's websites via images.google.com. Thanks, Google!

Contenu connexe

Similaire à 5 (more) Ways To Destroy Your Community

Scottish Ruby Conference 2014
Scottish Ruby Conference  2014Scottish Ruby Conference  2014
Scottish Ruby Conference 2014
michaelag1971
 
IzPack - fOSSa 2009
IzPack - fOSSa 2009IzPack - fOSSa 2009
IzPack - fOSSa 2009
julien.ponge
 
YOOX Launch & Learn - Javascript as a programming language
 YOOX Launch & Learn - Javascript as a programming language YOOX Launch & Learn - Javascript as a programming language
YOOX Launch & Learn - Javascript as a programming language
Marco Cedaro
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTE
fidibiko
 

Similaire à 5 (more) Ways To Destroy Your Community (20)

BathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneBathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - Plone
 
12 tricks to avoid hackers breaks your CI / CD
12 tricks to avoid hackers breaks your  CI / CD12 tricks to avoid hackers breaks your  CI / CD
12 tricks to avoid hackers breaks your CI / CD
 
Scottish Ruby Conference 2014
Scottish Ruby Conference  2014Scottish Ruby Conference  2014
Scottish Ruby Conference 2014
 
Design and Evolution of cyber-dojo
Design and Evolution of cyber-dojoDesign and Evolution of cyber-dojo
Design and Evolution of cyber-dojo
 
Sonatype DevSecOps Leadership forum 2020
Sonatype DevSecOps Leadership forum 2020Sonatype DevSecOps Leadership forum 2020
Sonatype DevSecOps Leadership forum 2020
 
Development tools
Development toolsDevelopment tools
Development tools
 
Get your FLOSS problems solved
Get your FLOSS problems solvedGet your FLOSS problems solved
Get your FLOSS problems solved
 
IzPack - fOSSa 2009
IzPack - fOSSa 2009IzPack - fOSSa 2009
IzPack - fOSSa 2009
 
jsDay - Javascript as a programming language
jsDay - Javascript as a programming languagejsDay - Javascript as a programming language
jsDay - Javascript as a programming language
 
Resources For Floss Projects
Resources For Floss ProjectsResources For Floss Projects
Resources For Floss Projects
 
Doonish
DoonishDoonish
Doonish
 
Doonish
DoonishDoonish
Doonish
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
 
OSCON: Incremental Revolution - What Docker learned from the open-source fire...
OSCON: Incremental Revolution - What Docker learned from the open-source fire...OSCON: Incremental Revolution - What Docker learned from the open-source fire...
OSCON: Incremental Revolution - What Docker learned from the open-source fire...
 
Olivier Cleynen: Overtaking Proprietary Software Without Writing Code [24c3]
Olivier Cleynen: Overtaking Proprietary Software Without Writing Code [24c3]Olivier Cleynen: Overtaking Proprietary Software Without Writing Code [24c3]
Olivier Cleynen: Overtaking Proprietary Software Without Writing Code [24c3]
 
Linux Users are People, Too!
Linux Users are People, Too!Linux Users are People, Too!
Linux Users are People, Too!
 
YOOX Launch & Learn - Javascript as a programming language
 YOOX Launch & Learn - Javascript as a programming language YOOX Launch & Learn - Javascript as a programming language
YOOX Launch & Learn - Javascript as a programming language
 
Kernel Development: Drawing Lessons from "Mistakes" (Japan Linux Symposium 2009)
Kernel Development: Drawing Lessons from "Mistakes" (Japan Linux Symposium 2009)Kernel Development: Drawing Lessons from "Mistakes" (Japan Linux Symposium 2009)
Kernel Development: Drawing Lessons from "Mistakes" (Japan Linux Symposium 2009)
 
Responsive Design - ISCTE
Responsive Design - ISCTEResponsive Design - ISCTE
Responsive Design - ISCTE
 
BrazilJS MDN
BrazilJS MDNBrazilJS MDN
BrazilJS MDN
 

Plus de PostgreSQL Experts, Inc.

Elephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and VariantsElephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and Variants
PostgreSQL Experts, Inc.
 

Plus de PostgreSQL Experts, Inc. (20)

Fail over fail_back
Fail over fail_backFail over fail_back
Fail over fail_back
 
PostgreSQL Replication in 10 Minutes - SCALE
PostgreSQL Replication in 10  Minutes - SCALEPostgreSQL Replication in 10  Minutes - SCALE
PostgreSQL Replication in 10 Minutes - SCALE
 
HowTo DR
HowTo DRHowTo DR
HowTo DR
 
Give A Great Tech Talk 2013
Give A Great Tech Talk 2013Give A Great Tech Talk 2013
Give A Great Tech Talk 2013
 
Pg py-and-squid-pypgday
Pg py-and-squid-pypgdayPg py-and-squid-pypgday
Pg py-and-squid-pypgday
 
92 grand prix_2013
92 grand prix_201392 grand prix_2013
92 grand prix_2013
 
7 Ways To Crash Postgres
7 Ways To Crash Postgres7 Ways To Crash Postgres
7 Ways To Crash Postgres
 
PWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with PerlPWNage: Producing a newsletter with Perl
PWNage: Producing a newsletter with Perl
 
Open Source Press Relations
Open Source Press RelationsOpen Source Press Relations
Open Source Press Relations
 
50 Ways To Love Your Project
50 Ways To Love Your Project50 Ways To Love Your Project
50 Ways To Love Your Project
 
8.4 Upcoming Features
8.4 Upcoming Features 8.4 Upcoming Features
8.4 Upcoming Features
 
Elephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and VariantsElephant Roads: PostgreSQL Patches and Variants
Elephant Roads: PostgreSQL Patches and Variants
 
Writeable CTEs: The Next Big Thing
Writeable CTEs: The Next Big ThingWriteable CTEs: The Next Big Thing
Writeable CTEs: The Next Big Thing
 
PostgreSQL Development Today: 9.0
PostgreSQL Development Today: 9.0PostgreSQL Development Today: 9.0
PostgreSQL Development Today: 9.0
 
9.1 Mystery Tour
9.1 Mystery Tour9.1 Mystery Tour
9.1 Mystery Tour
 
Postgres Open Keynote: The Next 25 Years
Postgres Open Keynote: The Next 25 YearsPostgres Open Keynote: The Next 25 Years
Postgres Open Keynote: The Next 25 Years
 
9.1 Grand Tour
9.1 Grand Tour9.1 Grand Tour
9.1 Grand Tour
 
Keyvil Lightning Talk
Keyvil Lightning TalkKeyvil Lightning Talk
Keyvil Lightning Talk
 
Safe Data is Happy Data
Safe Data is Happy DataSafe Data is Happy Data
Safe Data is Happy Data
 
Unit Test Your Database! (PgCon 2009)
Unit Test Your Database! (PgCon 2009)Unit Test Your Database! (PgCon 2009)
Unit Test Your Database! (PgCon 2009)
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 

5 (more) Ways To Destroy Your Community

  • 1. Destroy Your Community in 5 Easy Steps Josh Berkus Community Hit Man SCALE 2010
  • 2. Community Size Community Growth Project Year
  • 3. Carbon Concentration Global CO2 Concentration Year
  • 4. Community Size Cut Off That Ugly Growth! Project Year
  • 5. 1. We Don't Need No Stinkin' Docs! NEVER DOCUMENT … the code … the build methods … the patch submission process … the release process … how to install it … how to use it
  • 6. 1. We Don't Need No Stinkin' Docs! NEVER DOCUMENT … the code … the build methods … the patch submission process … the release process … how to install it … how to use it If it was hard to write, it should be hard to understand!
  • 7. For Advanced Players Proprietary Licensed Documentation
  • 9. Nurture Your Trolls! 1. Argue with them at length 2. Denounce them venemously 3. Ban them 4. Argue with them in other projects
  • 10. Nurture Your Trolls! 1. Argue with them at length 2. Denounce them venemously 3. Ban them 4. Argue with them in other projects 5. Allow them back into your project 6. GOTO 1
  • 11. 3. Non-Standard Licenses Bob's License Preamble: This license is just like the GPL, except that I changed a few clauses since it's only fair that if you make money with this software I should be able to make money too.
  • 12. Add some exceptions ... 1. This FLOSS Exception applies to all Programs that contain a this notice saying that the Program may be distributed under the terms of this FLOSS Exception. 2. If you prefer you can use the Zope Database Adapter ZPsycopgDA (i.e., every file inside the ZPsycopgDA directory) user the ZPL license.
  • 13. and change licenses frequently! This work and all of its derivative works may be relicensed by the Bob project at any time simply by posting a new license on this web page.
  • 14. 4. Lock it up! ● Your version control system allows you to restrict permissions … use it! ● Only grant commit rights on specific directories ● Only grant commit rights on specific branches ● Lock everyone out when you're “working” ● Create files that only you are allowed to modify ● Suspend people's commit rights whenever they break one of your “rules”
  • 15. 4. Lock it down! ● Only you should have admin on the web server ● Only you should have control of the DNS ● Only you should touch the mail server ● Only you should administrate the CMS
  • 16. 4. Lock it down! ● Only you should have admin on the web server ● Only you should have control of the DNS ● Only you should touch the mail server ● Only you should administrate the CMS … then vanish off the internet for weeks at a time!
  • 17. Just Be Yourself … a self-righteous jerk
  • 18. Wrong Dear submitter, Thanks for your patch! You might need to check out this discussion <link> about some of the side effects of what you propose, and let us know if you have ideas on how to get around them. Also, please do look at the developer FAQ <link>; there are a few code formatting issues, particularly use of tabs. Let us know if you have questions!
  • 19. Right Hey newbie, Jesus, another threading patch? Didn't you search the archives, or at least pay attention for a week? And boy, can I tell you're fresh out of school, you have tabs all over the place. Come back when you've learned how to code.
  • 20. The 5 Steps 1.No docs 2.Feed the trolls 3.Non-standard licensing 4.Lock it up, lock it down 5.Be a jerk Now you have your project to yourself again … and the world is safe! This presentation copyright 2009 Josh Berkus, licensed for distribution under the Creative Commons Attribution License, except for photos, most of which were stolen from other people's websites via images.google.com. Thanks, Google!