Sample

Scalabrio92

Human rating uses the original dataset scale.

DatasetScalabrino
Human4.56
Lines15

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.0020–1; higher is more readable
78.4Δ 16.3
Scalabrino0.4440–1; higher is more readable
41.2Δ 53.5
Dorn0.1850–1; higher is more readable
23.6Δ 71.1
Mi0.3040–1; higher is more readable
58.3Δ 36.4
LLOC7Logical lines; fewer is more readable
81.7Δ 13.1
DeepSeek V4 Pro15.670–20; mean of three runs
72.9Δ 21.9
GPT-6.1 Sol160–20; mean of three runs
34.7Δ 60.1
BTTF0.4590–1; higher is more readable
27.1Δ 67.6
Human4.561–5; original rating
94.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.416.756−13.753
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.831−7.246
Source linesThe number of non-empty source lines.15+6

Intercept 8.87 + feature contributions = -6.129 (log-odds).
Score = sigmoid(-6.129) = 0.002.

Score0.444

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.171−3.578
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.171+1.955
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.15+0.505
Indentation frequencyHow rapidly indentation changes from line to line.11−0.357
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.13.75−0.218
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.14+0.1
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.093+0.04

Intercept 0.07 + feature contributions = -1.482 (log-odds).
Score = sigmoid(-1.482) = 0.185.

Score0.304
Score7
Run 1

The code is well-structured and easy to follow. It demonstrates a clear test setup, execution, and assertion flow. Nesting is minimal, and the single query call, while long, uses method chaining concisely. Action granularity is reasonable—setup, execution, assertion, and cleanup are on separate lines. The commented-out debug print slightly disrupts the reading flow but is minor. The intent is clear: verify that a distinct select with a join does not return duplicate entries. Overall, the code is readable, though a constant for the query string or splitting the chained call could improve clarity.

Run 2

The code is generally readable with clear intent: it tests distinct selection with a join, seeds data, executes a query, and verifies no duplicate entries. Structure is logical and the test method is flat with minimal nesting. The main readability issue is the long query construction chained across one line, which reduces clarity and makes it harder to scan. Action granularity could be improved by breaking the query setup into separate lines. The commented-out debug statement adds minor noise. The warning suppression is unnecessary for readability. Overall, the code is concise but could benefit from formatting improvements.

Run 3

The code is generally clear and well-structured for a short test method. It follows a natural flow: setup, query, assertion, cleanup. Nesting is minimal, and the intent is evident from method and variable names. The main readability issue is the long query chain on a single line, which mixes multiple actions (query construction, pagination, execution). Extracting the query into a variable or splitting the chain across lines would improve readability and action granularity. The commented-out print statement is minor clutter. Overall, the code is concise and purposeful, but could be slightly more readable with better line breaks and separation of query configuration.

Run 1

Code Structure: The test follows a logical setup, query, assertion, and cleanup sequence. Nesting: The method is flat, with no nested control flow. Clarity of intent: The method name and assertion clearly communicate the distinct-selection test, though the short session variable name and mutation of the result list require minor interpretation. Code length: The method is concise, but the commented-out debug statement adds clutter. Action granularity: Most lines perform one action, while the long query line combines query creation, pagination, and execution. Reading flow: The sequence is natural, but long lines, inconsistent annotation spacing, and the typo in the assertion message reduce polish.

Run 2

Code Structure: The test follows a logical setup, query, assertion, and cleanup sequence. Nesting: The method is flat, with no nested control flow. Clarity of intent: The method name and query clearly identify the distinct-join behavior being tested, but the assertion checks duplicates only for the first entry, and the variable name 's' is vague. Code length: The code is concise, though the commented-out debug statement adds clutter. Action granularity: Most lines perform one action, but query creation, pagination configuration, and execution are chained on a single long line. Reading flow: Execution proceeds naturally, but long query and assertion lines, inconsistent formatting, and the misspelling in the assertion message reduce readability.

Run 3

Code Structure: The test follows a logical setup, query, assertion, and cleanup sequence. Nesting: The method is flat, with no nested control flow. Clarity of intent: The test name and assertion clearly communicate the distinct-selection check, though the abbreviated variable 's', unexplained pagination values, and mutation of the results list reduce clarity. Code length: The method is concise, but the commented-out print statement adds clutter. Action granularity: Most statements perform one action, while the query line combines query creation, pagination configuration, and execution in a long chain. Reading flow: Execution proceeds naturally, but long query and assertion lines impede scanning; the misspelling in the assertion message and inconsistent annotation formatting also detract slightly.