Sample

Dorn/java/128

Human rating uses the original dataset scale.

DatasetDorn
Human4.15
Lines9

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.730–1; higher is more readable
84.1Δ 11.4
Dorn0.7580–1; higher is more readable
72.1Δ 23.4
Mi0.7090–1; higher is more readable
86.1Δ 9.5
LLOC2Logical lines; fewer is more readable
93.7Δ 1.8
DeepSeek V4 Pro12.330–20; mean of three runs
55.8Δ 39.7
GPT-6.1 Sol140–20; mean of three runs
41.4Δ 54.2
BTTF0.5890–1; higher is more readable
70.8Δ 24.8
Human4.151–5; original rating
95.5

Views

Download official ZIP ↗

Select the downloaded ZIP or its extracted folder. Files stay in your browser.

Loading feature diagnosis…

Source regions

Feature contributions

Feature contributions

FeatureValueContribution
(log-odds)
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.708−7.063
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.133.783−4.415
Source linesThe number of non-empty source lines.9+3.6

Intercept 8.87 + feature contributions = 0.993 (log-odds).
Score = sigmoid(0.993) = 0.73.

Feature contributions

FeatureValueContribution
(log-odds)
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.50.9+1.509
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.10+0.682
Indentation frequencyHow rapidly indentation changes from line to line.8−0.46
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.8.846−0.286
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.093+0.035

Intercept 0.07 + feature contributions = 1.144 (log-odds).
Score = sigmoid(1.144) = 0.758.

Score0.709
Score2
Run 1

The code is very short, but it lacks sufficient context. There is no constructor, no methods, and no documentation. The class 'ConnectionPoints' contains two fields only: a Point array and a boolean flag. While the structure is simple and flat, the intent is unclear—what does 'pointsAreLeftOfWindow' mean? The naming is somewhat ambiguous. For such a small snippet, readability is limited because it is incomplete. However, the fields are clearly named enough to hint at their purpose, and the layout is clean.

Run 2

The code is readable and well-structured: it has a clear package declaration, a single import, and a clean class definition with two fields. Naming is intuitive ('ConnectionPoints', 'points', 'pointsAreLeftOfWindow'). There is no unnecessary nesting or complexity. However, the snippet is very short and lacks context—methods, constructors, or comments are absent, which limits a full assessment of intent and action granularity. The blank line at the end is harmless but suggests an incomplete file. Score reflects good readability for what is shown, but not full marks due to brevity and missing implementation details.

Run 3

The code is incomplete, showing only a package declaration, import, class declaration, and two fields. Structure is logical but minimal. Nesting is absent, which is fine. Clarity of intent is low because the fields lack documentation or context; 'ConnectionPoints' and 'pointsAreLeftOfWindow' suggest purpose but not behavior. Code length is short, but that is only due to truncation. Action granularity and reading flow cannot be fully assessed without methods. The field name 'points' is generic and the boolean is unclear. Overall, the snippet is not unreadable but lacks enough substance to demonstrate good readability.

Run 1

Code Structure: A straightforward package, import, class, and field layout, but the missing closing brace makes the snippet incomplete. Nesting: Minimal, with only class-level declarations. Clarity of intent: ConnectionPoints and pointsAreLeftOfWindow suggest a graphical purpose, though points is generic and the fields lack explanatory context. Code length: Very concise, without unnecessary statements. Action granularity: Each field declaration occupies its own line. Reading flow: Natural top-to-bottom organization and consistent indentation, weakened by the abrupt ending and wildcard import.

Run 2

Code Structure: The package, import, class, and fields follow a conventional Java organization, but the snippet lacks a closing class brace. Nesting: Only class-level nesting makes it easy to scan. Clarity of intent: ConnectionPoints and pointsAreLeftOfWindow convey their roles, although points is generic and the class's behavior is not shown. Code length: Very concise, with no unnecessary logic. Action granularity: Each field declaration occupies its own line. Reading flow: The top-to-bottom layout is natural and spacing is consistent, though the trailing blank lines and incomplete class interrupt the flow. The wildcard import is less explicit than importing java.awt.Point directly.

Run 3

Code Structure: The package, import, class, and fields follow a logical order, but the snippet is incomplete and lacks a closing class brace. Nesting: Minimal nesting makes it easy to scan. Clarity of intent: ConnectionPoints and pointsAreLeftOfWindow suggest a collection of connection coordinates and their position relative to a window, though their precise role is undocumented. Code length: Very concise, with no unnecessary implementation. Action granularity: Each field declaration occupies its own line. Reading flow: Conventional ordering and consistent indentation support a natural flow, but the abrupt ending interrupts comprehension. The wildcard import and implicit package-private field visibility slightly reduce explicitness.