open source responsibly

123
Open source responsibly It takes less time than you think sábado, 28 de septiembre de 13

Upload: michael-klishin

Post on 10-May-2015

107 views

Category:

Technology


2 download

DESCRIPTION

As open source ecosystem grows exponentially, there are orders of magnitude more people who consume open source. It's time to discuss what it means to maintain an open source project in a responsible manner.

TRANSCRIPT

Page 1: Open source responsibly

Open source responsibly

It takes less time than you think

sábado, 28 de septiembre de 13

Page 2: Open source responsibly

About me

sábado, 28 de septiembre de 13

Page 3: Open source responsibly

About me

@michaelklishin

sábado, 28 de septiembre de 13

Page 4: Open source responsibly

About me

sábado, 28 de septiembre de 13

Page 5: Open source responsibly

About me

clojurewerkz.org

sábado, 28 de septiembre de 13

Page 6: Open source responsibly

About me

Ex-Travis CI core

sábado, 28 de septiembre de 13

Page 7: Open source responsibly

About me

sábado, 28 de septiembre de 13

Page 8: Open source responsibly

About medata processing

and analytics

sábado, 28 de septiembre de 13

Page 9: Open source responsibly

About medozen of programming

languages, <3 ƛ

sábado, 28 de septiembre de 13

Page 10: Open source responsibly

About merecognized animated

gifs expert

sábado, 28 de septiembre de 13

Page 11: Open source responsibly

About this talk

sábado, 28 de septiembre de 13

Page 12: Open source responsibly

sábado, 28 de septiembre de 13

Page 13: Open source responsibly

sábado, 28 de septiembre de 13

Page 14: Open source responsibly

sábado, 28 de septiembre de 13

Page 15: Open source responsibly

More open source producers

sábado, 28 de septiembre de 13

Page 16: Open source responsibly

Many more open source consumers

sábado, 28 de septiembre de 13

Page 17: Open source responsibly

Responsibility

sábado, 28 de septiembre de 13

Page 18: Open source responsibly

responsibility |riˌspänsəәˈbiləәtē|noun ( pl. responsibilities )the state or fact of having a duty to deal with something or of having control over someone

sábado, 28 de septiembre de 13

Page 19: Open source responsibly

You develop a library…

sábado, 28 de septiembre de 13

Page 20: Open source responsibly

Someone starts using it…

sábado, 28 de septiembre de 13

Page 21: Open source responsibly

sábado, 28 de septiembre de 13

Page 22: Open source responsibly

It changes over time…

sábado, 28 de septiembre de 13

Page 23: Open source responsibly

Responsible maintainermakes sure the users

aren’t angry

sábado, 28 de septiembre de 13

Page 24: Open source responsibly

sábado, 28 de septiembre de 13

Page 25: Open source responsibly

sábado, 28 de septiembre de 13

Page 26: Open source responsibly

Why can they be angry?

sábado, 28 de septiembre de 13

Page 27: Open source responsibly

•Incorrect expectations/assumptions

sábado, 28 de septiembre de 13

Page 28: Open source responsibly

•Incorrect expectations/assumptions

•Unexpected changes

sábado, 28 de septiembre de 13

Page 29: Open source responsibly

•Unexpected changes

•Nobody to help

sábado, 28 de septiembre de 13

Page 30: Open source responsibly

•Unexpected changes

•Nobody to help

•Too hard to contribute

sábado, 28 de septiembre de 13

Page 31: Open source responsibly

•Unexpected changes

•Nobody to help

•Too hard to contribute

•Maintainer is an a-hole

sábado, 28 de septiembre de 13

Page 32: Open source responsibly

Free as in “Fuck you,I don’t owe you anything!”

sábado, 28 de septiembre de 13

Page 33: Open source responsibly

Solvable?

sábado, 28 de septiembre de 13

Page 34: Open source responsibly

Have a helpful README

sábado, 28 de septiembre de 13

Page 35: Open source responsibly

sábado, 28 de septiembre de 13

Page 36: Open source responsibly

What does this thing do?

sábado, 28 de septiembre de 13

Page 37: Open source responsibly

How mature is it?

