40
Creating an Open Source Oce Lessons from Twitter Welcome

Creating an Open Source Office: Lessons from Twitter

Embed Size (px)

Citation preview

Page 1: Creating an Open Source Office: Lessons from Twitter

Creating an Open Source Office

Lessons from Twitter

Welcome

Page 2: Creating an Open Source Office: Lessons from Twitter

CHRIS ANISZCZYKHead of Open Source #OSCON

@cra

Page 3: Creating an Open Source Office: Lessons from Twitter

#AGENDA

•The Rise of Open Source [Offices] •Building an Open Source Office at Twitter•Projects and Lessons Learned•Concluding Thoughts•Q&A

Page 4: Creating an Open Source Office: Lessons from Twitter

SOFTWARE IS EATING THE WORLD

http://www.wsj.com/articles/SB10001424053111903480904576512250915629460

Page 5: Creating an Open Source Office: Lessons from Twitter

OPEN SOURCE IS EATING THE WORLD

http://www4.mercedes-benz.com/manual-cars/ba/foss/content/en/assets/FOSS_licences.pdf iOS: General->About->Legal->Legal Notices

“78% of companies are using open source software…”“63% of companies are participating in open source…”

https://www.blackducksoftware.com/future-of-open-sourcehttp://www.teslamotors.com/blog/all-our-patent-are-belong-you

Page 6: Creating an Open Source Office: Lessons from Twitter

COMPANIES FORMING OPEN SOURCE GROUPS

•Google: https://developers.google.com/open-source/ ‣ “…tasked with maintaining a healthy relationship with the open source software

development community" •Intel: https://01.org/

‣ “…international team dedicated to working within open communities.” •Samsung: http://commit101.org/

‣ “The Open Source Group was formed in 2013 to do the following: Help guide the company in effective consumption, collaboration, and development of open source software. Provide advocacy on behalf of Samsung in external open source communities. Develop consistent open source strategy and governance policies for the enterprise at large.”

•Microsoft: https://microsoft.com/opensource ‣ “Microsoft’s commitment to openness and collaboration is ingrained… These

collaborations have enabled new scenarios for customers and partners to take open source software and integrate it with a Microsoft platform.”

‣ http://todogroup.org/blog/why-we-run-an-open-source-program-microsoft/

Page 7: Creating an Open Source Office: Lessons from Twitter

STARTUPS* EVEN FORMING OPEN SOURCE GROUPS!

•Box: http://opensource.box.com/ ‣ http://todogroup.org/blog/creating-an-open-source-office-box/ ‣ “we give back to the open source community whenever possible, by contributing

code to outside projects and sharing projects that we've developed internally” •Dropbox: https://opensource.dropbox.com/

‣ “Dropbox loves open source! We participate in the open source community by using open source software internally and open sourcing our own projects”

•Facebook: https://code.facebook.com/opensource ‣ “…we’re keen users and publishers of open software. We'll keep you up-to-date

with our new projects and releases…” •GitHub:

‣ http://todogroup.org/blog/why-we-run-an-open-source-program-github •Twitter:

‣ http://todogroup.org/blog/why-we-run-an-open-source-program-twitter/

Page 8: Creating an Open Source Office: Lessons from Twitter

#AGENDA

•The Rise of Open Source •Building an Open Source Office at Twitter•Projects and Lessons Learned•Concluding Thoughts•Q&A

Page 9: Creating an Open Source Office: Lessons from Twitter

BUILT ON OPEN SOURCE PRETTY MUCH SINCE DAY 1*

https://blog.twitter.com/2009/building-open-source

Page 10: Creating an Open Source Office: Lessons from Twitter

HackPrinceton - November 14-16, 2014@TwitterAds | Confidential

300M+

500M+

80%

Active users

Tweets / Day

of users aremobile users

2006 2015

~4000Employees

Page 11: Creating an Open Source Office: Lessons from Twitter

