About OSCAR

Project Mission

OSCAR is a project designed to quantify and analyze open source software contributions, specifically tracking GitHub activity across different technology companies.

Brief History

This project began in 2018 while Iwas working at Adobe. One of my responsibilities included managing Adobe's Open Source Office. Matt Asay, my boss at the time, asked if we could quantify the impact the Open Source Office has had on Adobe and roughly compare Adobe's open source activity to that of other technology companies. Inspired by Felipe Hoffa's "Top contributors to GitHub" work, this project slowly evolved over time, and over the years I have collected a lotof data.

How It Works

OSCAR works on an hourly "event loop."

1. Data Collection

The system downloads hourly GitHub activity archives from GitHub Archive, a public dataset that captures all GitHub public activity. We specifically track activity on repositories that were forked or watched in the previous 30 days, maintaining a rolling 30-day list of "popular" projects. Why do this? As a low-pass filter: these "popular" projects end up accounting for about 15%of public GitHub git pushevents.

GitHub repositories watched/forked, previous 30 days
2026-04-08 564735.4348

564,735.435

2026-04-08

2026-04-09 563248.375

563,248.375

2026-04-09

2026-04-10 561955.25

561,955.25

2026-04-10

2026-04-11 561499.5217

561,499.522

2026-04-11

2026-04-12 567259.7917

567,259.792

2026-04-12

2026-04-13 567846.5909

567,846.591

2026-04-13

2026-04-14 555526.5909

555,526.591

2026-04-14

2026-04-15 549549.125

549,549.125

2026-04-15

2026-04-16 548814.125

548,814.125

2026-04-16

2026-04-17 546483.625

546,483.625

2026-04-17

2026-04-18 547536.75

547,536.75

2026-04-18

2026-04-19 554534.8333

554,534.833

2026-04-19

2026-04-20 556570.9583

556,570.958

2026-04-20

2026-04-21 549540.087

549,540.087

2026-04-21

2026-04-22 542532.9091

542,532.909

2026-04-22

2026-04-23 541847.6957

541,847.696

2026-04-23

2026-04-24 540533.2083

540,533.208

2026-04-24

2026-04-25 542467.1304

542,467.13

2026-04-25

2026-04-26 552288.4091

552,288.409

2026-04-26

2026-04-27 557922.375

557,922.375

2026-04-27

2026-04-28 550306.5217

550,306.522

2026-04-28

2026-04-29 542394.75

542,394.75

2026-04-29

2026-04-30 537900.0833

537,900.083

2026-04-30

2026-05-01 530592

530,592

2026-05-01

2026-05-02 529268.4583

529,268.458

2026-05-02

2026-05-03 528339.375

528,339.375

2026-05-03

2026-05-04 524184.3913

524,184.391

2026-05-04

2026-05-05 512463.125

512,463.125

2026-05-05

2026-05-06 499434.75

499,434.75

2026-05-06

2026-05-07 490308.9565

490,308.957

2026-05-07

2026-05-08 482667.4783

482,667.478

2026-05-08

0.6M
0.4M
2026-04-08
2026-05-08

Next, we look at all public GitHub git pushevents and try to find information about the users pushing code to these projects.

2. User-Corporation Association

For every user contributing to these "popular" projects, we query the GitHub APIto retrieve the companyfield from their profile. Company associations are extracted from user profiles and tracked over time, allowing us to detect when developers change employers or update their affiliations.

Users committing to 'popular' projects per hour, previous 30 days
2026-04-08 2762.5217

2,762.522

2026-04-08

2026-04-09 2755.75

2,755.75

2026-04-09

2026-04-10 2654.25

2,654.25

2026-04-10

2026-04-11 2020.8696

2,020.87

2026-04-11

2026-04-12 1948.9167

1,948.917

2026-04-12

2026-04-13 2662.2273

2,662.227

2026-04-13

2026-04-14 2916.8636

2,916.864

2026-04-14

2026-04-15 2818.7083

2,818.708

2026-04-15

2026-04-16 2858.6667

2,858.667

2026-04-16

2026-04-17 2705.625

2,705.625

2026-04-17

2026-04-18 1995.5

1,995.5

2026-04-18

2026-04-19 1980.5

1,980.5

2026-04-19

2026-04-20 2634.5833

2,634.583

2026-04-20

2026-04-21 2762.087

2,762.087

2026-04-21

2026-04-22 2660.5455

2,660.546

2026-04-22

2026-04-23 2717.4348

2,717.435

2026-04-23

2026-04-24 2674.7083

2,674.708

2026-04-24

2026-04-25 1926.6522

1,926.652

2026-04-25

2026-04-26 1969.3636

1,969.364

2026-04-26

2026-04-27 2597.75

2,597.75

2026-04-27

2026-04-28 2748.087

2,748.087

2026-04-28

2026-04-29 2681.375

2,681.375

2026-04-29

2026-04-30 1829.25

1,829.25

2026-04-30

2026-05-01 2031.3913

2,031.391

2026-05-01

2026-05-02 1890.7083

1,890.708

2026-05-02

2026-05-03 1821.3333

1,821.333

2026-05-03

2026-05-04 2357.4783

2,357.478

2026-05-04

2026-05-05 2460.125

2,460.125

2026-05-05

2026-05-06 2531.1667

2,531.167

2026-05-06

2026-05-07 2545.7391

2,545.739

2026-05-07

2026-05-08 2362.8261

2,362.826

2026-05-08

3k
1.8k
2026-04-08
2026-05-08

There is some regular-expression'ing going on to roughly associate these company strings to specific corporations, but we do our best, especially for known companies. It's not a perfect way to create these associations, but it's better than looking at e-mails associated to the commits (which most other similar analyses use as their approach). For me personally, I associate my personal e-mail with my git commits, so I wanted to try a different approach.

3. Analysis and Storage

The User-company association data is exported to Google BigQueryfor large-scale analysis: every month, we generate comprehensive reportson corporate GitHub activity across monthly, quarterly, and yearly timeframes, providing insights into which organizations are most active in the open source ecosystem.

Acknowledgments

This project is built on the shoulders of giants and would not be possible without the following open source technologies:

Special thanks to Felipe Hoffa for pioneering GitHub data analysis techniques and inspiring this work.