guardian/vibecoding-puzzle-lab
File Size The distribution of size of files (measured in lines of code). |
File Size Overall
- There are 50 files with 3,905 lines of code.
- 0 very long files (0 lines of code)
- 0 long files (0 lines of code)
- 5 medium size files (1,738 lines of code)
- 8 small files (1,204 lines of code)
- 37 very small files (963 lines of code)
Legend:
1001+
501-1000
201-500
101-200
1-100
explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
File Size per Logical Decomposition
primary
Longest Files (Top 50)
| File | # lines | # units |
|---|---|---|
| 417 | 19 | |
| 395 | 10 | |
| 382 | 4 | |
| 300 | 11 | |
| 244 | 1 | |
| 189 | - | |
| 175 | - | |
| 175 | 12 | |
| 156 | 3 | |
| 147 | 1 | |
| 128 | - | |
| 125 | 6 | |
| 109 | - | |
| 94 | 5 | |
| 65 | 2 | |
| 60 | - | |
| 59 | - | |
| 58 | - | |
| 53 | - | |
| 52 | - | |
| 52 | 4 | |
| 44 | 1 | |
| 43 | 2 | |
| 40 | 2 | |
| 39 | - | |
| 37 | 1 | |
| 30 | 1 | |
| 29 | - | |
| 25 | - | |
| 24 | 1 | |
| 22 | 1 | |
| 18 | - | |
| 16 | - | |
| 13 | - | |
| 13 | - | |
| 13 | - | |
| 11 | - | |
| 10 | - | |
| 7 | - | |
| 6 | - | |
| 6 | - | |
| 5 | - | |
| 4 | - | |
| 4 | - | |
| 3 | - | |
| 3 | 1 | |
| 2 | - | |
| 1 | - | |
| 1 | - | |
| 1 | - |
Large Files That Change Often (Top 20)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
| File | # lines | ≈ tokens to read | # changes (1y) | ≈ lines edited per change | lines read per line changed |
|---|---|---|---|---|---|
| 382 | ~2k–7k | 19 | ~50 | ~10 | |
| 244 | ~1.5k–5k | 12 | ~50 | ~5 | |
| 417 | ~2k–7k | 4 | ~150 | ~3 | |
| 395 | ~2k–7k | 4 | ~150 | ~3 | |
| 300 | ~2k–5k | 4 | ~100 | ~3 | |
| 156 | ~1k–3k | 6 | ~70 | ~2 | |
| 175 | ~1k–3k | 4 | ~100 | ~2 | |
| 147 | ~1k–3k | 4 | ~50 | ~3 | |
| 125 | ~700–2k | 4 | ~50 | ~3 | |
| 109 | ~700–2k | 3 | ~50 | ~3 | |
| 60 | ~300–1k | 5 | ~30 | ~2 | |
| 39 | under 1k | 5 | ~20 | ~2 | |
| 189 | ~1k–3k | 1 | ~200 | ~1 | |
| 175 | ~1k–3k | 1 | ~200 | ~1 | |
| 40 | under 1k | 4 | ~20 | ~2 | |
| 37 | under 1k | 4 | ~30 | ~1 | |
| 65 | ~300–1k | 2 | ~70 | ~1 | |
| 43 | under 1k | 3 | ~30 | ~2 | |
| 128 | ~700–2k | 1 | ~150 | ~1 | |
| 25 | under 1k | 5 | ~15 | ~2 |
Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).
Files With Most Units (Top 20)
| File | # lines | # units |
|---|---|---|
| 417 | 19 | |
| 175 | 12 | |
| 300 | 11 | |
| 395 | 10 | |
| 125 | 6 | |
| 94 | 5 | |
| 52 | 4 | |
| 382 | 4 | |
| 156 | 3 | |
| 65 | 2 | |
| 43 | 2 | |
| 40 | 2 | |
| 244 | 1 | |
| 22 | 1 | |
| 24 | 1 | |
| 30 | 1 | |
| 44 | 1 | |
| 147 | 1 | |
| 37 | 1 | |
| 3 | 1 |
Files With Long Lines (Top 18)
There are 18 files with lines longer than 120 characters. In total, there are 42 long lines.
| File | # lines | # units | # long lines |
|---|---|---|---|
| 395 | 10 | 9 | |
| 60 | - | 5 | |
| 382 | 4 | 4 | |
| 44 | 1 | 3 | |
| 53 | - | 3 | |
| 156 | 3 | 2 | |
| 175 | - | 2 | |
| 58 | - | 2 | |
| 43 | 2 | 2 | |
| 175 | 12 | 2 | |
| 94 | 5 | 1 | |
| 417 | 19 | 1 | |
| 125 | 6 | 1 | |
| 300 | 11 | 1 | |
| 65 | 2 | 1 | |
| 52 | - | 1 | |
| 40 | 2 | 1 | |
| 37 | 1 | 1 |
Correlations
File Size vs. Commits (all time): 50 points
|
|
417.0 | lines of code min: 1.0average: 78.1 25th percentile: 9.25 median: 38.0 75th percentile: 113.0 max: 417.0 |
|
| 0 | 19.0 | ||
|
commits (all time) min: 1.0 | average: 2.84 | 25th percentile: 1.0 | median: 2.0 | 75th percentile: 4.0 | max: 19.0
|
|||
File Size vs. Contributors (all time): 50 points
|
|
417.0 | lines of code min: 1.0average: 78.1 25th percentile: 9.25 median: 38.0 75th percentile: 113.0 max: 417.0 |
|
| 0 | 1.0 | ||
|
contributors (all time) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
File Size vs. Commits (30 days): 0 points
No data for "commits (30d)" vs. "lines of code".
File Size vs. Contributors (30 days): 0 points
No data for "contributors (30d)" vs. "lines of code".
File Size vs. Commits (90 days): 31 points
|
|
417.0 | lines of code min: 1.0average: 96.16 25th percentile: 13.0 median: 40.0 75th percentile: 147.0 max: 417.0 |
|
| 0 | 5.0 | ||
|
commits (90d) min: 1.0 | average: 1.45 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 2.0 | max: 5.0
|
|||
File Size vs. Contributors (90 days): 31 points
|
|
417.0 | lines of code min: 1.0average: 96.16 25th percentile: 13.0 median: 40.0 75th percentile: 147.0 max: 417.0 |
|
| 0 | 1.0 | ||
|
contributors (90d) min: 1.0 | average: 1.0 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.0 | max: 1.0
|
|||
About This Analysis
- File size measurements show the distribution of size of files.
- Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
- It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
- To learn more about bloaters and how to deal with long code structures, Sokrates recommends the following resources:
- Refactoring bloaters, sourcemaking.com
- The Blob Software Development Anti-Pattern, sourcemaking.com