SCALING ENGINEERING WITH OPEN SOURCE?

Page 12: Creating an Open Source Office: Lessons from Twitter
Page 13: Creating an Open Source Office: Lessons from Twitter

SPEED AND MINIMUM VIABLE BUREAUCRACY

•Make the open source process pleasurable, efficient and protect the company •Build community in critical projects •Training / culture are everything •We serve our engineers

Page 14: Creating an Open Source Office: Lessons from Twitter

#AGENDA

•The Rise of Open Source •Building an Open Source Office at Twitter•Projects and Lessons Learned•Concluding Thoughts•Q&A

Page 15: Creating an Open Source Office: Lessons from Twitter

LESSONS FROM BOOTSTRAP

http://getbootstrap.com/

Page 16: Creating an Open Source Office: Lessons from Twitter

CHOOSE YOUR LICENSES DILIGENTLY

•Needed to migrate Apache License v2.0 to MIT License

•Get your license right from the start or go more permissive

https://github.com/twbs/bootstrap/issues/2054

Page 17: Creating an Open Source Office: Lessons from Twitter

BLACK SWANS CAN HAPPEN

•Hard to anticipate the success of a project…

•Always ensure engineers have time to manage projects…

https://github.com/search?l=&o=desc&q=stars%3A%3E1&ref=advsearch&s=stars&type=Repositories

Page 18: Creating an Open Source Office: Lessons from Twitter

IF YOU LOVE IT SET IT FREE

•What happens if project leads leave your company?

•Ensure projects have owners or give it to the community :)

https://blog.twitter.com/2013/bootstrap-30

Page 19: Creating an Open Source Office: Lessons from Twitter

LESSONS FROM MESOS

https://mesos.apache.org

Page 20: Creating an Open Source Office: Lessons from Twitter

COLLABORATE WITH ACADEMIA

•Apache Mesos was born out of Berkeley’s AMPLab

http://goo.gl/lA6xco https://mesos.apache.org

Page 21: Creating an Open Source Office: Lessons from Twitter

FOUNDATIONS CAN HELP

•Open source foundations force good practices on you

•Foundations can foster collaboration and accelerate growth

https://blog.twitter.com/2012/incubating-apache-mesos

Page 22: Creating an Open Source Office: Lessons from Twitter

LESSONS FROM TWEMCACHE

https://github.com/twitter/twemcache

Page 23: Creating an Open Source Office: Lessons from Twitter

FORKING HAPPENS; DON’T SURPRISE UPSTREAM

•Try to avoid forking at all costs if you can, if you do fork please notify and work with upstream on why

https://blog.twitter.com/2012/caching-with-twemcache

Page 24: Creating an Open Source Office: Lessons from Twitter

LESSONS FROM PARQUET

http://parquet.apache.org/

Page 25: Creating an Open Source Office: Lessons from Twitter

COLLABORATE FROM THE START

•Share your code with peers to gauge interest in collaborating before you open source it to everyone

•Launching with collaborators can help momentum

•Project Timeline ‣ Fall 2012: Twitter and Cloudera merge efforts on Parquet ‣ March 2013: open source announcement; Criteo joins ‣ July 2013: 1.0 release; 18 contributions from 5 organizations ‣ May 2014: enter Apache incubator; 40+ contributors ‣ May 2015: Parquet graduates; 60+ contributors

https://blog.twitter.com/2015/graduating-apache-parquet

Page 26: Creating an Open Source Office: Lessons from Twitter

OTHER LESSONS

Page 27: Creating an Open Source Office: Lessons from Twitter

#THANKYOU (ALWAYS GIVE THANKS)

•Thank your first time contributors

•Send swag or anything meaningfuly, it goes a long way!

•We used to send handwritten #ThankYou cards

Page 28: Creating an Open Source Office: Lessons from Twitter

DEVELOPER ADVOCATES ARE GOLD