sábado, 28 de septiembre de 13

Page 38: Open source responsibly

How do I install it?

sábado, 28 de septiembre de 13

Page 39: Open source responsibly

What runtimes and/orversions are supported?

sábado, 28 de septiembre de 13

Page 40: Open source responsibly

What license does it use?

sábado, 28 de septiembre de 13

Page 41: Open source responsibly

Where can I get help?

sábado, 28 de septiembre de 13

Page 42: Open source responsibly

Have a mailing list

sábado, 28 de septiembre de 13

Page 43: Open source responsibly

Let community membershelp you help your users

sábado, 28 de septiembre de 13

Page 44: Open source responsibly

Have an IRC channel

sábado, 28 de septiembre de 13

Page 45: Open source responsibly

Helping others earnstheir respect

sábado, 28 de septiembre de 13

Page 46: Open source responsibly

Keep a change log

sábado, 28 de septiembre de 13

Page 47: Open source responsibly

Keep a useful change log

sábado, 28 de septiembre de 13

Page 48: Open source responsibly

No, git log is not a change log

sábado, 28 de septiembre de 13

Page 49: Open source responsibly

sábado, 28 de septiembre de 13

Page 50: Open source responsibly

Do you write brilliantlydetailed commit messages?

sábado, 28 de septiembre de 13

Page 51: Open source responsibly

Do you have incrediblediscipline?

sábado, 28 de septiembre de 13

Page 52: Open source responsibly

git log is often hard to interpretfor project outsiders

sábado, 28 de septiembre de 13

Page 53: Open source responsibly

Provide details for humans

sábado, 28 de septiembre de 13

Page 54: Open source responsibly

Developer vs. Ops

sábado, 28 de septiembre de 13

Page 55: Open source responsibly

What’s new?

Developer

sábado, 28 de septiembre de 13

Page 56: Open source responsibly

How do I use it?

Developer

sábado, 28 de septiembre de 13

Page 57: Open source responsibly

Will my code break?

Developer

sábado, 28 de septiembre de 13

Page 58: Open source responsibly

Why was it added?

Developer

sábado, 28 de septiembre de 13

Page 59: Open source responsibly

Ops

sábado, 28 de septiembre de 13

Page 60: Open source responsibly

What has changed?

Ops

sábado, 28 de septiembre de 13

Page 61: Open source responsibly

Will my shit break?

Ops

sábado, 28 de septiembre de 13

Page 62: Open source responsibly

How do I upgrade?

Ops

sábado, 28 de septiembre de 13

Page 63: Open source responsibly

Is it urgent to upgrade?

Ops

sábado, 28 de septiembre de 13

Page 64: Open source responsibly

Post release announcements

sábado, 28 de septiembre de 13

Page 65: Open source responsibly

Have a project blog

sábado, 28 de septiembre de 13

Page 66: Open source responsibly

Have a Twitter account

sábado, 28 de septiembre de 13

Page 67: Open source responsibly

Care about backwards compatibility

sábado, 28 de septiembre de 13

Page 68: Open source responsibly

It’s that thing thatJava people do

sábado, 28 de septiembre de 13

Page 69: Open source responsibly

It prevents…

sábado, 28 de septiembre de 13

Page 70: Open source responsibly

sábado, 28 de septiembre de 13

Page 71: Open source responsibly

sábado, 28 de septiembre de 13

Page 72: Open source responsibly

Document well

sábado, 28 de septiembre de 13

Page 73: Open source responsibly

sábado, 28 de septiembre de 13

Page 74: Open source responsibly

sábado, 28 de septiembre de 13

Page 75: Open source responsibly

“My favorite part about ClojureWerkzis documentation…”

sábado, 28 de septiembre de 13

Page 76: Open source responsibly

Documentation breeds trust

sábado, 28 de septiembre de 13

Page 77: Open source responsibly

sábado, 28 de septiembre de 13

Page 78: Open source responsibly

sábado, 28 de septiembre de 13

Page 79: Open source responsibly

Make it easy to contribute

sábado, 28 de septiembre de 13

Page 80: Open source responsibly

Fuck paper contributoragreements

sábado, 28 de septiembre de 13

