Sample

Scalabrio132

Human rating uses the original dataset scale.

DatasetScalabrino
Human2.89
Lines28

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett00–1; higher is more readable
59.3Δ 47.5
Scalabrino0.4670–1; higher is more readable
45.2Δ 33.4
Dorn0.0750–1; higher is more readable
13.1Δ 1.3
Mi0.0660–1; higher is more readable
27.1Δ 15.3
LLOC14Logical lines; fewer is more readable
49.2Δ 37.4
DeepSeek V4 Pro13.330–20; mean of three runs
38.7Δ 26.9
GPT-6.1 Sol150–20; mean of three runs
19.6Δ 7.8
BTTF0.4730–1; higher is more readable
30.7Δ 18.8
Human2.891–5; original rating
11.8

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.775.26−25.584
Source linesThe number of non-empty source lines.28+11.2
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.343−6.515

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

Score0.467

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.151.964−2.771
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.0−0.804
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.1+0.398
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.06+0.36
Indentation frequencyHow rapidly indentation changes from line to line.28+0.231
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.28+0.045
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.26.686−0.037

Intercept 0.07 + feature contributions = -2.508 (log-odds).
Score = sigmoid(-2.508) = 0.075.

Score0.066
Score14
Run 1

The method is moderately readable but has notable issues. Structure is clear with a single factory creation, but intent is partially obscured by the nested anonymous classes and the null argument in HibernateTransactionManagerLookup. Nesting is moderate: two levels of anonymous classes add complexity. Action granularity and reading flow are acceptable at the top level, with one action per line for the final calls. However, code length is inflated by the override boilerplate, and the createCacheManager method could be a one-liner with a ternary. The unused 'properties' parameter in createCacheManager and the hardcoded nulls reduce clarity. Overall, it is understandable but would benefit from extracting the anonymous classes into named inner classes or methods.

Run 2

The code demonstrates moderate readability. It is well-structured with clear separation of concerns across the overridden methods, and the nesting is reasonable (at most three levels). The intent of each method is clear: one creates a transaction manager lookup, another returns an existing or newly created cache manager. Action granularity is good, with each line performing a single operation. However, readability is hindered by the long class names and the anonymous inner class instantiation, which adds visual clutter. The if-else block, while simple, could use braces for consistency and safety. Overall, the code is understandable but would benefit from simplified naming and perhaps refactoring the anonymous classes into named inner classes.

Run 3

The code is moderately readable. Structure is logical, but method chaining and anonymous classes add complexity. Nesting is acceptable but not flat due to multiple inner classes. Intent is fairly clear, though the test-specific subclass obscures production logic. Length is concise, but some lines are dense. Action granularity is mixed: single actions per line in some sections, but multi-step chained calls in others. Reading flow is natural overall, though the override order (transaction lookup before cache manager) slightly interrupts conceptual flow. The ternary-like 'if-else' block is simple, but could be cleaner with a guard clause.

Run 1

Code Structure: Factory creation, method overrides, initialization, and return are logically organized. Nesting: Nested anonymous classes increase indentation and cognitive load, though each method remains small. Clarity of intent: Method names and overrides explain the customization, but the parameter name 'p', null arguments, and fully qualified type reduce clarity. Code length: Concise overall, with some verbosity from anonymous classes and an unnecessary else after a return. Action granularity: Each statement performs a single action, making execution easy to follow. Reading flow: The flow from construction to startup and return is natural, but embedded transaction-manager setup interrupts the main factory-creation narrative. Missing braces around conditional branches slightly weaken visual consistency.

Run 2

Code Structure: Logically organized around factory creation, overridden behavior, initialization, and return, though nested anonymous classes obscure the structure. Nesting: Moderate depth from the anonymous factory and transaction-manager lookup classes adds reading complexity. Clarity of intent: Method names and overrides communicate the purpose, but the abbreviated parameter 'p', null arguments, and fully qualified type reduce clarity. Code length: Reasonably concise; the else after an immediate return is unnecessary. Action granularity: Each statement performs one action, making individual steps easy to follow. Reading flow: The outer create-start-return sequence is natural, but understanding it requires reading through embedded implementation details. Missing braces on the conditional slightly weaken visual consistency.

Run 3

Code Structure: Factory creation, method overrides, initialization, and return are logically organized. Nesting: Two nested anonymous classes introduce moderate complexity, although individual methods remain shallow. Clarity of intent: Override names and straightforward logic convey the purpose, but the vague parameter name 'p', null arguments, and fully qualified return type reduce clarity. Code length: Reasonably concise, though the explicit else after a return adds unnecessary branching syntax. Action granularity: Each statement performs one action, making operations easy to distinguish. Reading flow: Consistent indentation and spacing help, but nested class definitions interrupt the outer method's flow, and missing braces around the conditional slightly weaken visual structure.