← all organisations

OptiMaL-PSE-Lab / Code

11 languages, 45.1 MB of source, and what the live estate is written in today.

Language figures come from GitHub's own per-repository byte counts, which measure source rather than a single headline label. File counts and repository sizes come from the mirrors themselves. The two tell different stories, and the difference is the point.

The codebase

11
languages in use
45.1 MB of source
7.5k
files at HEAD
across every analysed repository
0 B
on disk as mirrors
full history, every branch and tag
1.0 GB
largest repository
CIRL

What stands out

One archived repository holds 31% of all the bytes.

CIRL is 1.0 GB of git - a 2013 static snapshot of www.gov.uk, not source code. It single-handedly makes HTML the largest language by volume (11% of all source bytes). Any size or language statistic that does not exclude it is measuring an archive, not a codebase.

Sizes here are GitHub's reported figures.

This organisation was harvested with blobless partial clones, which fetch every commit and file path but not file contents, so there is no local size to measure against. Checked elsewhere in this dataset against 1,526 fully mirrored repositories, GitHub's reported size is accurate to within about six percent.

Ruby is the house language, but its share is falling.

Ruby is the primary language of 0% of archived repositories but only 0% of live ones. Python, Go, TypeScript and HCL have taken the difference - the signature of a shift from monolithic Rails publishing apps toward data pipelines, infrastructure-as-code and platform tooling.

Most repositories are small; a handful are enormous.

26% of repositories are under a megabyte of git data. The estate is not a monolith - it is a very long tail of small services, gems and prototypes around a few large publishing applications.

Languages, two ways

By volume of source

Bytes of code. Dominated by archived static HTML.

Jupyter NotebookJupyter Notebook: 29.1 MB29.1 MBPythonPython: 6.2 MB6.2 MBHTMLHTML: 5.1 MB5.1 MBC++C++: 3.4 MB3.4 MBJuliaJulia: 645.2 kB645.2 kBTeXTeX: 398.5 kB398.5 kBJavaScriptJavaScript: 113.7 kB113.7 kBShellShell: 19.5 kB19.5 kBSCSSSCSS: 13.8 kB13.8 kBDockerfileDockerfile: 4.4 kB4.4 kBCSSCSS: 2.5 kB2.5 kB

By number of repositories

How many repositories name each language as their primary one. A better guide to what engineers actually work in.

PythonPython: 2727Jupyter NotebookJupyter Notebook: 1212ShellShell: 99JuliaJulia: 33DockerfileDockerfile: 33HTMLHTML: 22CSSCSS: 22TeXTeX: 22C++C++: 22JavaScriptJavaScript: 11SCSSSCSS: 11

Live estate versus archive

The same language ranking, split by whether the repository is still active. The shift is the clearest signal of technical direction in the whole dataset.

Active repositories

PythonPython: 1717Jupyter NotebookJupyter Notebook: 88JuliaJulia: 33HTMLHTML: 22C++C++: 22TeXTeX: 11

Archived repositories

PythonPython: 00Jupyter NotebookJupyter Notebook: 00JuliaJulia: 00HTMLHTML: 00C++C++: 00TeXTeX: 00

Scale

Repository size distribution

Git data per repository, log-ish buckets.

107.552.50< 10 kB: 0< 10 kB< 100 kB: 1< 100 kB< 1 MB: 8< 1 MB< 10 MB: 10< 10 MB< 100 MB: 8< 100 MB100 MB +: 7100 MB +

Commits against files

Each circle is a repository, sized by number of distinct authors. Both axes are logarithmic. The diagonal band is the normal relationship between codebase size and churn; outliers above it are long-lived apps with heavy iteration, below it are dumps and imports.

