Adobe's Involvement in Open Source
A Look At The Numbers

๐Ÿป Filip Maj

๐ŸŽฎ Senior Computer Scientist

๐ŸŒฑ Developer Ecosystem

Why is Open Source Involvement Important?

Adobe Experience Platform

"Four priorities at the highest level. Number one: Cloud Platform. This is one of the biggest bets the company is making. The days of us building siloed stacks are not going to serve us well in the future. Three foundational bets that Adobe made two years ago: multi-cloud, content platform and data platform. Content is uniquely ours, and we cannot afford to have fifteen different content repositories that are disconnected and siloed."

- Abhay Parasnis, CTO, Adobe, Cloud Tech All Hands Q1 2018

Why Delineate Platform vs. Product?

  1. โš—๏ธ Value provided is distilled down to its essence - "Content is uniquely ours"
  2. ๐Ÿ— A foundation exists for value generation (e.g. product creation and sales) to be opened up to third parties

TL;DR: what ๐Ÿ†’ stuff can others build on top of Adobe content, data and services?

Who Do We Care About?

Developers, developers, developers

Developer Experience Matters

A good experience necessitates:

  • ๐Ÿ“ Up-to-date, accurate and tested docs
  • ๐Ÿค Code samples
  • ๐Ÿ“ฆ Functional SDKs & Client Libraries
  • ๐Ÿ“ž Responsive support for these assets

Why all of this? So that devs can get to โ€œHello Worldโ€ fast and start using our platform ASAP

This Is Not Easy

Keeping these assets up to date and providing support is challenging

Open Source Is The Way

The industry-standard way of achieving this is to place these assets in the hands of the developer community ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ

๐Ÿšœ Adobe developers end up working elbow-to-elbow with our customers - who are also developers

๐ŸŒฑ In this way we plant the seeds of a developer ecosystem that is critical to the business

It Seems That We Understand This

"We hope [open-sourcing this library we developed internally at Adobe] will increase Adobe presence and visibility in the Machine Learning community as we contribute back to the community. At the same time, this effort will also help with our platformโ€™s adoption."

Wei Chung, Senior Computer Scientist at Adobe

https://git.corp.adobe.com/OpenSourceAdvisoryBoard/opensource_submission_process/issues/93

SO! Measuring Adobe + Open Source

Inspiration was a blog post from 2017 trying to rank companies in Open Source: https://medium.freecodecamp.org/the-top-contributors-to-github-2017-be98ab854e87.

TL;DR: analyze Github.com's massive public data via githubarchive.org.

56th in 2017

Only 38 Adobians active on Github!?

That seems wrong, right?

How It Worked

The original approach used Github user's git configuration email, and specifically the domain portion of the email, to associate users to companies.

		
		โžœ echo "maj@adobe.com" | pcregrep -o1 "\b[a-zA-Z0-9.-]+@([a-zA-Z0-9.-]+\.[a-zA-Z0-9.-]+)\b"
		adobe.com
		
	

... but who puts their company email in their git config, amirite? โœ‰๏ธ

What We Changed

  1. ๐Ÿ›’ Every month, we gather all Github usernames that were active that month on Github with at least one commit to a public project - about ~1.3 million usernames.
  2. ๐Ÿ”จ We then pound the Github REST API to pull out the "Company" field from the user's Github profile:
  3. โฐ (this takes about 72 hours)
  4. ๐Ÿšข We store these user-company associations in our own SQL DB, and import into Google BigQuery when we need to, for easy cross-referencing with githubarchive.org Github activity data
  5. ๐Ÿ“ฆ There's a repository with the details:
    git.corp.adobe.com/dx/oss-contributors

Give Me The Numbers!

Number of Contributors by Company, Q1 2018

Adobe Contributors and Projects, Quarter over Quarter

Adobe vs. Top Competitors, Q1 2018

What About Individuals at Adobe?

๐Ÿค— How can we recognize active Adobians?

A Sneak Preview

Thanks, Devon and Kai! ๐Ÿ‘

More Work To Be Done

Sorely needed: count other kinds of contributions

  • Issues created / commented on / closed
  • Pull requests issued / reviewed / merged

These are valuable contributions that we need to acknowledge, too.

A Plea

๐Ÿ“ˆ Those of us here understand that Open Source is a process that makes superior software in less time.

โ˜น๏ธ So why are we as Adobe, overall, so slow to engage and contribute back?

๐Ÿ“ฃ Be vocal about helping to nurture our developer ecosystem! Demand your team contributes back to the open source projects it inevitably relies on!

โ“ Ask your Director or VP next time you have a chance: why aren't we more involved in open source?

Adobe + Open Source = โค๏ธ

With greater open source involvement, Adobe can gain the trust of the wider development community faster while positively investing in its employees and driving more usage to its platform.

Thanks! โœŒ

-filmaj