Revolutionary Open Source

download Revolutionary Open Source

If you can't read please download the document

description

How to change the game by helping selfish people work together on your projects.

Transcript of Revolutionary Open Source

  • 1. Revolutionary Open SourcePieter HintjensZeroMQ.orgHow to change the game byhelping selfish people worktogether on your projects

2. Why are we here...? 3. About you Youre a programmer, organizer, leader You want to make successful software You want to work with other people You want to change the world You want to earn your living 4. About me Pister Hinges, origins unclear My code is crappy, my music is worse My businesses are lousy investments My protocols are clumsy (sorry for AMQP) I still cant believe OReilly published my book If failure is a university, I have many PhDs 5. Buy the book 6. Let me tell you a story... Closed source is Dead on Arrival The future belongs to open source To make open source, build communities There is a science to it: Social Architecture It can be very profitable 7. The pain, the pain! 8. Our industry sucks All our effort goes to making stuff Mostly stuff no-one really wants Missing every new opportunity Constant build-up of technical debt Complex, irrelevant, trash 9. We can dream... 10. Imagine a Perfect World Community does most of the work Mostly, things people really want Rapid colonization of new spaces Constant pruning of technical debt Simple, elegant, precious 11. But are we solving the right problems? 12. Why is accuracy so difficult? We love to make grand designs But problems are emergent I.e. we see them only when we get close Speculative design makes us blind Upfront structure makes us slow We attach to solutions, not problems 13. Perfection is possible 14. Simplicity Oriented Design Design by removing problems, not addingfeatures Simplicity beats functionality, every time Discover the core problems Solve them minimally Use that to discover next set of problems Aka Drunken Stumble 15. Why open source? Open source lets us make more accurate,simpler software In a free & fair market, this will win Open source can be very profitable Profits are widely spread Its a social technology Not a business model 16. Why communities? No-one wants to live in Astana Community over code Community grows with the code We build the code We own it and look after it 17. Software is about people 18. Social Architecture The art and science of growing an onlinecommunity Cultural, political, or technological How we organize beats who we are Simplicity beats functionality Diversity beats education 19. Act normal, its just a human 20. Were a funny animal Were lazy and stupid, so keep it simple Were selfish, so make it worth our while We like to conform, so give us good rules Were greedy, so make us compete Were fearful, so make it safe for us fail 21. Were a social species 22. How social is your code? An open source license is the contract on whichthe community forms The license defines economics of behaviour A good contract dissolves conflict Type 1: BSD (MIT, X11, Apache, ...) Type 2: GPL (LGPL, AGPL, ...) 23. The essence of BSD The BSD license says, "Eat Me!" Some community building Significant leakage Mixable but forks are endothermic Ideal for large groups to dump code 24. The essence of GPL The GPL says, "Remix Me!" Strong community building Minimal leakage Remixable, forks are exothermic Ideal for the revolutionary 25. Whats your Cost of Failure? 26. Start small, grow slowly Make seed product at own cost Do this in public view Pull in pioneer contributors Community designs next iteration Repeat ad infinitum 27. The community life cycle Pioneers, hunting for new stuff Leading edge, becoming specialists Early adopters, looking for profit Mass market, avoiding risk Late adopters, just keeping up 28. How sexy is your project? 29. Crazy and beautiful A crazy, impossible mission statement Has to speak to pioneers and leading edge Simple, elegant, brutally clean Has to be immediately useful and compelling You want love at first sight 30. Ease of access Remove all barriers to getting involved If youre not using GitHub, you should be Has to work for early adopters Aim for diversity of participants Origin, gender, age, experience 31. Cities built by people who never met 32. Stranger, meet Stranger Eliminate need for up-front agreement Invest in really good rules Apply the rules transparently and fairly Founder becomes enforcer of fair rules Not some special genius visionary 33. The C4 rulekit Plug and play rules for open source projects Focuses on scale of community Best practice from ZeroMQ community Codified for reuse by other projects ZeroMQ RFC 22 (rfc.zeromq.org/spec:22) 34. Infinite property Ideas are cheap and mean nothing Success comes from very hard work Participants should own their work Must be trivial to create new projects Scale by more projects, not bigger ones 35. Hi Daddy! 36. Care and feeding Communities are not 100% self-steering They need an authority (founders) They need living rules (lawyers) They need sound economics (backers) They need mediation (clients to experts) 37. Sorry, were closed 38. Communities gone bad Bitter fights over vision and direction Politics instead of real work Endless talk of angels and unicorns Fragmentation and emotional pan Mental abuse and burnout 39. Open 24/7! 40. Communities done right Consensus emerges quietly in real time No politics, focus is on real work Remarkably little upfront discussion Emotional talk is the exception Participants come and go easily 41. Freedom needs security 42. Immunity from capture Juicy projects attract predators Founders, investors, or 3rd parties See this from the communitys view Does the license make us immune? Can we choose another authority? 43. And does it pay the bills? 44. Making money from open source Forget dual licensing & support Eating the seeds for tomorrows crops Bring the cost down to zero Destroy your competition Standardize to create new markets Sell new stuff into those markets 45. Hope you liked the story Read more at hintjens.com Buy the OReilly ZeroMQ bookPhotos (c) 2013 Pieter Hintjens, shot inNew York city, Brussels, Vienna, a field inFrance, and Berlin.