Slide 1

Slide 1 text

Daniel Greenfeld @pydanny The Future of Collaboration by Daniel Greenfeld

Slide 2

Slide 2 text

Daniel Greenfeld @pydanny Who am I? Daniel Greenfeld (@pydanny) Cartwheel Web / Revsys http://djangopackages.com https://whitespacejobs.org Fiancé of Audrey Roy http://www.flickr.com/photos/pydanny/4442245488

Slide 3

Slide 3 text

Daniel Greenfeld @pydanny Mark Pilgrim is Gone

Slide 4

Slide 4 text

Daniel Greenfeld @pydanny Mark Pilgrim • feedparser • conbtributed to httplib2 • Dive into Python • Dive into HTML5

Slide 5

Slide 5 text

Daniel Greenfeld @pydanny Mark’s Projects? • What is the copyright on his material? • What about his code?

Slide 6

Slide 6 text

Daniel Greenfeld @pydanny httplib2 • Mark wasn’t lead, but outage anyway... • PyPI? • http://code.google.com/p/httplib2 was down • Had to find a cached download •A lot of libraries depend on httplib2

Slide 7

Slide 7 text

Daniel Greenfeld @pydanny PyPI Issues? • Packages are too easily deleted • Dependency checks for that package • Request a project hand-off? • Other projects need to be notified • RSS feed of these things • Needs moderation but PyPI busy

Slide 8

Slide 8 text

Daniel Greenfeld @pydanny Repeating History? • http://pypants(.com|.org|.net) is gone • http://djangolint.com is here today

Slide 9

Slide 9 text

Daniel Greenfeld @pydanny Repeating History? • django-piston • python.org • http://opencomparison.org

Slide 10

Slide 10 text

Daniel Greenfeld @pydanny A Dark Future

Slide 11

Slide 11 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • A number of critical Python Packages vanish • Various build scripts fail • Replace from caches/backups •Domain Knowledge is gone Dark Future

Slide 12

Slide 12 text

Daniel Greenfeld @pydanny Repercussions • Annoyance • Ability for Python to move forward HALTS • Social Issues Dark Future

Slide 13

Slide 13 text

Daniel Greenfeld @pydanny Not the Future

Slide 14

Slide 14 text

Daniel Greenfeld @pydanny • Legacy code tries to install legacy packages • Various build scripts fail • Replace from caches/backups MAYBE! •Domain Knowledge is gone TODAY

Slide 15

Slide 15 text

Daniel Greenfeld @pydanny Library of Alexandria http://en.wikipedia.org/wiki/File:Ancientlibraryalex.jpg

Slide 16

Slide 16 text

Daniel Greenfeld @pydanny Stuff we make today Is legacy within 5 years

Slide 17

Slide 17 text

Daniel Greenfeld @pydanny Trust Issues

Slide 18

Slide 18 text

Daniel Greenfeld @pydanny Lack of trust makes collaboration hard

Slide 19

Slide 19 text

Daniel Greenfeld @pydanny No collaboration causes the NIH plague

Slide 20

Slide 20 text

Daniel Greenfeld @pydanny http://en.wikipedia.org/wiki/File:Zombie-walk-kids.JPG

Slide 21

Slide 21 text

Daniel Greenfeld @pydanny Repercussions TODAY • Annoyance • Ability for Python to move forward HALTS • Social issues

Slide 22

Slide 22 text

Daniel Greenfeld @pydanny Solution? Sponsorships!

Slide 23

Slide 23 text

Daniel Greenfeld @pydanny Sponsorships • Individual, Corporate, Academic, GSOC • Advance an open source project forward!

Slide 24

Slide 24 text

Daniel Greenfeld @pydanny Sponsorships • Python core • Django • Plone • Twisted • Read the Docs (PSF) • WebOb (PSF) Tons more I’m missing!

Slide 25

Slide 25 text

Daniel Greenfeld @pydanny Problems • Application process • Seems focused on short-term development • Interns often produce unusable code • Ongoing maintenance?

Slide 26

