Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Conference 2007)

Preview:

DESCRIPTION

Open Source projects are normally developer-driven and tend to lack ways for non-developers to make meaningful contributions. GetPaid, an ecommerce framework for Plone, was organized with a collaborative design process known as "social sourcing". This talk provides an update on the community organizing, fundraising, and development of GetPaid.

Citation preview

Social Sourcing Free Software: The story of GetPaid and creating

new opportunities for Plone

Christopher JohnsonifPeople | www.ifpeople.net

Plone Conference 2007Napoli, Italy

October 9, 2007

Outline

● What is Social Sourcing?● Why is it important for Free Software?● The Story of GetPaid & Social Sourcing● Lessons for Plone

What is Social Sourcing?

Def 1: Open Source Software for Civil Society Organizations (ie NGO/non-

profit)

What is Social Sourcing?

Def. 2: An organizing approach that gets diverse stakeholders to

participate to the software making process.

Similar Process: Charrette

● Charrettes bring together people from multiple perspectives at the design stage for an intense collaboration. – Root: French for “cart”

– More than just “crunch time”, it is also core to an Integrated Design Process

Charrette

● Frequently used for: innovative building design, community planning, product design.– Key: collaborative decision making in design

Data Center Charrette

● People from hardware, software, security, energy, real estate and more– Resulting design:

● 89% energy use reduction ● Equivalent computing power● Increased reliability

– See rmi.org

Why is this relevant?

● Open Source Software projects are driven by developers

==> Developers, like architects, often reticent to get “human” input

==> Difficult for non-developers to participate in shaping outcome

Why is this relevant?

● Diverse perspectives enrich the product

==> Expectations from client clarified upfront

==> Opportunities and constraints explored fully

Why is this relevant?

● The quality of the process determines the quality of the outcome

==> How you get it done determines what you get done

==> Position product to have a strong community

● Plone:– Flexible + very useful out of the box

● Internationally... – Wide use in NGOs, though still dependent on

third-party systems for donations

● 2006 PloneConf BOF– Conclusion: Need state of the art payment

processing framework

● To action! But...– /me was new to community, not a developer, and

with no ecommerce software experience.

– “Social sourcing” helped to be transparent, inclusive, and improve the product.

● <DOCTYPE FREESOFTWARE PUBLIC...><div id=”entrepreneur”> ...don't be afraid!

● Step 1: Get oriented– What is already out there?

– What do we know about those things?

– Why do we need something else?

● Result: – Reference on Plone Commerce:

http://plonegetpaid.com/why/plone-commerce-background

– Need for the product: http://plonegetpaid.com/why/need-for-this-product

● Step 2: Make a plan– What should we do?

– How can we do it?

– Who does it benefit and how?

– Make it pretty to look at...

● Results: – Goal for GetPaid M1: Donation handling

– Sponsorship plan: www.plonegetpaid.com/sponsor

● Step 3: Recruit leaders and participants– The project needs a qualified “sheperd”

– Variety of expertise are needed

● Result: – Lead architect: Kapil Thangavelu

– Organizer: Christopher Johnson

– NGO Liason: Jon Stahl

– Developers and UI: various (see Credits)

● Step 4: Refine the requirements (participative)– Get input of users, developers, user interface

experts, consultants/supporters

● Results: – Architecture outline

– User stories

● Step 5: Ask for money!– If you don't ask, you won't get it...

– Tips for asking: ● Connect needs with value● Be transparent● Be patient and persistent

● Result: – Raised over US$12,000 to date

– Contributions page

● Step 5: Don't forget...– Be accountable and transparent

● Step 6: Celebrate successes!– Reward and recognize people and their

contributions

– Communication is important!

● Results:– Blog, mailing list

– Celebrations...

● Ongoing: – Make it fun!

– Keep it organized!

– Keep people motivated!

● Results: – 3 Sprints (UNC, Google, Argentina)

– Google Code (wiki, issues)

– Blog, mailing lists, channel (#getpaid)

Social Source v1.0 Alpha●

– Study the market (benchmark)

– Put together a compelling plan

– Recruit the right people

– Engage a wide base in refining requirements

– Ask for money

– Celebrate successes

– Sustain it: fun, organization, motivation

– Regroup, review, and restart...

What does this mean for Plone?

● Plone is great!● Lots of work heading into the future...but

towards what?– Perhaps Plone could benefit from process

improvements that would: ● Clarify direction and identity● Provide more inclusive design process● Improve the overall product ● Strengthen Plone community

Plone Creation Process

● Overall vision:– Open process associated with vision?

● How can users be more involved?

– Place to document it?

● Features: – PLIPs process determines features...but you

have to be a “core developer” to make a PLIP● Something before PLIPs but more specific than vision?● Way to involve non-developers?

Reminder

● Check out GetPaid at Naples Sprint!– Sprint for the Red Ocher Release Candidate

– October 13-15, 2007

Thank you!

● Contact info: – Christopher Johnson

– cjj (at) ifpeople.net

– www.ifpeople.net

● Links: – www.plonegetpaid.com

– plone.org