Sample
Buse/9
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.331 | 0–1; higher is more readable | 54.5Δ 39.4 |
| Scalabrino | 0.875 | 0–1; higher is more readable | 84.8Δ 9.1 |
| Dorn | 0.595 | 0–1; higher is more readable | 50.5Δ 43.4 |
| Mi | 0.853 | 0–1; higher is more readable | 100.0Δ 6.1 |
| LLOC | 5 | Logical lines; fewer is more readable | 29.8Δ 64.1 |
| DeepSeek V4 Pro | 14.33 | 0–20; mean of three runs | 50.5Δ 43.4 |
| GPT-6.1 Sol | 12.33 | 0–20; mean of three runs | 14.1Δ 79.8 |
| BTTF | 0.598 | 0–1; higher is more readable | 70.7Δ 23.2 |
| Human | 4.13 | 1–5; original rating | 93.9 |
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. | 218.512 | −7.211 |
| 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.241 | −6.362 |
| Source linesThe number of non-empty source lines. | 10 | +4 |
Intercept 8.87 + feature contributions = -0.703 (log-odds).
Score = sigmoid(-0.703) = 0.331.
| Score | 0.875 |
|---|
Feature contributions
| Feature | Value | Contribution (log-odds) |
|---|---|---|
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 11 | +0.647 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 7 | −0.495 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 1 | +0.398 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 29 | −0.337 |
| 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. | 79 | +0.319 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 9.9 | −0.271 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.091 | +0.056 |
Intercept 0.07 + feature contributions = 0.387 (log-odds).
Score = sigmoid(0.387) = 0.595.
| Score | 0.853 |
|---|
| Score | 5 |
|---|
Run 1
The code is highly readable with clear structure and intent. It uses a straightforward while-loop to iterate over a map's values, casts each entry to Database, and adds the URI to a Vector. The Javadoc comment clearly explains the method's purpose. Indentation is consistent, and nesting is minimal (only one level inside the loop). Action granularity is reasonable, though the cast and method call could be slightly more concise. The use of raw types (Vector, Iterator, Database) is outdated but not inherently unreadable. The method name is descriptive, and the logic flows naturally from iteration to extraction to addition. Minor improvements could include using generics and a for-each loop, but the code remains clear and maintainable as-is.
Run 2
The code is partially readable due to a clear method name, a helpful Javadoc comment, and straightforward iteration logic. However, it uses raw collection types like Vector and Iterator, which obscure intent and type safety, and the variable names ('v', 'it') are too terse. The method also mixes levels of abstraction but is not deeply nested. Overall the structure is simple but not modern or self-documenting.
Run 3
The code shows moderate readability. Structure is logical for a simple iterator pattern, and intent is mostly clear from the Javadoc. Nesting is flat and action granularity is one action per line. However, several issues reduce clarity: raw types (Vector, Iterator) without generics, an unnecessary cast to Database, and non-descriptive variable names like 'v' and 'it'. The code is cut off mid-loop, making full evaluation difficult. Improved naming and generics would raise the score.
Run 1
Code Structure: The visible portion is logically organized into initialization and database iteration, but the snippet is incomplete. Nesting: A single while loop keeps nesting shallow. Clarity of intent: The method name and documentation clearly state its purpose, but the URI extraction, vector population, and return are missing; the variable name v is vague. Code length: The visible code is concise without unnecessary statements. Action granularity: Each statement performs one main action, although iterator retrieval chains calls. Reading flow: Execution proceeds naturally from setup to iteration, but the abrupt ending prevents assessment of the complete method. Raw collection types and the explicit cast slightly reduce readability.
Run 2
Code Structure: The visible setup and iteration are logically organized, but the snippet ends before the loop body and method are completed. Nesting: Only one loop level is shown, making the code easy to follow. Clarity of intent: The method name and comment clearly describe the goal, but the generic name 'v' and missing URI collection logic reduce clarity. Code length: The visible code is concise without unnecessary statements. Action granularity: Each statement performs one action, with no crowded lines. Reading flow: Initialization followed by iteration is natural, though inconsistent spacing, raw collection types, and the abrupt ending hinder readability.
Run 3
Code Structure: The visible fragment follows a logical sequence—create a collection, obtain an iterator, and traverse databases—but the method is incomplete. Nesting: A single loop keeps nesting shallow. Clarity of intent: The method name and comment clearly describe the goal, though terse names such as v and it and raw collection types reduce clarity. Code length: The fragment is concise, without unnecessary logic. Action granularity: Each statement performs one primary action. Reading flow: Execution proceeds naturally, but inconsistent spacing and the missing URI extraction, collection population, return statement, and closing braces prevent evaluating the complete flow.