Getting started with Open Source

A presentation at Hacktoberfest CONTRIBUTING.md in October 2020 in by Sasha Czarkowski (Rosenbaum)

Slide 1

Slide 1

Slide 2

Slide 2

Dev Ops Architect Product Manager Microsoft => GitHub @DivineOps

Slide 3

Slide 3

@DivineOps What is Open Source?

Slide 4

Slide 4

Open-source software (OSS) A type of computer software in which the source code is released under a permissive license allowing users the rights to use, study, change, and distribute the software to anyone and for any purpose.

Slide 5

Slide 5

https://choosealicense.com/

Slide 6

Slide 6

Slide 7

Slide 7

@DivineOps Why should you contribute to Open Source?

Slide 8

Slide 8

“Software is Eating the World.” - Marc Andreessen

Slide 9

Slide 9

“Linux is a Cancer.” - Steve Ballmer

Slide 10

Slide 10

Slide 11

Slide 11

Open source software in the Enterprise New Code 99% of organizations make extensive use of open source Inner Source 90% of new application development leverages open source software. Source: Forrester Wave Software Composition Analysis 2017 Open Source New Application Code

Slide 12

Slide 12

@DivineOps Benefits

Slide 13

Slide 13

Gain professional experience

Slide 14

Slide 14

Slide 15

Slide 15

Build relationships

Slide 16

Slide 16

Slide 17

Slide 17

Slide 18

Slide 18

Slide 19

Slide 19

Choose your path

Slide 20

Slide 20

Choose your own adventure

Slide 21

Slide 21

Slide 22

Slide 22

@DivineOps Drawbacks

Slide 23

Slide 23

No official onboarding

Slide 24

Slide 24

Unintentional gate keeping

Slide 25

Slide 25

Slide 26

Slide 26

Slide 27

Slide 27

https://github.com/rapid7/metasploit-framework/blob/master/CODE_OF_CONDUCT.md

Slide 28

Slide 28

Don’t be a jerk Open source maintainers don’t owe you anything

Slide 29

Slide 29

@DivineOps Choosing a project

Slide 30

Slide 30

Not Kubernetes

Slide 31

Slide 31

Slide 32

Slide 32

  1. A technology you want to gain experience with 2. A community where you can make a meaningful impact

Slide 33

Slide 33

@DivineOps Getting started

Slide 34

Slide 34

Who do I talk to? What do I work on? How do I work on this?

Slide 35

Slide 35

Who do I talk to?

Slide 36

Slide 36

Slide 37

Slide 37

What do I work on?

Slide 38

Slide 38

CONTRIBUTING.md

Slide 39

Slide 39

https://github.com/DivineOps/kubeflow-and-mlops/contribute

Slide 40

Slide 40

https://github.com/tensorflow/tensorflow/contribute

Slide 41

Slide 41

How do I work on this?

Slide 42

Slide 42

https://www.gatsbyjs.org/contributing/how-to-contribute/

Slide 43

Slide 43

https://www.gatsbyjs.org/contributing/how-to-contribute/

Slide 44

Slide 44

@DivineOps Contribution != Code

Slide 45

Slide 45

Documentation Documentation is a love letter that you write to your future self - Damian Conway

Slide 46

Slide 46

Project management

Slide 47

Slide 47

https://github.com/expressjs/express/blob/master/Triager-Guide.md

Slide 48

Slide 48

It is not all about PRs!

Slide 49

Slide 49

Code

Slide 50

Slide 50

Contribution Funnel CONSUME Use, fork, follow, favorite CONTRIBUTE CODE Bug fixes, tests, new features MAINTAIN Influence project direction Review code Welcome new contributors CONTRIBUTE TIME Log bugs, add documentation

Slide 51

Slide 51

Slide 52

Slide 52

Hacktoberfest

Slide 53

Slide 53

https://hacktoberfest.digitalocean.com/

Slide 54

Slide 54

@DivineOps Meaningful contributions, NOT spam!

Slide 55

Slide 55

Slide 56

Slide 56

Slide 57

Slide 57

@DivineOps Other ways to support the OSS community

Slide 58

Slide 58

GitHub Sponsors Directly help fund the success of the projects in your supply chain

Slide 59

Slide 59

https://github.com/sponsors

Slide 60

Slide 60

Slide 61

Slide 61

Slide 62

Slide 62

Stay Safe!

Slide 63

Slide 63

Thank you! @DivineOps