Sample
Scalabrio189
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0 | 0–1; higher is more readable | 33.2Δ 12.3 |
| Scalabrino | 0.561 | 0–1; higher is more readable | 55.3Δ 9.8 |
| Dorn | 0.353 | 0–1; higher is more readable | 41.2Δ 4.3 |
| Mi | 0.112 | 0–1; higher is more readable | 37.2Δ 8.3 |
| LLOC | 20 | Logical lines; fewer is more readable | 25.9Δ 19.6 |
| DeepSeek V4 Pro | 13.67 | 0–20; mean of three runs | 43.2Δ 2.3 |
| GPT-6.1 Sol | 18 | 0–20; mean of three runs | 83.7Δ 38.2 |
| BTTF | 0.541 | 0–1; higher is more readable | 52.8Δ 7.3 |
| Human | 3.56 | 1–5; original rating | 45.5 |
Views
Select the downloaded ZIP or its extracted folder. Files stay in your browser.
Loading feature diagnosis…
Source regions
Feature contributions
Feature contributions
| Feature | Value | Contribution (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. | 1170.995 | −38.643 |
| Source linesThe number of non-empty source lines. | 36 | +14.4 |
| 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.869 | −7.304 |
Intercept 8.87 + feature contributions = -22.676 (log-odds).
Score = sigmoid(-22.676) = 0.
| Score | 0.561 |
|---|
Feature contributions
| Feature | Value | Contribution (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. | 112.944 | −1.119 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 106.722 | +0.917 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 33 | −0.336 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 36 | −0.238 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 34.842 | +0.077 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 23 | +0.058 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.101 | −0.037 |
Intercept 0.07 + feature contributions = -0.607 (log-odds).
Score = sigmoid(-0.607) = 0.353.
| Score | 0.112 |
|---|
| Score | 20 |
|---|
Run 1
The code is generally well-structured and readable. It follows a clear pattern for each revision: begin transaction, create entity, persist, commit, store ID. Comments help delineate revisions. The action granularity is good, with each operation on its own line. However, the code length is somewhat long due to repetitive transaction blocks, and the table mapping section could be more concise or extracted. Nesting is flat, and the reading flow is natural, moving from entity creation to table assignment. The main drawbacks are the repetitive transaction code and the long fully-qualified class names, which reduce conciseness. Overall, the intent is clear, but the code could benefit from a helper method to reduce boilerplate.
Run 2
The code is structured into clear, labeled revision blocks, which aids logical organization. Each block performs a transaction, persists an entity, and stores its ID, making the intent easy to follow. The listing of table mappings at the end is also logically grouped. However, readability is slightly reduced by long fully qualified class names and some repetitive transaction boilerplate that could be extracted. Nesting is minimal and action granularity is decent, though a few lines combine multiple operations. Overall the flow is natural and concise for a test setup method.
Run 3
The code is logically organized into clear revision blocks and uses comments to separate steps, which helps readability. However, it suffers from repetitive boilerplate: each revision requires four near-identical lines (getTransaction, begin, persist, commit). Nesting is flat, and each action is on its own line, but the repeated transaction handling increases cognitive load. The final section assigning table mappings is dense and verbose, mixing long class strings with method calls. While variable names and intent are clear, the code could be significantly shortened by extracting a helper method for persisting an entity or by using a transaction template. Overall, the structure is sound but the verbosity and repetitive pattern reduce readability for someone unfamiliar with the test setup.
Run 1
Code Structure: Three clearly separated revision blocks followed by table lookups provide logical organization. Nesting: The method is flat, with no nested control flow. Clarity of intent: Descriptive entity and table names, revision comments, and explicit transaction boundaries make the test setup understandable, though positional constructor arguments provide limited context. Code length: Reasonably concise; repeated transaction sequences add some length but make each revision explicit. Action granularity: Each statement performs one primary action, with short method chains remaining easy to follow. Reading flow: Consistent formatting and chronological revision order support natural reading; long fully qualified mapping strings slightly interrupt the flow.
Run 2
Code Structure: Three clearly separated revision blocks followed by table lookups provide logical organization. Nesting: The method is flat, with no nested control flow. Clarity of intent: Descriptive entity names, revision comments, and explicit transaction boundaries make the test setup understandable, although positional constructor arguments and mapping strings require domain knowledge. Code length: Reasonably concise; transaction boilerplate and repeated lookups add some repetition but preserve visibility of revision boundaries. Action granularity: Each statement performs one main action, making execution easy to track. Reading flow: The consistent begin-persist-commit-ID sequence reads naturally, followed by related table assignments. Long class names and wrapped lookup chains slightly interrupt the otherwise clear flow.
Run 3
Code Structure: Clearly organized into three revision-specific setup blocks followed by audit-table lookups. Nesting: Flat, with no nested control flow. Clarity of intent: Descriptive entity and table names, transaction boundaries, and revision comments make the initialization purpose clear; positional constructor arguments and hard-coded mapping names require some domain knowledge. Code length: Reasonably concise, although repeated transaction and persistence sequences add modest duplication. Action granularity: Each statement performs one primary action; chained table lookups remain understandable. Reading flow: Sequential execution, consistent formatting, and blank lines make the method easy to follow. Long fully qualified mapping strings slightly interrupt the otherwise natural flow.