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

Five ways open source will slow you down (Bitbash)

Five ways open source will slow you down (Bitbash)

Software is changing the world - and even other planets. An ever-growing part of software is “open source”. But it hasn’t always been that way! And “doing something open source” is definitely no guarantee for success. There are numerous ways in which you can use open-source software and be worse off than if you did not.

Join me in this talk to find out how not to leverage open-source software in your organisation and your projects. Find out why reading the documentation may not always be your best bet, or how a workaround may eventually work against you. By investigating 5 ways in which you can fail, we can learn valuable lessons on what to do instead.

Maarten Mulders

January 27, 2024
Tweet

More Decks by Maarten Mulders

Other Decks in Technology

Transcript

  1. FIVE WAYS OPEN
    FIVE WAYS OPEN
    FIVE WAYS OPEN
    FIVE WAYS OPEN
    FIVE WAYS OPEN
    SOURCE WILL SLOW
    SOURCE WILL SLOW
    SOURCE WILL SLOW
    SOURCE WILL SLOW
    SOURCE WILL SLOW
    YOU DOWN
    YOU DOWN
    YOU DOWN
    YOU DOWN
    YOU DOWN
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  2. Picture by Rob Dammers - CC BY 2.0
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  3. Picture by Jan Derk Remmers - CC BY-SA 4.0
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  4. Picture by wyke2207
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  5. ABOUT ME
    @mthmulders
    @Java_Champions
    @OracleACE
    @InfoSupportBV
    @ASFMavenProject
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  6. WHAT IS SOFTWARE
    WHAT IS SOFTWARE
    WHAT IS SOFTWARE
    WHAT IS SOFTWARE
    WHAT IS SOFTWARE
    ANYWAY?
    ANYWAY?
    ANYWAY?
    ANYWAY?
    ANYWAY?





    A set of programmed instructions stored in the
    A set of programmed instructions stored in the
    A set of programmed instructions stored in the
    A set of programmed instructions stored in the
    A set of programmed instructions stored in the
    memory of [...] computers for execution by the
    memory of [...] computers for execution by the
    memory of [...] computers for execution by the
    memory of [...] computers for execution by the
    memory of [...] computers for execution by the
    processor.
    processor.
    processor.
    processor.
    processor.
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  7. "THE BIRTH OF SOFTWARE":
    "THE BIRTH OF SOFTWARE":
    "THE BIRTH OF SOFTWARE":
    "THE BIRTH OF SOFTWARE":
    "THE BIRTH OF SOFTWARE":
    MANCHESTER BABY (1948)
    MANCHESTER BABY (1948)
    MANCHESTER BABY (1948)
    MANCHESTER BABY (1948)
    MANCHESTER BABY (1948)
    Picture by Ian Dunster and Racklever - Public Domain
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  8. own collection
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  9. APPLE II WITH VISICALC
    APPLE II WITH VISICALC
    APPLE II WITH VISICALC
    APPLE II WITH VISICALC
    APPLE II WITH VISICALC
    Vintage Computing — 30 Years of VisiCalc
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  10. SOFTWARE BECAME LESS COUPLED
    SOFTWARE BECAME LESS COUPLED
    SOFTWARE BECAME LESS COUPLED
    SOFTWARE BECAME LESS COUPLED
    SOFTWARE BECAME LESS COUPLED
    TO THE ACTUAL MACHINE
    TO THE ACTUAL MACHINE
    TO THE ACTUAL MACHINE
    TO THE ACTUAL MACHINE
    TO THE ACTUAL MACHINE
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  11. SOFTWARE CHANGES OUR PLANET...
    SOFTWARE CHANGES OUR PLANET...
    SOFTWARE CHANGES OUR PLANET...
    SOFTWARE CHANGES OUR PLANET...
    SOFTWARE CHANGES OUR PLANET...
    AND OTHERS!
    AND OTHERS!
    AND OTHERS!
    AND OTHERS!
    AND OTHERS!
    Credits: NASA/JPL-Caltech
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  12. WHAT IS OPEN SOURCE
    WHAT IS OPEN SOURCE
    WHAT IS OPEN SOURCE
    WHAT IS OPEN SOURCE
    WHAT IS OPEN SOURCE
    SOFTWARE?
    SOFTWARE?
    SOFTWARE?
    SOFTWARE?
    SOFTWARE?
    → Also known as free or libre software





    Open-source software is [...] released under a
    Open-source software is [...] released under a
    Open-source software is [...] released under a
    Open-source software is [...] released under a
    Open-source software is [...] released under a
    license in which the copyright holder grants
    license in which the copyright holder grants
    license in which the copyright holder grants
    license in which the copyright holder grants
    license in which the copyright holder grants
    users the rights to use, study, change, and
    users the rights to use, study, change, and
    users the rights to use, study, change, and
    users the rights to use, study, change, and
    users the rights to use, study, change, and
    distribute the software and its source code to
    distribute the software and its source code to
    distribute the software and its source code to
    distribute the software and its source code to
    distribute the software and its source code to
    anyone and for any purpose.
    anyone and for any purpose.
    anyone and for any purpose.
    anyone and for any purpose.
    anyone and for any purpose.
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  13. OPEN SOURCE, FREE,
    OPEN SOURCE, FREE,
    OPEN SOURCE, FREE,
    OPEN SOURCE, FREE,
    OPEN SOURCE, FREE,
    LIBRE?!
    LIBRE?!
    LIBRE?!
    LIBRE?!
    LIBRE?!
    FREE OR FREE
    FREE OR FREE
    FREE OR FREE
    FREE OR FREE
    FREE OR FREE
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  14. Source: @GithubProjects
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  15. Picture by dave_7 - CC BY-SA 2.0
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  16. Picture by Peter Hamer - Public Domain
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  17. Picture by Sam Williams - Taken from the cover of the O'Reilly book "Free as in Freedom"
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  18. Picture by unknown photographer for linuxmag.com - CC BY-SA 3.0
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  19. ONCE UPON A TIME...
    ONCE UPON A TIME...
    ONCE UPON A TIME...
    ONCE UPON A TIME...
    ONCE UPON A TIME...
    (Any resemblance to real persons or other real-life entities is
    purely coincidental.)
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  20. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  21. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  22. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  23. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  24. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  25. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  26. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  27. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  28. #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  29. FIVE WAYS TO SLOW
    FIVE WAYS TO SLOW
    FIVE WAYS TO SLOW
    FIVE WAYS TO SLOW
    FIVE WAYS TO SLOW
    DOWN
    DOWN
    DOWN
    DOWN
    DOWN
    ⚠ DON'T TRY THIS AT HOME OR AT
    ⚠ DON'T TRY THIS AT HOME OR AT
    ⚠ DON'T TRY THIS AT HOME OR AT
    ⚠ DON'T TRY THIS AT HOME OR AT
    ⚠ DON'T TRY THIS AT HOME OR AT
    WORK
    WORK
    WORK
    WORK
    WORK
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  30. ⚠ 1. TREAT COMMUNITY AS VENDOR
    ⚠ 1. TREAT COMMUNITY AS VENDOR
    ⚠ 1. TREAT COMMUNITY AS VENDOR
    ⚠ 1. TREAT COMMUNITY AS VENDOR
    ⚠ 1. TREAT COMMUNITY AS VENDOR
    Remember, it's free , after all!
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  31. ⚠ 2. JUST COPY AND ALTER THEIR
    ⚠ 2. JUST COPY AND ALTER THEIR
    ⚠ 2. JUST COPY AND ALTER THEIR
    ⚠ 2. JUST COPY AND ALTER THEIR
    ⚠ 2. JUST COPY AND ALTER THEIR
    CODE
    CODE
    CODE
    CODE
    CODE
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  32. ⚠ 3. WORK AROUND ISSUES
    ⚠ 3. WORK AROUND ISSUES
    ⚠ 3. WORK AROUND ISSUES
    ⚠ 3. WORK AROUND ISSUES
    ⚠ 3. WORK AROUND ISSUES
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  33. ⚠ 4. IT WORKS — DON'T TOUCH IT
    ⚠ 4. IT WORKS — DON'T TOUCH IT
    ⚠ 4. IT WORKS — DON'T TOUCH IT
    ⚠ 4. IT WORKS — DON'T TOUCH IT
    ⚠ 4. IT WORKS — DON'T TOUCH IT
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  34. ⚠ 5. FOLLOW THE TUTORIAL
    ⚠ 5. FOLLOW THE TUTORIAL
    ⚠ 5. FOLLOW THE TUTORIAL
    ⚠ 5. FOLLOW THE TUTORIAL
    ⚠ 5. FOLLOW THE TUTORIAL
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  35. SO, THEN WHAT...?
    SO, THEN WHAT...?
    SO, THEN WHAT...?
    SO, THEN WHAT...?
    SO, THEN WHAT...?
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide





  36. ✅ COLLABORATE
    COLLABORATE
    COLLABORATE
    COLLABORATE
    COLLABORATE WITH THE
    WITH THE
    WITH THE
    WITH THE
    WITH THE
    COMMUNITY
    COMMUNITY
    COMMUNITY
    COMMUNITY
    COMMUNITY
    δ contribute
    buy
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  37. (Follow on Twitter!)
    @GeertjanW
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  38. ✅ USE
    ✅ USE
    ✅ USE
    ✅ USE
    ✅ USE DEPENDENCY MANAGEMENT
    DEPENDENCY MANAGEMENT
    DEPENDENCY MANAGEMENT
    DEPENDENCY MANAGEMENT
    DEPENDENCY MANAGEMENT
    Even if it's not Apache Maven
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide





  39. ✅ CONTRIBUTE
    CONTRIBUTE
    CONTRIBUTE
    CONTRIBUTE
    CONTRIBUTE: REPORT ISSUES,
    : REPORT ISSUES,
    : REPORT ISSUES,
    : REPORT ISSUES,
    : REPORT ISSUES,
    SUBMIT PATCHES
    SUBMIT PATCHES
    SUBMIT PATCHES
    SUBMIT PATCHES
    SUBMIT PATCHES
    report
    δ x, create, document
    test
    Bonus points for including a .
    minimum reproduction
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide





  40. ✅ REVIEW
    REVIEW
    REVIEW
    REVIEW
    REVIEW: REVISIT CODE, UPDATE
    : REVISIT CODE, UPDATE
    : REVISIT CODE, UPDATE
    : REVISIT CODE, UPDATE
    : REVISIT CODE, UPDATE
    DEPENDENCIES
    DEPENDENCIES
    DEPENDENCIES
    DEPENDENCIES
    DEPENDENCIES
    ... and automate the h*ck out of it with Renovate, Dependabot or
    what not.
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide





  41. ✅ UNDERSTAND
    UNDERSTAND
    UNDERSTAND
    UNDERSTAND
    UNDERSTAND THE PRODUCT
    THE PRODUCT
    THE PRODUCT
    THE PRODUCT
    THE PRODUCT
    YOU'RE USING
    YOU'RE USING
    YOU'RE USING
    YOU'RE USING
    YOU'RE USING
    Yes, actually read that ne manual!
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  42. WRAPPING UP
    WRAPPING UP
    WRAPPING UP
    WRAPPING UP
    WRAPPING UP
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  43. Picture by wyke2207
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  44. Picture by Jan Derk Remmers - CC BY-SA 4.0
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide

  45. 1.
    ✅ Collaborate with the community
    2.
    ✅ Use dependency management
    3.
    ✅ Contribute: report issues, submit patches
    4.
    ✅ Review: revisit code, update dependencies
    5.
    ✅ Understand the product you're using
    DON'T ASK WHAT OPEN SOURCE CAN DO FOR
    YOU
    — ASK WHAT YOU CAN DO FOR OPEN SOURCE!
    #OpenSourceSlowDown Maarten Mulders (@mthmulders)

    View full-size slide