Sample

Buse/50

Human rating uses the original dataset scale.

DatasetBuse
Human4.17
Lines8

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.8620–1; higher is more readable
85.9Δ 10.1
Scalabrino0.7680–1; higher is more readable
48.5Δ 47.5
Dorn0.690–1; higher is more readable
63.6Δ 32.3
Mi0.6670–1; higher is more readable
70.7Δ 25.3
LLOC6Logical lines; fewer is more readable
11.6Δ 84.3
DeepSeek V4 Pro16.330–20; mean of three runs
77.3Δ 18.7
GPT-6.1 Sol12.670–20; mean of three runs
17.2Δ 78.8
BTTF0.6190–1; higher is more readable
78.8Δ 17.2
Human4.171–5; original rating
96.0

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.3.612−5.418
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.145.947−4.816
Source linesThe number of non-empty source lines.8+3.2

Intercept 8.87 + feature contributions = 1.835 (log-odds).
Score = sigmoid(1.835) = 0.862.

Score0.768

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.54+1.378
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
Indentation frequencyHow rapidly indentation changes from line to line.1−0.703
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.7.836−0.3
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.096+0.01

Intercept 0.07 + feature contributions = 0.802 (log-odds).
Score = sigmoid(0.802) = 0.69.

Score0.667
Score6
Run 1

The code is concise and shows clear intent: it checks focus before stopping a blink and then toggles opacity. Structure is logical with a flat flow. Each action is on its own line, and the reading flow is natural. Minor deductions are for the empty line after the first if statement, which slightly disrupts flow, and for relying on a boolean variable that could be inverted for clarity. Overall, the snippet is highly readable and easy to understand.

Run 2

The code snippet is generally readable but incomplete, making full evaluation difficult. Structure is logical: the method checks focus state and then toggles a blinking effect. Nesting is flat, with only two top-level if statements and no deep indentation. Clarity of intent is decent—the method name and if conditions make purpose reasonably clear, though the overall class context is missing. Code length is concise. Action granularity is good, with one action per line after each condition. Reading flow is natural: stop blinking if focus is lost, then toggle visual state if blinking is active. However, the snippet ends mid-method, leaving the logic incomplete. The missing closing braces and any else or additional handling reduce confidence. The first if block could also be combined or commented for clarity, but overall the code is approachable for a maintainer.

Run 3

The code is very readable. It uses a clear, flat structure with minimal nesting, just one `if` block. Each action has its own line, and the intent (stopping blinking when unfocused, toggling opacity) is evident from method and variable names. The method is concise and follows a natural flow: check focus, then update visual state. Minor points deducted only because the snippet is incomplete, so the full context of `actionPerformed` and the second `if` block's continuation is unclear.

Run 1

Code Structure: The visible logic is organized into two distinct conditional blocks, but the snippet ends abruptly with missing closing braces. Nesting: Shallow nesting makes the statements easy to follow. Clarity of intent: Names such as stopBlinking and blinkOn communicate blinking behavior, although the relationship between focus, opacity, and blink state is only partially visible. Code length: The snippet is concise without apparent redundancy. Action granularity: Each statement performs one action on its own line. Reading flow: Formatting and spacing support a natural top-to-bottom flow, but the incomplete second block prevents understanding the full method.

Run 2

Code Structure: The visible logic is organized into two distinct conditional blocks, but the snippet is incomplete and lacks closing braces. Nesting: Shallow conditionals make the code easy to follow. Clarity of intent: Names such as hasFocus, stopBlinking, and blinkOn communicate focus and blinking behavior, though the relationship between stopping blinking and updating opacity is not fully explained. Code length: The snippet is concise without apparent redundancy. Action granularity: Each statement performs one action on its own line. Reading flow: Consistent indentation and spacing support natural reading, but the abrupt ending prevents assessment of the complete method.

Run 3

Code Structure: The visible statements are logically grouped into two conditional blocks, but the snippet is incomplete and lacks closing braces. Nesting: Shallow nesting makes the shown logic easy to follow. Clarity of intent: Names such as stopBlinking and blinkOn communicate purpose, although the relationship between focus loss and the second condition is not fully explained. Code length: The snippet is concise with no obvious redundancy. Action granularity: Each statement performs one action on its own line. Reading flow: Consistent indentation and whitespace support natural reading, but the abrupt ending prevents understanding the complete handler.