social sourcing as a collaborative design process: story of getpaid (plone symposium nola 2008)

34
Social Sourcing: The story of GetPaid, ideas for organizing software projects Christopher Johnson ifPeople | www.ifpeople.net Plone Symposium 2008 New Orleans, LA June 3, 2008

Upload: ifpeople

Post on 18-May-2015

670 views

Category:

Technology


0 download

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. Updated and slightly shorter than the Naples version of the talk.

TRANSCRIPT

Page 1: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Social Sourcing: The story of GetPaid, ideas for

organizing software projects

Christopher JohnsonifPeople | www.ifpeople.net

Plone Symposium 2008New Orleans, LA

June 3, 2008

Page 2: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Outline

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

Page 3: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Who am I?

Page 4: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

What is GetPaid?

● eCommerce in Plone built on Zope3– credit card processing

– order management

– shipping, fulfillment, inventory management

– 2 releases; 10,600+ lines of code

● Community– 105 members on mailing list

– 34 contributors (15+ in 2008)

Page 5: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Why am I here?

● Voice for non-developers!● Make Plone better: software, community,

marketing● Get feedback and ideas (time for another

round of social sourcing for GetPaid!)

Page 6: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

What is Social Sourcing?

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

profit)

Page 7: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

What is Social Sourcing?

Def. 2: A project organizing approach that gets diverse stakeholders to participate to the software making process, focusing on the value of

product.

Page 8: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

Page 9: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Charrette

● Key: collaborative decision making in design

Page 10: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

Page 11: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Why is this relevant?● Open Source Software projects are

driven by developers

==> Many projects naturally use agile processes (sprints, pairing)

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

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

Page 12: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Why is this relevant?

● Diverse perspectives enrich the product

==> Expectations from client clarified upfront

==> Opportunities and constraints explored fully

Page 13: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

Page 14: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

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

processing framework

Page 15: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

with no ecommerce software experience...but loves problem solving!

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

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

Page 16: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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...

Page 17: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

● 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

Page 18: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

● 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

Page 19: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)
Page 20: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

● 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

– Several more have stepped up!

– Developers and UI: various (see Credits)

Page 21: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)
Page 22: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)
Page 23: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

experts, consultants/supporters

● Results: – Architecture outline

– User stories

– Estimates and plan

Page 24: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

● 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 for first release

– Contributions page

Page 25: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

Page 26: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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

contributions● Deployments, releases, fixes

– Communication is important!

● Results:– Blog, mailing list

– Celebrations...

Page 27: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)
Page 28: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

● Ongoing: – Make it fun!

– Keep it organized!

– Keep people motivated!

● Results: – 4 Sprints (UNC, Google, Argentina, Naples)

– Google Code (wiki, issues, code)

– Blog, mailing lists, channel (#getpaid)

Page 29: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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...

Page 30: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

What next?

● Time for a new round of social sourcing for GetPaid!

● Encourage flow back into product of customizations and extensions

● Capture feedback from users, developers to improve project

● Need technical leaders in various areas

Page 31: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Implications 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

Page 32: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

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?

Page 33: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Getting Involved

● Download it: http://code.google.com/p/getpaid

● GetPaid mailing list: http://groups.google.com/group/getpaid-dev

● IRC: #getpaid● Features, Sponsorship etc:

http://www.plonegetpaid.com

Page 34: Social Sourcing as a Collaborative Design Process: Story of GetPaid (Plone Symposium NOLA 2008)

Thank you!

● Special thanks: – Kapil, Perrito, Lucie, Maurits, ChrisW

– OneNW, Contextual Corp, Totsie.com, Trees for Life

● Contact info: – Christopher Johnson

– cjj (at) ifpeople.net

– www.ifpeople.net

– irc: cjj