Slide 1

Slide 1 text

Creating an Open Source Office
 
 Lessons from Twitter Welcome

Slide 2

Slide 2 text

CHRIS ANISZCZYK Head of Open Source #OSCON @cra

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

SOFTWARE IS EATING THE WORLD http://www.wsj.com/articles/SB10001424053111903480904576512250915629460

Slide 5

Slide 5 text

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-source http://www.teslamotors.com/blog/all-our-patent-are-belong-you

Slide 6

Slide 6 text

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/

Slide 7

Slide 7 text

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/

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

BUILT ON OPEN SOURCE PRETTY MUCH SINCE DAY 1* https://blog.twitter.com/2009/building-open-source

Slide 10

Slide 10 text

HackPrinceton - November 14-16, 2014 @TwitterAds | Confidential 300M+ 500M+ 80% Active users Tweets / Day of users are mobile users 2006 2015 ~4000 Employees

Slide 11

Slide 11 text

SCALING ENGINEERING WITH OPEN SOURCE?

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

LESSONS FROM BOOTSTRAP http://getbootstrap.com/

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

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

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

LESSONS FROM MESOS https://mesos.apache.org

Slide 20

Slide 20 text

COLLABORATE WITH ACADEMIA •Apache Mesos was born out of Berkeley’s AMPLab http://goo.gl/lA6xco https://mesos.apache.org

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

LESSONS FROM TWEMCACHE https://github.com/twitter/twemcache

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

LESSONS FROM PARQUET http://parquet.apache.org/

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

OTHER LESSONS

Slide 27

Slide 27 text

#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

Slide 28

Slide 28 text

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

Slide 29

Slide 29 text

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

Slide 30

Slide 30 text

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-conduct http://todogroup.org/opencodeofconduct/ http://geekfeminism.wikia.com/wiki/Code_of_conduct_evaluations http://geekfeminism.wikia.com/wiki/Timeline_of_incidents

Slide 31

Slide 31 text

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/

Slide 32

Slide 32 text

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

Slide 33

Slide 33 text

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_biodiversity http://outreachy.org

Slide 34

Slide 34 text

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

Slide 35

Slide 35 text

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

Slide 36

Slide 36 text

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)

Slide 37

Slide 37 text

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/

Slide 38

Slide 38 text

Thank You Q&A?

Slide 39

Slide 39 text

flo SHARING IS CARING, HELP US MAKE TWITTER BETTER! https://github.com/twitter https://twitterdev.github.io

Slide 40

Slide 40 text

flo #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/