Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Happiness in Open Source

Happiness in Open Source

A talk about how to make open source work without destroying your soul.

Armin Ronacher

May 09, 2016
Tweet

More Decks by Armin Ronacher

Other Decks in Programming

Transcript

  1. Happiness in
    Open Source
    Armin Ronacher

    View full-size slide

  2. Me
    • Armin Ronacher (@mitsuhiko)
    • Open Source Person
    • Flask, Werkzeug, Jinja, Lektor etc.
    • Now working on Sentry

    View full-size slide

  3. Interrupt Me

    View full-size slide

  4. Getting There

    View full-size slide

  5. The Trigger
    • Bought a book by Gregor Lingl: “Python für
    Kids”
    • Stumbled upon the German Python Forum
    • The former administrator recommends Linux
    and with it Ubuntu

    View full-size slide

  6. Back in Time
    • 2004: Ubuntu was released
    • the first version of Linux I could actually run on
    my desktop.
    • Little bit of PHP Hacking
    • --> ubuntuusers.de

    View full-size slide

  7. Going with the Flow
    • Ubuntu exploded. You could actually see
    yourself making a “difference”
    • got a contribution into ubuntu directly: a simple
    wallpaper and some translations

    View full-size slide

  8. Growing Big
    • Founding of the German ubuntu society
    • Scaling website to multiple servers
    • The politics start

    View full-size slide

  9. Why did it happen?

    View full-size slide

  10. Hermagor
    • My Hometown
    • Population: 1.500
    • People with an interest in technology: few
    • Enter the internet

    View full-size slide

  11. Next Step: Programming
    • Diving into Python development
    • learning real programming
    • Getting in contact with other Python developers
    (Georg Brandl)

    View full-size slide

  12. Learning
    • Jinja -> Templates without Django
    • Copy pasting code over, trying to improve it
    • Learning on IRC from a guy who actually knows
    parsers.

    View full-size slide

  13. Release
    • First implementation was crap
    • Did not stop me from publishing it though
    • What is a license?

    View full-size slide

  14. Open?
    • You can do whatever you want with it.
    • Wrong

    View full-size slide

  15. Stumbling Blocks
    • Jacob Kaplan–Moss sends me a mail that some
    of the leftover code from Django in Jinja is
    missing the License declaration.
    • Learning on Licensing

    View full-size slide

  16. Communication &
    Culture

    View full-size slide

  17. People
    • There is a difference between IRC and RL
    • Textual communication can be a problem
    • IRC/mail does not transfer emotions
    • Different cultures

    View full-size slide

  18. Licensing
    • Horrible, horrible, horrible, horrible, horrible,
    horrible, horrible, bad, bad, bad, bad,
    AAAAaaaargh
    • And you can seriously hurt yourself

    View full-size slide

  19. Goals
    • Often you don't want what others do
    • And that might not even be obvious
    • Learn to say no

    View full-size slide

  20. Why Open Source?
    • Fun
    • Rewarding
    • Networking for shy people
    • A common ground

    View full-size slide

  21. Learning
    • I learn by failing and communicating with
    others.
    • If it wasn't for the open source community I
    wouldn't be able to find people to talk to.
    • Cross language / border

    View full-size slide

  22. It pays off
    • Learning new things
    • Getting introduced to interesting people
    • The thrill of working together
    • Happiness when you see your stuff being used

    View full-size slide

  23. Staying Motivated

    View full-size slide

  24. Use It
    • You can only build things you use yourself
    • Let other's chime in when you stop using it
    • Stop using it if you find something better / you
    need to use something else

    View full-size slide

  25. Be More Boring
    • Sometimes it's important to stay boring
    • Don't get carried away by the latest trends
    • Don't overstep the original goals

    View full-size slide

  26. BSD or GTFO
    • All popular Python modules are MIT/BSD
    licensed with the occasional LGPL one
    • Commercial modules are very, very rare
    • GPL libraries ends up being mostly unused
    • Why?

    View full-size slide

  27. Forced Contributions
    • “99% of useful code contributions come from
    people who are motivated to participate in the
    project regardless of what the license tells them
    they have to do.” — Steve Streeting

    View full-size slide

  28. Money: Case Studies

    View full-size slide

  29. Making Money
    • Selling the software?
    • Libraries vs Applications
    • Selling support?
    • BSD/MIT/zlib

    View full-size slide

  30. Flask
    • Impossible to sell
    • However an amazing way to bootstrap a career
    • More than possible to sell consulting

    View full-size slide

  31. Sentry
    • Open Source not Open Core
    • Puts us where others cannot be
    • Bootstrapped

    View full-size slide

  32. Contact
    • Armin Ronacher (@mitsuhiko)
    • http://lucumr.pocoo.org/
    • http://www.getsentry.com/

    View full-size slide