google-gemini/robotics-samples
File Size The distribution of size of files (measured in lines of code). |
File Size Overall
- There are 79 files with 17,708 lines of code.
- 4 very long files (5,566 lines of code)
- 7 long files (4,195 lines of code)
- 14 medium size files (4,492 lines of code)
- 16 small files (2,245 lines of code)
- 38 very small files (1,210 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 |
|---|---|---|
| 1800 | 73 | |
| 1464 | - | |
| 1293 | 37 | |
| 1009 | - | |
| 716 | 38 | |
| 672 | 7 | |
| 601 | 10 | |
| 588 | 55 | |
| 548 | - | |
| 545 | 2 | |
| 525 | - | |
| 496 | - | |
| 438 | - | |
| 425 | - | |
| 403 | 4 | |
| 352 | - | |
| 346 | - | |
| 334 | 7 | |
| 288 | - | |
| 265 | 10 | |
| 249 | - | |
| 228 | 14 | |
| 225 | 15 | |
| 224 | 11 | |
| 219 | 8 | |
| 186 | - | |
| 176 | 5 | |
| 172 | 1 | |
| 162 | 8 | |
| 157 | 19 | |
| 156 | - | |
| 156 | - | |
| 143 | 13 | |
| 138 | 12 | |
| 137 | - | |
| 131 | 8 | |
| 119 | 9 | |
| 105 | 1 | |
| 104 | 7 | |
| 102 | 12 | |
| 101 | 6 | |
| 91 | 10 | |
| 86 | 4 | |
| 84 | 5 | |
| 80 | 6 | |
| 78 | 6 | |
| 78 | - | |
| 75 | 4 | |
| 70 | 4 | |
| 61 | 7 |
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 |
|---|---|---|---|---|---|
| 1800 | ~10k–30k | 2 | ~2,000 | ~1 | |
| 1464 | ~10k–30k | 2 | ~1,500 | ~1 | |
| 1293 | ~7k–20k | 2 | ~1,500 | ~1 | |
| 1009 | ~7k–15k | 2 | ~1,000 | ~1 | |
| 716 | ~5k–15k | 2 | ~1,000 | ~1 | |
| 672 | ~3k–10k | 2 | ~700 | ~1 | |
| 601 | ~3k–10k | 2 | ~700 | ~1 | |
| 588 | ~3k–10k | 2 | ~700 | ~1 | |
| 548 | ~3k–10k | 2 | ~500 | ~1 | |
| 545 | ~3k–10k | 2 | ~700 | ~1 | |
| 525 | ~3k–10k | 2 | ~500 | ~1 | |
| 496 | ~3k–7k | 2 | ~500 | ~1 | |
| 438 | ~3k–7k | 2 | ~500 | ~1 | |
| 425 | ~2k–7k | 2 | ~500 | ~1 | |
| 403 | ~2k–7k | 2 | ~500 | ~1 | |
| 352 | ~2k–5k | 2 | ~300 | ~1 | |
| 346 | ~2k–5k | 2 | ~300 | ~1 | |
| 334 | ~2k–5k | 2 | ~500 | ~1 | |
| 288 | ~2k–5k | 2 | ~300 | ~1 | |
| 265 | ~1.5k–5k | 2 | ~500 | ~1 |
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 45)
| File | # lines | # units |
|---|---|---|
| 1800 | 73 | |
| 588 | 55 | |
| 716 | 38 | |
| 1293 | 37 | |
| 157 | 19 | |
| 225 | 15 | |
| 228 | 14 | |
| 143 | 13 | |
| 138 | 12 | |
| 102 | 12 | |
| 224 | 11 | |
| 601 | 10 | |
| 265 | 10 | |
| 91 | 10 | |
| 51 | 9 | |
| 119 | 9 | |
| 131 | 8 | |
| 219 | 8 | |
| 162 | 8 | |
| 61 | 7 | |
| 672 | 7 | |
| 334 | 7 | |
| 104 | 7 | |
| 39 | 6 | |
| 80 | 6 | |
| 78 | 6 | |
| 101 | 6 | |
| 176 | 5 | |
| 17 | 5 | |
| 84 | 5 | |
| 52 | 4 | |
| 70 | 4 | |
| 86 | 4 | |
| 403 | 4 | |
| 75 | 4 | |
| 22 | 3 | |
| 22 | 2 | |
| 58 | 2 | |
| 545 | 2 | |
| 172 | 1 | |
| 105 | 1 | |
| 22 | 1 | |
| 4 | 1 | |
| 24 | 1 | |
| 12 | 1 |
Files With Long Lines (Top 17)
There are 17 files with lines longer than 120 characters. In total, there are 169 long lines.
| File | # lines | # units | # long lines |
|---|---|---|---|
| 403 | 4 | 36 | |
| 249 | - | 34 | |
| 1009 | - | 15 | |
| 548 | - | 15 | |
| 1464 | - | 12 | |
| 48 | - | 11 | |
| 346 | - | 8 | |
| 1293 | 37 | 7 | |
| 70 | 4 | 7 | |
| 438 | - | 7 | |
| 1800 | 73 | 6 | |
| 288 | - | 4 | |
| 265 | 10 | 2 | |
| 525 | - | 2 | |
| 138 | 12 | 1 | |
| 101 | 6 | 1 | |
| 352 | - | 1 |
Correlations
File Size vs. Commits (all time): 79 points
|
|
1800.0 | lines of code min: 1.0average: 224.15 25th percentile: 22.0 median: 102.0 75th percentile: 265.0 max: 1800.0 |
|
| 0 | 2.0 | ||
|
commits (all time) min: 2.0 | average: 2.0 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 2.0 | max: 2.0
|
|||
File Size vs. Contributors (all time): 79 points
|
|
1800.0 | lines of code min: 1.0average: 224.15 25th percentile: 22.0 median: 102.0 75th percentile: 265.0 max: 1800.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): 79 points
|
|
1800.0 | lines of code min: 1.0average: 224.15 25th percentile: 22.0 median: 102.0 75th percentile: 265.0 max: 1800.0 |
|
| 0 | 2.0 | ||
|
commits (90d) min: 2.0 | average: 2.0 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 2.0 | max: 2.0
|
|||
File Size vs. Contributors (90 days): 79 points
|
|
1800.0 | lines of code min: 1.0average: 224.15 25th percentile: 22.0 median: 102.0 75th percentile: 265.0 max: 1800.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