Slide 1

Slide 1 text

OPEN SOURCE SURVIVAL GUIDE @blowmage Presents…

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

:mlpbeer:

Slide 6

Slide 6 text

AND NOW FOR SOMETHING COMPLETELY DIFFERENT

Slide 7

Slide 7 text

18 MONTHS

Slide 8

Slide 8 text

FULL TIME

Slide 9

Slide 9 text

OPEN SOURCE

Slide 10

Slide 10 text

AMA

Slide 11

Slide 11 text

OPEN SOURCE SURVIVAL GUIDE HOW DID YOU GET THAT GIG? Inquisitive Ruby on Ales Attendee I HAVE GOOD FRIENDS WHO HELP ME. Mike Moore, Super Lucky

Slide 12

Slide 12 text

OPEN SOURCE SURVIVAL GUIDE WHY IS YOUR BEARD SO MAGNIFICENT? Salt of the Earth Ruby on Ales Attendee I USE BEARD OIL AND COMB IT OFTEN. Mike Moore, Beard of Destiny

Slide 13

Slide 13 text

3 TYPES OF OPEN SOURCE USERS

Slide 14

Slide 14 text

OPEN SOURCE SURVIVAL GUIDE 3 TYPES OF OPEN SOURCE USERS Maintainers Collaborators Consumers

Slide 15

Slide 15 text

DREYFUS MODEL OF SKILL ACQUISITION

Slide 16

Slide 16 text

Mastery Expertise Proficiency Competence Novice OPEN SOURCE SURVIVAL GUIDE DREYFUS MODEL OF SKILL ACQUISITION

Slide 17

Slide 17 text

OPEN SOURCE SURVIVAL GUIDE LEVEL 1: NOVICE Rigid adherence to taught rules or plans No exercise of "discretionary judgment"

Slide 18

Slide 18 text

OPEN SOURCE SURVIVAL GUIDE LEVEL 2: COMPETENCE Limited "situational perception" All aspects of work treated separately with equal importance

Slide 19

Slide 19 text

OPEN SOURCE SURVIVAL GUIDE LEVEL 3: PROFICIENCY “Coping with crowdedness" (multiple activities, accumulation of information) Some perception of actions in relation to goals Deliberate planning Formulates routines

Slide 20

Slide 20 text

OPEN SOURCE SURVIVAL GUIDE LEVEL 4: EXPERTISE Holistic view of situation Prioritizes importance of aspects "Perceives deviations from the normal pattern" Employs maxims for guidance, with meanings that adapt to the situation at hand

Slide 21

Slide 21 text

OPEN SOURCE SURVIVAL GUIDE LEVEL 5: MASTERY Transcends reliance on rules, guidelines, and maxims "Intuitive grasp of situations based on deep, tacit understanding" Has "vision of what is possible" Uses "analytical approaches" in new situations or in case of problems

Slide 22

Slide 22 text

PRAGMATIC THINKING AND LEARNING BY ANDY HUNT

Slide 23

Slide 23 text

AMA

Slide 24

Slide 24 text

OPEN SOURCE SURVIVAL GUIDE 3 TYPES OF OPEN SOURCE USERS Maintainers Collaborators Consumers

Slide 25

Slide 25 text

DOCUMENTATION

Slide 26

Slide 26 text

THE ABSENCE OF A PROGRESSIVE, SMOOTH LEARNING RESOURCE THAT HAS NO SUDDEN JUMPS IN COMPLEXITY. Chris Smith OPEN SOURCE SURVIVAL GUIDE

Slide 27

Slide 27 text

IF THE DOCUMENTATION IS BAD OR PARTIALLY COMPLETE IT CAN BE TOUGH TO UNDERSTAND OR IMPLEMENT. Joshua Richardson OPEN SOURCE SURVIVAL GUIDE

Slide 28

Slide 28 text

I KEEP HEARING I SHOULD START WITH SUPPLEMENTING THE DOCUMENTATION, BUT HOW DOES THIS EVEN WORK? Barrett Clark OPEN SOURCE SURVIVAL GUIDE

Slide 29

Slide 29 text

