Sample

Dorn/java/108

Human rating uses the original dataset scale.

DatasetDorn
Human3.71
Lines50

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.0010–1; higher is more readable
61.8Δ 15.6
Scalabrino0.8750–1; higher is more readable
94.2Δ 16.7
Dorn0.690–1; higher is more readable
64.1Δ 13.4
Mi0.6020–1; higher is more readable
63.2Δ 14.2
LLOC16Logical lines; fewer is more readable
43.7Δ 33.7
DeepSeek V4 Pro15.330–20; mean of three runs
79.9Δ 2.5
GPT-6.1 Sol15.330–20; mean of three runs
58.6Δ 18.8
BTTF0.4960–1; higher is more readable
44.0Δ 33.4
Human3.711–5; original rating
77.4

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.849.852−28.045
Source linesThe number of non-empty source lines.50+20
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.93−7.394

Intercept 8.87 + feature contributions = -6.569 (log-odds).
Score = sigmoid(-6.569) = 0.001.

Score0.875

Feature contributions

FeatureValueContribution
(log-odds)
Indentation frequencyHow rapidly indentation changes from line to line.46+0.854
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.51−0.769
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.70.961+0.66
Number layout frequencyHow rapidly the number of numeric values per line changes through the code.46−0.635
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.71+0.341
Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom.49.875+0.287
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.098−0.006

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

Score0.602
Score16
Run 1

The code is generally readable with clear getter/setter methods and straightforward string formatting. Method names clearly express their purpose, and each method performs a single action. The toString() and toShortString() methods use reasonable line breaks for readability. However, the toString() method has some formatting inconsistencies (e.g., 'PlaformMessage' typo, missing spaces between labels and values), and the string concatenation could be more structured. The magic number 32767 lacks a named constant, reducing clarity. The incomplete method at the beginning suggests a truncated snippet, making it harder to assess overall structure. Minor issues with consistent spacing and error handling in the substring logic slightly impact readability, but the code remains understandable and maintainable overall.

Run 2

The code is generally readable but has some issues. The getter/setter methods are clear and follow standard naming conventions. The toString() method is somewhat cluttered with string concatenation and has a magic number (32767) that lacks explanation. There's a typo in 'PlaformMessage' and inconsistent spacing in concatenation. The toShortString() method is concise and clear. Nesting is minimal, which is good, but the ternary operator in toString() adds slight complexity. The structure is logical with related methods grouped together. Overall flow is natural, but the code could benefit from better formatting and extracting magic numbers into constants. The methods are appropriately granular, each performing a single action.

Run 3

The code is generally readable with clear method names (getMessageID, toShortString) and straightforward getter/setter patterns. Structure is logical, nesting is minimal, and actions are mostly one per line. However, several issues reduce clarity: the toString() method has inconsistent string concatenation (missing separators before contentNetworkID and lSequenceNo), contains a typo in 'PlaformMessage', and uses a magic number (32767) without explanation. The sendAZID() method has an empty Javadoc comment, and the class context is missing, making it harder to assess intent. The ternary in toString() is split across multiple lines but remains readable. Overall, the code is concise and maintains a natural reading flow, but minor formatting inconsistencies and unclear elements prevent a higher score.

Run 1

Code Structure: Methods are logically separated into accessors and string representations, though the snippet starts mid-method. Nesting: Very shallow, with only simple ternary expressions. Clarity of intent: Accessors are clear; toString formatting is less explicit, and names such as lSequenceNo and sendAZID, the 'PlaformMessage' typo, and empty @return documentation reduce clarity. Code length: Mostly concise, but the string concatenation spans unnecessarily many lines. Action granularity: Generally one action per statement; the toString return combines formatting and truncation. Reading flow: Consistent indentation and straightforward methods support easy reading, but fragmented concatenation and the unexplained 32767 limit interrupt the flow.

Run 2

Code Structure: Methods are logically separated into accessors and string representations, but the excerpt begins mid-method, reducing context. Nesting: Very shallow; only inline ternary expressions add complexity. Clarity of intent: Most method names communicate their purpose, though lSequenceNo, sendAZID, and the unexplained 32767 limit are less clear. The 'PlaformMessage' typo and unlabeled output fields weaken clarity. Code length: Generally concise, but toString spreads a straightforward concatenation across many lines. Action granularity: Statements perform single actions; the string construction combines several formatting operations but remains understandable. Reading flow: Accessors are easy to scan, while excessive concatenation line breaks interrupt toString's flow. The empty @return documentation adds little value.

Run 3

Code Structure: Methods are logically separated into accessors and string representations, though the snippet begins mid-method. Nesting: Very shallow, with only simple conditional expressions. Clarity of intent: Accessors are clear, but sendAZID, lSequenceNo, and the unlabeled fields in toString require context; the 'PlaformMessage' typo and empty @return documentation reduce clarity. Code length: Mostly concise, although toString spreads straightforward concatenation across many lines. Action granularity: Statements generally perform one action each; the string-building expression remains a single coherent operation. Reading flow: Consistent formatting and short methods make scanning easy, but fragmented concatenation and the embedded truncation conditional interrupt the flow.