Mark smith denise paolucci dreamwidth studios www dreamwidth org
Download
1 / 21

Mark Smith Denise Paolucci Dreamwidth Studios dreamwidth - PowerPoint PPT Presentation


  • 95 Views
  • Uploaded on

Build Your Own Contributors, One Part At A Time. Mark Smith & Denise Paolucci Dreamwidth Studios www.dreamwidth.org. Licensed under Creative Commons 3.0 CC-BY-SA. Dreamwidth Studios:. Open source (GPL/Artistic) code fork of LiveJournal.com founded in 2008 “Open Operations, Open Expression”

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Mark Smith Denise Paolucci Dreamwidth Studios dreamwidth' - etta


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Mark smith denise paolucci dreamwidth studios www dreamwidth org

Build Your Own Contributors,

One Part At A Time

Mark Smith & Denise Paolucci

Dreamwidth Studios

www.dreamwidth.org

Licensed under Creative Commons 3.0 CC-BY-SA


Dreamwidth studios
Dreamwidth Studios:

  • Open source (GPL/Artistic) code fork of LiveJournal.com founded in 2008

  • “Open Operations, Open Expression”

  • User-driven development, documentation, project management, support, design

  • 130+ contributors, 70% female

  • 50% beginners to Perl or to programming


Define success
Define “Success”:

  • Lines of code?

  • Number of commits?

  • Frequency of releases?

  • Longevity of project?

  • Commercial applications?


Define success1
Define “Success”:

  • Lines of code?

  • Number of commits?

  • Frequency of releases?

  • Longevity of project?

  • Commercial applications?


People
People.

People.

<blink>PEOPLE.</blink>


People1
People.

People.

<span style=‘text-decoration: blink’>PEOPLE.</span>


Things that drive newcomers away
Things that drive newcomers away:

  • Unnecessary barriers to entry

  • No clear expectations

  • Glacial processes

  • “Inner circle” (real or perceived)

  • No respect for your contributors


In their own words
In their own words:

"I have tried getting into other projects, but found the entrance very difficult - and not only do I code almost every day, but I am the kind of person that attends hacker conferences. If I find it hard to find information on how to claim bugs, submit patches, and what programming style the project prefers, I shudder to think what programming beginners must think."


Lower the barriers to entry
Lower the barriers to entry:

  • Document your coding styles & conventions

  • If you have to explain something more than twice, your documentation needs fixing

  • Log bugs for everything, no matter how small

  • Provide hosted developer environments

  • Have clearly defined channels for coding help

  • Put your project through the “typo test”


In their own words1
In their own words:

“I think my favorite aspect of the Dreamwidth project culture is that every contribution is welcomed, even if it’s incomplete or flawed. There is a sense that we want to help developers improve instead of rejecting them for not meeting some sort of standard of quality.”


Set clear expectations
Set clear expectations:

  • Uphold a “Code of Conduct” or Diversity Statement (dreamwidth.org/legal/diversity)

  • Give people goals to work towards

  • Create culture where teaching is expected

  • Foster a sense of social reward for collaboration, not competition


In their own words2
In their own words:

"I'm also enjoying the aspect of contributing to something I use and care about; I wrote a patch! It's live on Dreamwidth now, I can go and see what I did, if I want."


Keep it moving
Keep it moving:

  • People have short attention spans. Really.

  • Work in steps and iterate: break tasks down and pass things off

  • Manage your review queue: don’t let patches rot, even if this means you get less coding time

  • Be as available as you possibly can

  • Resolve bikeshed arguments quickly


In their own words3
In their own words:

“I like that everybody cooperates and that it's really supportive, and that if you have a crisis of feeling like you're fucking everything up for a day, or that you've had a really crappy day and everything you've done has exploded, or what have you, you won't be laughed at.”


Teambuilding is not a dirty word
“Teambuilding” is not a dirty word:

  • Everyone is allowed to make mistakes

  • Bug tickets are not flaws; they are chances to improve your project

  • Keep process open: discuss and decide publicly

  • Fiefdoms are dangerous!

  • Don’t value ‘big’ patches over little ones; place equal values on feature development, cleanup, refactoring, documentation, training


In their own words4
In their own words:

“I recall one moment in IRC when someone submitted a patch to a much-wanted bug, there was massive cheering, and the dev said wistfully that this was why he was wanting to submit patches here and not at the day job, because while the day job paid, it did not provide a cheering squad, much less a genuinely enthusiastic one.”


Which brings us to
Which brings us to …

THE single most important thing to do and have if you want to build your own contributors…


R e s p e c t
R-E-S-P-E-C-T:

  • People thrive on being in the loop

  • Don’t reject contributions without explaining

  • Ask yourself: “Is this answer bullshit?”

  • Value contributions’ substance over style

  • Moderate social channels for behavior


In their own words5
In their own words:

“I think I've found a new home. S'kinda cool.”


Three things to start right now
Three things to start right now:

  • Freshman orientation: appoint a “welcomer” and laud newcomers’ first contributions

  • Stop timing out on communication when people need responses from you

  • Problem Child: Have words with “that person” and let them know their behavior is not okay


For more information
For more information:

  • dreamwidth.org/create (Code: OSCON10)

  • dw-dev.dreamwidth.org

  • wiki.dwscoalition.org

    Denise Paolucci <[email protected]>

    Mark Smith <[email protected]>


ad