Page 81: Open source responsibly

Explain the basics ofdevelopment process

sábado, 28 de septiembre de 13

Page 82: Open source responsibly

e.g. “we develop shit onthe develop branch, masteris for stable releases only”

sábado, 28 de septiembre de 13

Page 83: Open source responsibly

Explain how to install & rundependencies

sábado, 28 de septiembre de 13

Page 84: Open source responsibly

travis-ci.org or GTFO

sábado, 28 de septiembre de 13

Page 85: Open source responsibly

Worst case scenario I cansniff your .travis.yml

sábado, 28 de septiembre de 13

Page 86: Open source responsibly

sábado, 28 de septiembre de 13

Page 87: Open source responsibly

Help beginners help you

sábado, 28 de septiembre de 13

Page 88: Open source responsibly

sábado, 28 de septiembre de 13

Page 89: Open source responsibly

sábado, 28 de septiembre de 13

Page 90: Open source responsibly

sábado, 28 de septiembre de 13

Page 91: Open source responsibly

sábado, 28 de septiembre de 13

Page 92: Open source responsibly

Don’t be an asshole

sábado, 28 de septiembre de 13

Page 93: Open source responsibly

You never know whothe contributor is

sábado, 28 de septiembre de 13

Page 94: Open source responsibly

sábado, 28 de septiembre de 13

Page 95: Open source responsibly

sábado, 28 de septiembre de 13

Page 96: Open source responsibly

“But what if I’m no longer interestedin maintaining X?”

sábado, 28 de septiembre de 13

Page 97: Open source responsibly

Pass it on

sábado, 28 de septiembre de 13

Page 98: Open source responsibly

sábado, 28 de septiembre de 13

Page 99: Open source responsibly

No matter what you do,don’t release abandonware

sábado, 28 de septiembre de 13

Page 100: Open source responsibly

”But who cares, it’s not my problem what the users will do”

sábado, 28 de septiembre de 13

Page 101: Open source responsibly

Fair enough

sábado, 28 de septiembre de 13

Page 102: Open source responsibly

But it’s your reputation

sábado, 28 de septiembre de 13

Page 103: Open source responsibly

sábado, 28 de septiembre de 13

Page 104: Open source responsibly

“It sounds too fucking hard”

sábado, 28 de septiembre de 13

Page 105: Open source responsibly

sábado, 28 de septiembre de 13

Page 106: Open source responsibly

“Dafuq is open source?”

sábado, 28 de septiembre de 13

Page 107: Open source responsibly

“You are not getting paid for it?”

sábado, 28 de septiembre de 13

Page 108: Open source responsibly

sábado, 28 de septiembre de 13

Page 109: Open source responsibly

sábado, 28 de septiembre de 13

Page 110: Open source responsibly

Open source is one of the bestways to market yourself

as an engineer

sábado, 28 de septiembre de 13

Page 111: Open source responsibly

sábado, 28 de septiembre de 13

Page 112: Open source responsibly

How do you even find time?

sábado, 28 de septiembre de 13

Page 113: Open source responsibly

Standardize

sábado, 28 de septiembre de 13

Page 114: Open source responsibly

sábado, 28 de septiembre de 13

Page 115: Open source responsibly

• Standard README

sábado, 28 de septiembre de 13

Page 116: Open source responsibly

• Standard README

• Standard change log format

sábado, 28 de septiembre de 13

Page 117: Open source responsibly

• Standard README

• Standard change log format

• Standard announcement blog posts

sábado, 28 de septiembre de 13

Page 118: Open source responsibly

• Standard README

• Standard change log format

• Standard announcement blog posts

• Standard library template (e.g. with Leiningen)

sábado, 28 de septiembre de 13

Page 119: Open source responsibly

Automate

sábado, 28 de septiembre de 13

Page 120: Open source responsibly

Engage contributors

sábado, 28 de septiembre de 13

Page 121: Open source responsibly

sábado, 28 de septiembre de 13

Page 122: Open source responsibly

Thank you

sábado, 28 de septiembre de 13

Page 123: Open source responsibly

@michaelklishinclojurewerkz.org

sábado, 28 de septiembre de 13