Sample

Buse/74

Human rating uses the original dataset scale.

DatasetBuse
Human3.81
Lines6

Scores

MethodScoreScaleDataset rank
(0–100)
Posnett0.510–1; higher is more readable
63.6Δ 10.6
Dorn0.5460–1; higher is more readable
38.4Δ 35.9
Mi0.2990–1; higher is more readable
17.2Δ 57.1
LLOC4Logical lines; fewer is more readable
59.6Δ 14.6
DeepSeek V4 Pro100–20; mean of three runs
15.2Δ 59.1
GPT-6.1 Sol160–20; mean of three runs
47.0Δ 27.3
BTTF0.4750–1; higher is more readable
43.4Δ 30.8
Human3.811–5; original rating
74.2

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.091−6.137
Halstead volumeHow much symbolic information the code contains. It combines the total number of operators and values with the number of distinct ones.154.287−5.091
Source linesThe number of non-empty source lines.6+2.4

Intercept 8.87 + feature contributions = 0.042 (log-odds).
Score = sigmoid(0.042) = 0.51.

Feature contributions

FeatureValueContribution
(log-odds)
Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right.0−0.804
Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code.7+0.788
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.68.857+0.749
Indentation frequencyHow rapidly indentation changes from line to line.6−0.53
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.5.814−0.329
Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *.0.113−0.159

Intercept 0.07 + feature contributions = 0.184 (log-odds).
Score = sigmoid(0.184) = 0.546.

Score0.299
Score4
Run 1

The snippet lacks sufficient context to evaluate structure, but within these lines, several issues reduce readability. The variable declarations before the loop are unclear without seeing types or initialization, making intent ambiguous. The while loop uses an iterator manually, which is verbose compared to a for-each loop. Multiple actions are packed into each line inside the loop—assignment, method call, and cast—reducing clarity. The reading flow is disjointed because 'methods' is assigned in the loop but its usage is not shown, leaving the purpose unclear. Nesting is minimal, and the code is concise, but variable naming and method names suggest domain-specific logic that is not self-explanatory. Overall, the lack of context and dense lines make it difficult to read confidently.

Run 2

The code is fairly readable but has some issues. It shows a clear structure with an iterator and while loop, and the action granularity is good—one action per line. However, nesting is minimal, which is positive. The main problems are ambiguity: variable types and origins (classNameSet, andAliases, iterateRoutineMethods) are unexplained, making intent unclear without surrounding context. The variable 'methods' is assigned but not used in the snippet, raising questions about purpose. Naming is acceptable but could be more descriptive. Overall, it's understandable but lacks clarity of intent and context.

Run 3

The code is relatively clear and concise with a flat structure and one action per line, making basic intent easy to follow. However, it lacks context: variable types, the purpose of iterating class names, and the role of 'andAliases' are unclear without surrounding code. The inconsistent alignment of assignments ('className =' vs 'methods =') slightly disrupts reading flow. Overall, it is readable but would benefit from more descriptive naming and surrounding context.

Run 1

Code Structure: Straightforward iterator setup followed by a loop, though the fragment lacks a closing brace and surrounding context. Nesting: Only one loop level, making it easy to follow. Clarity of intent: Descriptive names indicate iteration over class names and retrieval of routine methods; andAliases is less self-explanatory. Code length: Concise, with no apparent unnecessary statements. Action granularity: Each line performs one main action. Reading flow: Natural progression from obtaining the iterator to retrieving each class name and its methods. The explicit String cast and uneven assignment spacing slightly reduce readability.

Run 2

Code Structure: A straightforward iterator loop logically organizes class processing, though the snippet is incomplete. Nesting: Only one loop level keeps complexity low. Clarity of intent: Descriptive names suggest iterating classes and obtaining their methods, but iterateRoutineMethods and andAliases leave some behavior unclear. Code length: Concise, with little extraneous code, although an enhanced for-loop could simplify iteration. Action granularity: Each line performs one primary operation. Reading flow: Initialization, iteration, and method retrieval follow a natural sequence; inconsistent assignment spacing and the missing closing brace slightly impede readability.

Run 3

Code Structure: Logically organized as iterator setup followed by iteration and method retrieval. Nesting: A single loop keeps nesting shallow. Clarity of intent: Names communicate iteration over class names and retrieval of routine methods, although andAliases is unclear without context. Code length: Concise, with no unnecessary statements. Action granularity: Each line performs one primary action. Reading flow: Natural sequential progression, though the explicit iterator and String cast add minor overhead. The snippet ends without a closing brace, leaving the loop's full structure and subsequent use of methods unknown.