Sample

Buse/4

Human rating uses the original dataset scale.

DatasetBuse
Human4.03
Lines13

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.9710–1; higher is more readable
98.0Δ 9.1
Scalabrino0.9230–1; higher is more readable
97.0Δ 8.1
Dorn0.7950–1; higher is more readable
82.8Δ 6.1
Mi0.7290–1; higher is more readable
88.9Δ 0.0
LLOC5Logical lines; fewer is more readable
29.8Δ 59.1
DeepSeek V4 Pro15.330–20; mean of three runs
65.7Δ 23.2
GPT-6.1 Sol170–20; mean of three runs
62.1Δ 26.8
BTTF0.6190–1; higher is more readable
77.8Δ 11.1
Human4.031–5; original rating
88.9

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.34−6.509
Source linesThe number of non-empty source lines.13+5.2
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.123.19−4.065

Intercept 8.87 + feature contributions = 3.495 (log-odds).
Score = sigmoid(3.495) = 0.971.

Score0.923

Feature contributions

FeatureValueContribution
(log-odds)
Indentation frequencyHow rapidly indentation changes from line to line.1−0.703
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.026+0.689
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.14+0.541
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.76.714+0.416
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.12.91−0.229
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.60.714+0.175

Intercept 0.07 + feature contributions = 1.357 (log-odds).
Score = sigmoid(1.357) = 0.795.

Score0.729
Score5
Run 1

The code is readable with clear intent and logical structure. Field assignments are one per line, and parameters are well-named, though the comment is verbose and includes design discussion that may be outdated. The constructor's role is straightforward, but the dependency issue noted in the comment suggests potential design debt. Overall, the code is concise, flat, and easy to follow.

Run 2

The code is generally clear and readable. It has a logical structure with a constructor that initializes fields directly. The nesting is minimal, with no deep nesting. The intent is mostly clear, though the purpose of 'inGrantee' is not immediately obvious from the code itself (only the comment hints at it). The code is concise and not unnecessarily long. Each line performs a single action, which is good. The reading flow is natural, with fields initialized in a logical order. However, the unused 'inGrantee' parameter and the extensive comment about a design issue slightly reduce clarity, as they introduce ambiguity about the code's current state and future direction.

Run 3

The code is reasonably readable with clear intent: it initializes a Grantee object with a name, optional reference, and manager, while documenting a known design smell. The constructor is flat with minimal nesting and each assignment line contains a single action. Javadoc comments explain non-obvious null semantics and architectural debt, improving clarity. However, readability is reduced by the use of unexplained abbreviations (e.g., 'man', 'inGrantee', 'IntValueHashMap') and alignment-based formatting that could be seen as slightly unconventional. The code is concise but lacks context for the fields being initialized, which may require readers to reference the class definition. Overall, it's clean and straightforward but not maximally self-documenting.

Run 1

Code Structure: The constructor logically groups straightforward field initialization. Nesting: There is no nested control flow. Clarity of intent: Assignments are clear, but abbreviated names such as 'man' and the unexplained 'inGrantee' parameter weaken clarity; the comment explains context and a design concern. Code length: The visible implementation is concise, though the comment is relatively long for three assignments. Action granularity: Each statement performs one action on its own line. Reading flow: Consistent indentation and aligned assignments make scanning easy, but the missing closing brace and unused parameter in this incomplete excerpt prevent a fully clear view of the constructor.

Run 2

Code Structure: The constructor is logically organized, with related initialization statements grouped together. Nesting: The code is flat and easy to scan. Clarity of intent: Assignments clearly initialize grantee state, and the comment provides context, but parameter names such as 'man' and 'inGrantee' are vague; 'inGrantee' is not used in the visible excerpt. Code length: The implementation is concise, although the architectural commentary is somewhat verbose. Action granularity: Each line performs a single assignment. Reading flow: Consistent indentation and aligned assignments support natural reading, but the incomplete constructor limits assessment of the overall flow.

Run 3

Code Structure: Constructor initialization is logically organized, although the snippet is incomplete. Nesting: Flat, with no nested control flow. Clarity of intent: Assignments clearly initialize instance fields, but parameter names such as 'man' and 'inGrantee' are less descriptive, and the comment's 'User Object' terminology differs from the Grantee type. Code length: Concise; the dependency commentary adds useful design context. Action granularity: Each assignment occupies its own line. Reading flow: Documentation, signature, and initialization follow a natural sequence, with aligned assignments aiding scanning. The unfinished constructor limits assessment of its overall readability.