YOU FIND THE RIGHT SOLUTION BUT IT ISNT DOCUMENTED WELL ENOUGH TO UNDERSTAND. Todd Resudek OPEN SOURCE SURVIVAL GUIDE

Slide 30

Slide 30 text

SOMETIMES THE DOCUMENTATION ASSUMES A CERTAIN LEVEL OF KNOWLEDGE. I WOULD LIKE TO SEE MORE HOW-TOS AND STEP-BY-STEP EXAMPLES. Tad Thorley OPEN SOURCE SURVIVAL GUIDE

Slide 31

Slide 31 text

LACK OF SUPPORT AND DOCUMENTATION. Jon Jensen OPEN SOURCE SURVIVAL GUIDE

Slide 32

Slide 32 text

FINDING DOCUMENTATION NOT WRITTEN BY EXPERTS WHO ASSUME CONTEXT THEY DON'T HAVE. Sarah Mei OPEN SOURCE SURVIVAL GUIDE

Slide 33

Slide 33 text

PEOPLE WHO ARE BIG NAMES IN OPEN SOURCE AND WHO YOU LOOKED UP TO TREATING YOU LIKE CRAP. Hsing-Hui Hsu OPEN SOURCE SURVIVAL GUIDE

Slide 34

Slide 34 text

OPEN SOURCE SURVIVAL GUIDE DOCUMENTATION Finding Documentation GitHub Page RubyDocs.info Reading Source Code

Slide 35

Slide 35 text

OPEN SOURCE SURVIVAL GUIDE TYPES OF DOCUMENTATION Code Documentation Method descriptions Method arguments Method example code

Slide 36

Slide 36 text

OPEN SOURCE SURVIVAL GUIDE TYPES OF DOCUMENTATION Library Guides README Tutorials, step-by-step instructions Screencasts Books

Slide 37

Slide 37 text

OPEN SOURCE SURVIVAL GUIDE README What the library does and does not Simple code example How to install the library Where to find code documentation Where to find guide documentation

Slide 38

Slide 38 text

THIS IS HARD

Slide 39

Slide 39 text

EMPATH

Slide 40

Slide 40 text

OPPORTUNITY

Slide 41

Slide 41 text

AMA

Slide 42

Slide 42 text

OPEN SOURCE SURVIVAL GUIDE 3 TYPES OF OPEN SOURCE USERS Maintainers Collaborators Consumers

Slide 43

Slide 43 text

CONTRIBUTING

Slide 44

Slide 44 text

OPEN SOURCE SURVIVAL GUIDE TYPES OF CONTRIBUTIONS Code Documentation Organization Software User Groups Conferences

Slide 45

Slide 45 text

OPEN SOURCE SURVIVAL GUIDE TYPES OF CONTRIBUTIONS Code - Maintainers, Collaborators Documentation - Maintainers, Collaborators, Consumers Organization - Maintainers, Collaborators, Consumers Software User Groups Conferences

Slide 46

Slide 46 text

OPEN SOURCE SURVIVAL GUIDE ENCOURAGING FIRST-TIME CONTRIBUTIONS CONTRIBUTING Setting up developer environment Contacting Maintainers (IRC, Gittter, Mailing List, etc.) Running Tests Code Conventions

Slide 47

Slide 47 text

OPEN SOURCE SURVIVAL GUIDE AUTOMATING CONTRIBUTIONS Rubocop Automated Build (Travis-CI, Circle CI, etc.) First-time Issue Labels (easy, first time, help wanted, etc.) Vagrant

Slide 48

Slide 48 text

AMA

Slide 49

Slide 49 text

OPEN SOURCE SURVIVAL GUIDE 3 TYPES OF OPEN SOURCE USERS Maintainers Collaborators Consumers

Slide 50

Slide 50 text

SURVIVING

Slide 51

Slide 51 text

USER GROUPS

Slide 52

Slide 52 text

I FOUNDED AND ORGANIZE A MEETUP SPECIFICALLY DESIGNED TO CREATE A WELCOMING ENVIRONMENT. Hsing-Hui Hsu OPEN SOURCE SURVIVAL GUIDE

Slide 53

Slide 53 text

