Sample
Buse/28
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.002 | 0–1; higher is more readable | 12.1Δ 17.2 |
| Scalabrino | 0.48 | 0–1; higher is more readable | 13.6Δ 15.7 |
| Dorn | 0.422 | 0–1; higher is more readable | 28.3Δ 1.0 |
| Mi | 0.484 | 0–1; higher is more readable | 37.4Δ 8.1 |
| LLOC | 7 | Logical lines; fewer is more readable | 4.0Δ 25.3 |
| DeepSeek V4 Pro | 13.67 | 0–20; mean of three runs | 44.4Δ 15.2 |
| GPT-6.1 Sol | 14.33 | 0–20; mean of three runs | 26.3Δ 3.0 |
| BTTF | 0.43 | 0–1; higher is more readable | 32.3Δ 3.0 |
| Human | 2.87 | 1–5; original rating | 29.3 |
Views
Select the downloaded ZIP or its extracted folder. Files stay in your browser.
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones. | 330.343 | −10.901 |
| Byte entropyHow varied the bytes in the source text are. Repeated bytes give a lower value; a more even mixture gives a higher value. | 4.634 | −6.952 |
| Source linesThe number of non-empty source lines. | 7 | +2.8 |
Intercept 8.87 + feature contributions = -6.183 (log-odds).
Score = sigmoid(-6.183) = 0.002.
| Score | 0.48 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 0 | −0.804 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 8 | +0.753 |
| Identifier layout (horizontal)How rapidly the visual pattern of identifier characters changes from left to right. It measures spatial frequency, not the meaning of the names. | 69 | +0.743 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 1 | −0.703 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.144 | −0.457 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 6.814 | −0.315 |
Intercept 0.07 + feature contributions = -0.315 (log-odds).
Score = sigmoid(-0.315) = 0.422.
| Score | 0.484 |
|---|
| Score | 7 |
|---|
Run 1
The code is fairly readable but has several issues. The method is short and its purpose is clear: iterate through runners, filter them, and remove those that shouldn't run. However, the structure could be improved — the loop uses a traditional Iterator pattern which is more verbose than a modern for-each with a collection.removeIf() approach. Nesting is shallow (one if-else inside a for loop), which is good. The action granularity is mostly one action per line, though the for-loop header packs initialization, condition, and increment together. The reading flow is natural: check filter condition, apply filter or remove. The main readability concern is the missing closing braces in the provided snippet, though this may be a truncation artifact. Variable naming (fRunners, iter, runner) is acceptable but could be more descriptive. Overall, the code is understandable but uses outdated iteration patterns that add unnecessary complexity.
Run 2
The code is moderately readable with clear intent (filtering runners based on a condition) and a flat structure with minimal nesting. However, there are notable issues: the for-loop declaration is cluttered and uses an archaic iterator style rather than a for-each loop, which slightly hampers readability. The action granularity is inconsistent—some lines have multiple operations (e.g., the for-loop header). Variable naming like `iter` and `fRunners` is somewhat cryptic. The code length is acceptable but could be more concise with a modern loop construct. Missing braces on the else block could invite future errors despite the indentation suggesting intent. Overall, the purpose is clear, but stylistic choices reduce readability and modern best practices are not followed.
Run 3
The code is fairly readable but has minor issues. The loop structure is straightforward, iterating over runners and applying a filter or removing the runner. However, the for-loop declaration is slightly compressed by placing the iterator declaration and condition on one line, reducing clarity. The action granularity is good, with each action on its own line inside the if-else. The purpose is clear: filter runners based on the shouldRun condition. The main readability issues are the missing closing brace (which may be a snippet issue) and the slightly dense for-loop header. Overall, the code is understandable but could be improved with a more conventional for-each loop or cleaner iterator declaration.
Run 1
Code Structure: The loop and conditional are logically organized, but missing closing braces leave the snippet incomplete. Nesting: Shallow nesting makes the control flow easy to follow. Clarity of intent: It clearly applies a filter to matching runners and removes nonmatching runners. Code length: Concise, without unnecessary statements. Action granularity: Each body statement performs one action; the loop header combines standard initialization and iteration checks. Reading flow: Sequential and natural, although inconsistent spacing, omitted conditional braces, and the abrupt ending reduce readability.
Run 2
Code Structure: A logical loop filters runners, but missing closing braces make the snippet incomplete. Nesting: Shallow loop and conditional nesting are easy to follow. Clarity of intent: Descriptive method and variable names clearly convey filtering, applying a filter to matching runners and removing others. Code length: Concise, with no unnecessary statements. Action granularity: Each body statement performs one action; the loop header conventionally combines initialization and iteration checks. Reading flow: The sequence is natural, though inconsistent assignment spacing and omitted conditional braces slightly reduce readability.
Run 3
Code Structure: The loop and conditional are logically organized, but missing closing braces make the snippet incomplete. Nesting: Shallow nesting keeps the control flow easy to follow. Clarity of intent: Filtering runners and removing those that should not run is clear, though the distinction between shouldRun and apply requires API knowledge. Code length: Concise, with no unnecessary statements. Action granularity: Each body statement performs one action; the loop header conventionally combines iteration setup and advancement. Reading flow: Sequential and natural, but inconsistent spacing around assignments and omitted conditional braces slightly reduce readability.