Slide 26 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • Legacy code tries to install legacy packages • Various build scripts fail • Replace from caches/backups MAYBE! •Domain Knowledge is gone N O C H AN G ES

Slide 27

Slide 27 text

Daniel Greenfeld @pydanny Repercussions • Annoyance • Ability for Python to move forward HALTS • Social issues N O C H AN G ES

Slide 28

Slide 28 text

Daniel Greenfeld @pydanny Same as before

Slide 29

Slide 29 text

Daniel Greenfeld @pydanny Still have Trust Issues

Slide 30

Slide 30 text

Daniel Greenfeld @pydanny Why should I collaborate with you?

Slide 31

Slide 31 text

Daniel Greenfeld @pydanny Future still looks dark

Slide 32

Slide 32 text

Daniel Greenfeld @pydanny So now what?

Slide 33

Slide 33 text

Daniel Greenfeld @pydanny Solution? Community Managers

Slide 34

Slide 34 text

Daniel Greenfeld @pydanny Community Managers • David Eaves DjangoCon 2011 Keynote • http://bit.ly/djangocon-keynote-2011-1 • Makes sure packages are maintained!

Slide 35

Slide 35 text

Daniel Greenfeld @pydanny Problems • Need core/senior developers • They are already busy • Who assigns authority?

Slide 36

Slide 36 text

Daniel Greenfeld @pydanny Solution Reconsidered PSF Paid Community Manager • Reasonable pay • Works with PyPI team to do package curation • Helps project leads if they need to hand off • Broadcasts so the community knows about it

Slide 37

Slide 37 text

Daniel Greenfeld @pydanny Solution Reconsidered PSF Paid Community Manager • Performance reviews • Term limits • Great resume material • Volunteers have different priorities

Slide 38

Slide 38 text

Daniel Greenfeld @pydanny Increase of Trust

Slide 39

Slide 39 text

Daniel Greenfeld @pydanny This makes collaboration easier

Slide 40

Slide 40 text

Daniel Greenfeld @pydanny The Brighter Future

Slide 41

Slide 41 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • A number of critical Python Packages vanish • Various build scripts fail • Replace from caches/backups •Domain Knowledge is gone Today

Slide 42

Slide 42 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • A number of critical Python Packages vanish • Various build scripts continue •Domain Knowledge is at risk Future

Slide 43

Slide 43 text

Daniel Greenfeld @pydanny Repercussions • Annoyance • Ability for Python to move forward HALTS • Social Issues Today

Slide 44

Slide 44 text

Daniel Greenfeld @pydanny Repercussions • Annoyance • Ability for Python to move forward slows • Mitigated Social Issues Future

Slide 45

Slide 45 text

Daniel Greenfeld @pydanny Precedents • Ubuntu Community Manager • Isn’t there a Fedora Community Manager? • Twilio Community Managers

Slide 46

Slide 46 text

Daniel Greenfeld @pydanny But...

Slide 47

Slide 47 text

Daniel Greenfeld @pydanny I want more

Slide 48

Slide 48 text

Daniel Greenfeld @pydanny More reasons to trust

Slide 49

Slide 49 text

Daniel Greenfeld @pydanny More incentives to collaborate

Slide 50

Slide 50 text

Daniel Greenfeld @pydanny More reasons to give code back

Slide 51

Slide 51 text

Daniel Greenfeld @pydanny Question: How do we keep the projects that do this operating?

Slide 52

Slide 52 text

Daniel Greenfeld @pydanny Call to Action

Slide 53

Slide 53 text

Daniel Greenfeld @pydanny Proposal: PSF Project Incubation

Slide 54

Slide 54 text

Daniel Greenfeld @pydanny The Idea Part I The PSF provides seed money to open source projects that can provide a return of investment on these items: • Tangible benefit to the Python community • Money via a viable business model

Slide 55

Slide 55 text

Daniel Greenfeld @pydanny The Idea Part II • Choose from participants in coding contests • Django Dash & other unborn contests • PSF offers YC-style seed funding • Marketing: Blog posts, PyCon booths, python.org • Lets them go to do their thing What the PSF Board / Community does:

Slide 56

Slide 56 text

Daniel Greenfeld @pydanny The Idea Part III • Deliverable open source code • Something that makes the Python world better • PSF is an investor so dividends come back What the incubatee provides:

Slide 57

Slide 57 text

Daniel Greenfeld @pydanny What this isn’t • Covering < $100 monthly hosting • Throwing money at things without a self- supporting business model • For part-timers - It’s all or nothing

Slide 58

Slide 58 text

Daniel Greenfeld @pydanny If I were rich I would do this right now

Slide 59

Slide 59 text

Daniel Greenfeld @pydanny Example Projects Real World

Slide 60

Slide 60 text

Daniel Greenfeld @pydanny djangolint.com

Slide 61

Slide 61 text

Daniel Greenfeld @pydanny http://djangolint.com • Winner of this year’s Django Dash • I want this for all of Python • Will it be maintained? • Will it go the way of PyPants?

Slide 62

Slide 62 text

Daniel Greenfeld @pydanny http://djangolint.com

Slide 63

Slide 63 text

Daniel Greenfeld @pydanny http://djangolint.com

Slide 64

Slide 64 text

Daniel Greenfeld @pydanny http://djangolint.com • Winner of this year’s Django Dash • I want this for Python • API/Syndication? (Open Comparison) •Will it be maintained? •Will it go the way of PyPants?

Slide 65

Slide 65 text

Daniel Greenfeld @pydanny Pay to analyze privately Business Model (Great for client projects!)

Slide 66

Slide 66 text

Daniel Greenfeld @pydanny Easy linting increases Trust

Slide 67

Slide 67 text

Daniel Greenfeld @pydanny Collaborate with high lint rated projects!

Slide 68

Slide 68 text

Daniel Greenfeld @pydanny readthedocs.org

Slide 69

Slide 69 text

Daniel Greenfeld @pydanny python.rtfd.org

Slide 70

Slide 70 text

Daniel Greenfeld @pydanny http://rtfd.org • Placed in the 2010 Django Dash • python.rtfd.org • plone.rtfd.org • pydanny-event-notes.rtfd.org

Slide 71

Slide 71 text

Daniel Greenfeld @pydanny A measurable benchmark!

Slide 72

Slide 72 text

Daniel Greenfeld @pydanny Documentation increases Trust

Slide 73

Slide 73 text

Daniel Greenfeld @pydanny Documentation increases Trust Trust increases Collaboration

Slide 74

Slide 74 text

Daniel Greenfeld @pydanny Can it do more? • Support other markup languages?

Slide 75

Slide 75 text

Daniel Greenfeld @pydanny Business Model Pay for private doc hosting?

Slide 76

Slide 76 text

Daniel Greenfeld @pydanny depot.io

Slide 77

Slide 77 text

Daniel Greenfeld @pydanny http://depot.io • A place to freeze your Python dependencies • Let’s PyPI focus on what it does best - Indexing • Provides additional security • Fetch packages any way you want • Not yet launched. ☹ Developer paying the bills?

Slide 78

Slide 78 text

Daniel Greenfeld @pydanny http://depot.io • PyPI is still the canonical source • Less need for Paid Community manager • Will probably archive all legacy packages Possible Advantages (Except ones flagged for critical things like security) • OMG CAN WE HAVE THIS PLEASE?

Slide 79

Slide 79 text

Daniel Greenfeld @pydanny Dependability increases Trust Trust increases Collaboration

Slide 80

Slide 80 text

Daniel Greenfeld @pydanny http://depot.io • PSF should incubate this project • Open source it? • + Lowers the bus factor • - Easy launch of copy versions of site • - Does it become harder to earn profit? • + Once launched, SLA is key

Slide 81

Slide 81 text

Daniel Greenfeld @pydanny PyPI

Slide 82

Slide 82 text

Daniel Greenfeld @pydanny http://pypi.python.org/pypi

Slide 83

Slide 83 text

Daniel Greenfeld @pydanny PyPI • Launched before the days of OS X • The canonical source for Python packages • Focusing hard on just Indexing