OPEN SOURCE SURVIVAL GUIDE SURVIVING WITH HELP FROM USER GROUPS Simply be active in a User Group! Find a Beginner-friendly User Group Start a Beginner-friendly User Group Help Organize a User Group “My First Pull Request” Night

Slide 54

Slide 54 text

I DON'T KNOW THAT YOU CAN LEARN A LOT ABOUT THIS BEFOREHAND. A LOT OF OPEN SOURCE KNOWLEDGE COMES FROM JUST CONTRIBUTING. YOU WILL MAKE MISTAKES. YOU WILL GET FRUSTRATED. IT IS NOT EASY... Eileen Uchitelle OPEN SOURCE SURVIVAL GUIDE

Slide 55

Slide 55 text

BUT, IF YOU REMEMBER THAT EVERYONE IS HUMAN AND TREAT THEM AS SUCH, APOLOGIZE WHEN NECESSARY, AND WRITE GOOD EXPLANATIONS (AND COMMIT MESSAGES!) YOU WILL LEARN SO MUCH FROM CONTRIBUTING TO OSS. Eileen Uchitelle OPEN SOURCE SURVIVAL GUIDE

Slide 56

Slide 56 text

COMMUNICATION

Slide 57

Slide 57 text

LEARNING TO COMMUNICATE "REMOTELY". WE'RE SO USED TO WORKING RIGHT WITH THE PEOPLE WHO WROTE THE PREVIOUS CODE IN OUR APPS IT CAN BE HARD TO ADJUST YOUR WRITING STRUCTURE AND TONE… Eileen Uchitelle OPEN SOURCE SURVIVAL GUIDE

Slide 58

Slide 58 text

FOR COMMUNICATING WITH SOMEONE A) YOU DON'T KNOW AND B) THROUGH TEXT. ADDITIONALLY, EMOTIONAL INTELLIGENCE IS VERY IMPORTANT TO COMMUNICATING EFFECTIVELY… Eileen Uchitelle OPEN SOURCE SURVIVAL GUIDE

Slide 59

Slide 59 text

DON'T BLAME OR HARASS MAINTAINERS FOR PROBLEMS, INSTEAD HELP THEM FIX IT. Eileen Uchitelle OPEN SOURCE SURVIVAL GUIDE

Slide 60

Slide 60 text

“THE BOX”

Slide 61

Slide 61 text

LEADERSHIP AND SELF-DECEPTION THE ABRIDGER INSTITUTE

Slide 62

Slide 62 text

SELF-DECEPTION

Slide 63

Slide 63 text

“EXPERIENCING OTHER PEOPLE OR CIRCUMSTANCES AS HAVING MORE POWER OVER OUR OWN HAPPINESS THAN WE DO.”

Slide 64

Slide 64 text

I'M SORRY YOU FEEL THAT WAY. Mike Moore, Professional Idiot OPEN SOURCE SURVIVAL GUIDE

Slide 65

Slide 65 text

STORY TIME

Slide 66

Slide 66 text

JUSTIFICATION IS THE ADULT VERSION OF BLAMING OTHERS

Slide 67

Slide 67 text

OBJECTS

Slide 68

Slide 68 text

No content

Slide 69

Slide 69 text

WHEN SOMEONE WE HAVE BEEN BLAMING BECOMES REAL TO US, WE CHANGE. WE BECOME A PERSON WHO SEES ANOTHER PERSON AS REAL. WE CHANGE FROM BEING ACCUSING, GUARDED, AND SELF-ABSORBED TO BEING OPEN, SELF-FORGETFUL, AND WELCOMING. Terry Warner OPEN SOURCE SURVIVAL GUIDE

Slide 70

Slide 70 text

TIME MACHINE

Slide 71

Slide 71 text

THE RECONSIDERATION EXERCISE

Slide 72

Slide 72 text

No content

Slide 73

Slide 73 text

COOPERATIVE GAME

Slide 74

Slide 74 text

AMA

Slide 75

Slide 75 text

No content

Slide 76

Slide 76 text

No content

Slide 77

Slide 77 text

No content

Slide 78

Slide 78 text

No content

Slide 79

Slide 79 text

No content

Slide 80

Slide 80 text

No content

Slide 81

Slide 81 text

No content

Slide 82

Slide 82 text

THANK YOU!