842.0233.764.918.05.0211.465.4374.02.1kCIRL: 20 commits, 58 files, 2 authorsCarAT: 67 commits, 30 files, 2 authorsDD-Hierarchical: 22 commits, 175 files, 2 authorsDDMPC-Coursework: 18 commits, 414 files, 2 authorsDDO-4-ChemEng: 108 commits, 252 files, 6 authorsData-driven-coordination: 20 commits, 204 files, 2 authorsData-driven-distributionally-robust-MPC: 17 commits, 17 files, 1 authorsDeepDock: 30 commits, 88 files, 4 authorsEvalRetro: 218 commits, 101 files, 5 authorsExpensive-Black-Box-Optim-ChemEng: 125 commits, 631 files, 9 authorsGaussian-Process-from-scratch: 12 commits, 2 files, 1 authorsImperial-ML4CE-Course: 67 commits, 473 files, 9 authorsLP_Pyomo: 20 commits, 4 files, 4 authorsML-course: 5 commits, 8 files, 2 authorsMORetro: 93 commits, 109 files, 4 authorsMachine-Learning-for-Chemical-Engineering: 40 commits, 10 files, 1 authorsMolPrice: 107 commits, 28 files, 4 authorsMultiAgentRL_InventoryControl: 32 commits, 62 files, 4 authorsPhysics_Informed_Symbolic_Regression: 60 commits, 1,046 files, 3 authorsREINFORCE-PSE: 158 commits, 18 files, 3 authorsSketch2Simulation: 15 commits, 33 files, 1 authorsauto_discov_kin_rate_models: 30 commits, 730 files, 3 authorsauto_react_mech_construct: 90 commits, 86 files, 3 authorscoding_workshop: 31 commits, 28 files, 8 authorscontrol_neuralode: 177 commits, 34 files, 2 authorscuatro: 39 commits, 38 files, 3 authorshumbo: 132 commits, 33 files, 3 authorsimperial_latex_templates: 18 commits, 34 files, 2 authorsml_coursework: 78 commits, 32 files, 3 authorsoptimalpse.github.io: 842 commits, 531 files, 16 authorspulsed-reactor-optimisation: 469 commits, 2,139 files, 8 authorsrmpa: 38 commits, 20 files, 3 authorsfiles at HEAD (log)commits (log)

The shape of a repository

Directory layout is the cheapest reliable signal of what a repository actually is. app/ with config/ and spec/ is a Rails application; src/ with test/ is Java or Node. Counted by how many repositories contain each top-level directory at HEAD.

Most common top-level directories

datadata: 88srcsrc: 88imagesimages: 44scriptsscripts: 33__pycache____pycache__: 33assetsassets: 22teststests: 22examplesexamples: 22configconfig: 22logslogs: 22algorithmsalgorithms: 22configsconfigs: 22.vscode.vscode: 22CIRLCIRL: 11plotsplots: 11resultsresults: 11hierarchyhierarchy: 11pc-gympc-gym: 11

Most common file extensions

By total file count across the estate.

.py.py: 712712.csv.csv: 588588.pkl.pkl: 507507.svg.svg: 504504.bkup.bkup: 458458.zip.zip: 436436.png.png: 397397.gz.gz: 366366.md.md: 235235.pickle.pickle: 229229.jl.jl: 174174.html.html: 126126.jpg.jpg: 9191.pyc.pyc: 8181.txt.txt: 7878.pdf.pdf: 6767

The twenty largest repositories

RepositoryLanguageGit size CommitsFilesStatus
CIRLPython1.0 GB2058active
Imperial-ML4CE-CourseJupyter Notebook579.0 MB67473active
DDMPC-CourseworkPython577.9 MB18414active
pulsed-reactor-optimisationC++288.2 MB4692,139active
DDO-4-ChemEngJupyter Notebook184.9 MB108252active
EvalRetroPython152.5 MB218101active
optimalpse.github.ioHTML127.8 MB842531active
MolPricePython90.3 MB10728active
cdt_alicante_workshopJupyter Notebook63.3 MB429active
MultiAgentRL_InventoryControlPython58.9 MB3262active
DeepDockJupyter Notebook36.9 MB3088active
Physics_Informed_Symbolic_RegressionJulia24.8 MB601,046active
auto_react_mech_constructPython21.8 MB9086active
Machine-Learning-for-Chemical-EngineeringJupyter Notebook13.5 MB4010active
Expensive-Black-Box-Optim-ChemEngPython13.3 MB125631active
CarATHTML6.3 MB6730active
Data-driven-coordinationPython4.5 MB20204active
MORetroPython4.5 MB93109active
imperial_latex_templatesTeX3.0 MB1834active
Gaussian-Process-from-scratchJupyter Notebook2.1 MB122active