Slide 84

Slide 84 text

Daniel Greenfeld @pydanny Business Model Pay for a PyPI Appliance?

Slide 85

Slide 85 text

Daniel Greenfeld @pydanny Dependability increases Trust Trust increases Collaboration

Slide 86

Slide 86 text

Daniel Greenfeld @pydanny opencomparison.org

Slide 87

Slide 87 text

Daniel Greenfeld @pydanny http://djangopackages.com/

Slide 88

Slide 88 text

Daniel Greenfeld @pydanny http://pyramid.opencomparison.org/

Slide 89

Slide 89 text

Daniel Greenfeld @pydanny opencomparison.org • Competed in Django Dash 2010 • More sites coming soon! • Plone • Flask • Python! • A year of expansion and code cleanup

Slide 90

Slide 90 text

Daniel Greenfeld @pydanny opencomparison.org Largest sprint group at PyCon 2011!

Slide 91

Slide 91 text

Daniel Greenfeld @pydanny http://bit.ly/django-reg Many good people Most downloads Maintained? Much recent work

Slide 92

Slide 92 text

Daniel Greenfeld @pydanny http://bit.ly/django-reg Many good people Most downloads Maintained? Much recent work Django Social Auth is my current registration preference

Slide 93

Slide 93 text

Daniel Greenfeld @pydanny Metrics increase Trust Trust increases Collaboration

Slide 94

Slide 94 text

Daniel Greenfeld @pydanny • More OAUTH and OpenID Support • Improved search • Language neutral to support other tools • Better caching • Additional RSS feeds • Give us more hard metrics please! I — Open Comparison

Slide 95

Slide 95 text

Daniel Greenfeld @pydanny Business Model ???

Slide 96

Slide 96 text

Daniel Greenfeld @pydanny Business Model • Consulting for Open Comparison • Enterprise Support? • Ideas anyone?

Slide 97

Slide 97 text

Daniel Greenfeld @pydanny Results?

Slide 98

Slide 98 text

Daniel Greenfeld @pydanny Self-sustaining Python ecosystem

Slide 99

Slide 99 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • A number of critical Python Packages vanish • Various build scripts fail • Replace from caches/backups •Domain Knowledge is gone Today

Slide 100

Slide 100 text

Daniel Greenfeld @pydanny Critical Packages Breakdown • A number of critical Python Packages don’t vanish • Various build scripts continue •Domain Knowledge remains Future

Slide 101

Slide 101 text

Daniel Greenfeld @pydanny Repercussions • Annoyance • Ability for Python to move forward HALTS • Social Issues Today

Slide 102

Slide 102 text

Daniel Greenfeld @pydanny Repercussions • Complacency about stability of ecosystem • Ability for Python to move forward continues • What Social Issues? Future

Slide 103

Slide 103 text

Daniel Greenfeld @pydanny The Future?

Slide 104

Slide 104 text

Daniel Greenfeld @pydanny The Ideas • Paid Community Manager • PSF project incubation

Slide 105

Slide 105 text

Daniel Greenfeld @pydanny Shoot them down!

Slide 106

Slide 106 text

Daniel Greenfeld @pydanny Paid Community Manager • If the PSF doesn’t do it, there is already PyPI • Maybe the PSF shouldn’t be involved • Ubuntu didn’t debate the position

Slide 107

Slide 107 text

Daniel Greenfeld @pydanny PSF Project Incubation This is not cheap! At least $15K per incubation

Slide 108

Slide 108 text

Daniel Greenfeld @pydanny PSF Project Incubation This is not cheap! At least $15K per incubation Problem

Slide 109

Slide 109 text

Daniel Greenfeld @pydanny PSF Project Incubation • Already exist, just not with the PSF • How much produced code comes out? • Imagine the energy of a start-up giving back! • Is happening already so PSF ought to profit...

Slide 110

Slide 110 text

Daniel Greenfeld @pydanny Thanks Github! http://octodex.github.com/#collabocats

Slide 111

Slide 111 text

Daniel Greenfeld @pydanny Questions?