•Community doesn’t come for free!

•You need devs that focus on the contributor experience

•You need devs that focus on code samples

•You need devs that focus on speaking at events

•You need devs that focus on organizing events!

http://www.slideshare.net/chanezon/introduction-to-google-developer-relations

Page 29: Creating an Open Source Office: Lessons from Twitter

EMPLOYEES AS OPEN SOURCE CELEBRITIES

•Having successful open source projects are a double edged swords… as employees get more popular… they may get more popular to competing employers and leave :(

•As a benefit, employees tend to bring the projects they developed with them to new companies and bring diversity to the project :)

•It’s on you to make your company amazing so people stay :)

https://github.com/twitter/scalding/wiki/Powered-By

Page 30: Creating an Open Source Office: Lessons from Twitter

CODE OF CONDUCTS ARE GOOD

•Set expectations and make your community welcoming

•Always better to be prepared (shit will happen)

https://engineering.twitter.com/opensource/code-of-conducthttp://todogroup.org/opencodeofconduct/http://geekfeminism.wikia.com/wiki/Code_of_conduct_evaluations

http://geekfeminism.wikia.com/wiki/Timeline_of_incidents

Page 31: Creating an Open Source Office: Lessons from Twitter

INVOLVE OPEN SOURCE IN M&A CHATS

•Don’t be scared to discuss open sourcing code as part of an acquisitions, good things can come out it! (e.g., TextSecure)

https://whispersystems.org/http://storm.apache.org/

Page 32: Creating an Open Source Office: Lessons from Twitter

YOU WILL HAVE UGLY BABIES

•People will call your project useless and so on

•Take the criticism as a compliment that people care enough

•Also use it as an advantage, people may point you to better technologies you weren’t aware of

Page 33: Creating an Open Source Office: Lessons from Twitter

DIVERSITY IS THE SPICE OF LIFE

•Diversity is good for the long term health of your projects: participate in Outreachy, GSoC, Facebook Open Academy …

http://www.scientificamerican.com/article/how-diversity-makes-us-smarter/

http://en.wikipedia.org/wiki/Ecological_effects_of_biodiversityhttp://outreachy.org

Page 34: Creating an Open Source Office: Lessons from Twitter

#AGENDA

•The Rise of Open Source •Building an Open Source Office at Twitter•Projects and Lessons Learned•Concluding Thoughts•Q&A

Page 35: Creating an Open Source Office: Lessons from Twitter

CONTRIBUTION BRINGS INFLUENCE

•Know the critical open source projects you organization depends •Contributions are the currency of open source •Control your destiny via influence

Page 36: Creating an Open Source Office: Lessons from Twitter

COMMUNITY DOESN’T COME FOR FREE

•Don’t just throw something on Github and expect magical contributors from the world •Community is built one member at a time (preferrably with dev advocates)

Page 37: Creating an Open Source Office: Lessons from Twitter

OPEN SOURCE OFFICE ALL THE THINGS

•Make the lives of your engineers easier by convincing your companies to form open source groups or offices

http://todogroup.org/

Page 38: Creating an Open Source Office: Lessons from Twitter

Thank You Q&A?

Page 39: Creating an Open Source Office: Lessons from Twitter

flock

SHARING IS CARING, HELP US MAKE TWITTER BETTER!

https://github.com/twitter https://twitterdev.github.io

Page 40: Creating an Open Source Office: Lessons from Twitter

flock

#RESOURCES

https://twitter.com/TwitterOSS https://twitter.com/TwitterDev http://todogroup.org/blog/why-we-run-an-open-source-program-twitter/ http://todogroup.org/blog/why-we-run-an-open-source-program-microsoft/ http://todogroup.org/blog/why-we-run-an-open-source-program-github/ http://todogroup.org/blog/why-we-run-an-open-source-program-box/ http://todogroup.org/blog/why-we-run-an-open-source-program-walmart-labs/