The Future of Collaboration in the Python community and beyond

Author

Mark Pilgrim is Gone

  • He did feedparser, httplib2
    • aside: httplib2 was actually by Joe Gregorio
  • Dive into Python

  • Dive into HTML5

  • Other things

  • We lost a lot with him leaving, sad to see him go.

What Happened to his Projects?

  • What is the copyright?
    • A: CC-SA
  • What about his code?
    • httplib2 is a big dependency of many projects
    • That’s how found out he was gone
    • Pypi didn’t host it
    • Google Code didn’t host it anymore.

PyPI issues

  • Too easy to delete a package * Dependency checks for that package * Request a project handoff * Other projects need to be notified * RSS feeds
  • Human moderation * Some can be automate * Burdens PyPI team

Repeating History

  • Django-lint

  • Django-Piston
    • social factors caused no release in years
  • python.org

  • opencomparison.org
    • Host djangopackages.com
    • How does this get maintained?

Dark Future

  • Critical Packages Breakdown
  • Python packages vanish
  • Build scripts fail
  • Replace from caches/backups

Repercussions

  • Lose domain knowledge
  • Python can’t move forward.
  • Social Issues
  • 3rd Party Community is just as critical as Python core

Not the Future

  • It’s today

  • Legacy code with legacy packages

  • Build scripts fail

  • Example of NASA issue
    • caused project to go to ColdFusion
  • We have lost works of antiquity
    • Blame is moot
  • Stuff we make today is legacy in 5 years

Trust Issues

  • This causes a lack of trust in Python

  • Without trust, we can’t collaborate as well
    • The disease that will trigger zombie apocolypse

Solutions

  • Money!
    • Sponsorships
    • Problems getting money
    • Applications
    • Focus on sprints
    • Code quality issue from sprints
    • Ongoing maintenance

Future is still dark

  • Community Managers

  • Ticket triage, etc.

  • Needs core/senior developers

  • They are already busy
    • Examples pay people to do this
    • Volunteers may have life get in the way
  • Determining authority

PSF Paid Commmunity Manager

  • Proposed solution
  • Paid via the PSF

Repercussions

  • Fixes some problems
  • Mitigate social issues
  • Can still lose domain knowledge

Precedents

  • Ubuntu
  • Fedory
  • Twilio
  • Github

Wants

  • More reasons to trust
  • More reasons to contribute
  • Keep projects operating

Call to Action

  • This is a proposal

  • Wants to see PSF project incubation

  • PSF provides seed funding for OS projects
    • Should return on investment
    • Preferably to Python community
    • Needs a viable business model
    • PSF is an investor
  • Choose from particapants in Django Dash & coding contests

Return

  • Gives OS code
  • Gives money back to the PSF

What this isn’t

  • Covering < $100 for hosting
  • Things without a self-supporting business model

Examples Projects

  • djangolint.com
    • Little setup requires

    • Uses github

    • Wants for all Python

    • Wants syndication

    • How does it make money?
      • Pay to analyze privately?
    • Easy linting increases trust

  • readthedocs.org
    • Places in the 2010 Django Dash

    • Documentation increases trust

    • Business model?
      • Pay for private doc hosting would be good.
      • Clients don’t want to host docs.
  • depot.io
    • Freeze your python dependencies

    • Doesn’t replace PyPI

    • Provides additional security

    • Possible Advantages
      • Archive legacy packages
      • Leave PyPI as the canonical source
      • Adds dependablility, trust
  • PyPI
    • Pay for a PyPI Appliance?
    • Github makes “giant” profits on Enterprise Appliance
  • djangopackages.com
    • Just launched pyramid version

    • Plone?

    • Python?

    • http://bit.ly/django-reg

    • Compare and contrast packages

    • Helped determine a package to use

    • Gives metrics

    • Metrics give trust

    • As opencomparison, support more things
      • Languages
      • Syndication
      • OAuth
      • What’s the business model?

Results

  • Don’t have packages vanish.
  • Let Python move forward
  • Have new social issues.

Project Incubations

  • Already exists, just not with PSF
  • How much code comes out of these?
  • Energy of startup giving back?