Sample

Dorn/java/214

Human rating uses the original dataset scale.

DatasetDorn
Human3.14
Lines10

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett00–1; higher is more readable
54.9Δ 16.2
Scalabrino0.4320–1; higher is more readable
33.7Δ 5.0
Dorn0.40–1; higher is more readable
32.6Δ 6.1
Mi0.2910–1; higher is more readable
28.4Δ 10.3
LLOC4Logical lines; fewer is more readable
82.7Δ 44.0
DeepSeek V4 Pro170–20; mean of three runs
93.5Δ 54.7
GPT-6.1 Sol18.670–20; mean of three runs
97.6Δ 58.9
BTTF0.5840–1; higher is more readable
70.2Δ 31.5
Human3.141–5; original rating
38.7

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)
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.428.774−14.15
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.777−7.166
Source linesThe number of non-empty source lines.10+4

Intercept 8.87 + feature contributions = -8.446 (log-odds).
Score = sigmoid(-8.446) = 0.

Score0.432

Feature contributions

FeatureValueContribution
(log-odds)
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.0−0.804
Indentation frequencyHow rapidly indentation changes from line to line.1−0.703
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.10+0.682
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.9.75−0.274
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.83+0.15
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.089+0.077

Intercept 0.07 + feature contributions = -0.404 (log-odds).
Score = sigmoid(-0.404) = 0.4.

Score0.291
Score4
Run 1

The code is highly readable. It has a clear, logical structure with two distinct methods that each perform a single, well-defined action: retrieving votes and counting votes. Nesting is minimal, with no conditional blocks or loops. The intent is unambiguous, as method names and parameter types clearly convey what each method does. The code is concise, avoiding unnecessary boilerplate or redundancy. Each method contains a single action—delegating to a local service—which aligns with the principle of one action per line. The reading flow is natural: method signature, throws clause, then return statement. The only minor drawback is the use of fully qualified class names, which slightly increases line length and hurts readability, but this may be required based on import conventions. Overall, the code is clean, maintainable, and easy to follow.

Run 2

The code is highly readable due to its clear structure, minimal nesting, and concise delegation to a service layer. Each method has a single straightforward action with explicit parameters and return types, making the intent obvious. The use of fully qualified names adds verbosity but improves clarity for generated or interface-heavy code. Reading flow is natural, and the methods are well-organized with no unnecessary complexity or deep nesting.

Run 3

The code is highly readable due to its simple, flat structure and clear intent. Each method delegates to a corresponding service method with a one-to-one mapping, making the purpose unambiguous. Naming is consistent and descriptive. The code is concise, with no unnecessary logic or nesting. Each method performs a single action, and the reading flow is natural—parameters, exception declaration, then delegation. Minor deductions: fully qualified class names and exception declarations add verbosity, and the lack of Javadoc or comments slightly reduces clarity for new readers. However, the self-explanatory method names mitigate this. Overall, this is a clean, maintainable facade pattern implementation.

Run 1

Code Structure: Two logically separated service-delegation methods are organized consistently. Nesting: There is no nested control flow; each method contains a single return statement. Clarity of intent: Method names clearly distinguish retrieving paginated question votes from counting them, and parameter names convey their roles. Code length: The implementation is concise, although fully qualified type and exception names add visual verbosity. Action granularity: Each statement performs one straightforward delegation. Reading flow: Consistent formatting and spacing make the methods easy to scan, though wrapped signatures slightly interrupt the flow.

Run 2

Code Structure: Two clearly separated methods consistently delegate to the underlying service. Nesting: No nested logic; each method contains a single return statement. Clarity of intent: Descriptive method and parameter names clearly indicate retrieving paginated question votes and counting them. Code length: Concise implementations, although fully qualified type and exception names add visual verbosity. Action granularity: Each statement performs one delegation and returns its result. Reading flow: Consistent formatting and related methods placed together make the code easy to follow.

Run 3

Code Structure: Two logically organized methods cleanly delegate to the underlying service. Nesting: Flat method bodies with no control-flow nesting. Clarity of intent: Descriptive method and parameter names clearly convey vote retrieval, pagination, and counting. Code length: Concise implementations; fully qualified type and exception names add minor visual verbosity. Action granularity: Each method contains a single return statement performing one delegation. Reading flow: Consistent formatting and placement of the related methods make the code easy to follow.