Sample
Buse/7
Human rating uses the original dataset scale.
Scores
| Method | Score | Scale | Dataset rank (0–100) |
|---|---|---|---|
| Posnett | 0.24 | 0–1; higher is more readable | 47.5Δ 17.2 |
| Scalabrino | 0.928 | 0–1; higher is more readable | 98.5Δ 33.8 |
| Dorn | 0.81 | 0–1; higher is more readable | 87.9Δ 23.2 |
| Mi | 0.432 | 0–1; higher is more readable | 31.3Δ 33.3 |
| LLOC | 4 | Logical lines; fewer is more readable | 59.6Δ 5.1 |
| DeepSeek V4 Pro | 9.33 | 0–20; mean of three runs | 11.6Δ 53.0 |
| GPT-6.1 Sol | 13.33 | 0–20; mean of three runs | 20.7Δ 43.9 |
| BTTF | 0.67 | 0–1; higher is more readable | 86.9Δ 22.2 |
| Human | 3.63 | 1–5; original rating | 64.6 |
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. | 221.655 | −7.315 |
| 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.739 | −7.108 |
| Source linesThe number of non-empty source lines. | 11 | +4.4 |
Intercept 8.87 + feature contributions = -1.152 (log-odds).
Score = sigmoid(-1.152) = 0.24.
| Score | 0.928 |
|---|
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. | 68 | +0.785 |
| Comment layout frequencyHow frequently the layout switches between lines containing only comments or whitespace and lines containing code. | 12 | +0.611 |
| Indentation frequencyHow rapidly indentation changes from line to line. | 6 | −0.53 |
| Comment layout (horizontal)How rapidly the visual pattern of comment characters changes from left to right. | 68 | +0.293 |
| Number layout frequencyHow rapidly the number of numeric values per line changes through the code. | 6 | +0.283 |
| Identifier layout (vertical)How rapidly the visual pattern of identifier characters changes from top to bottom. | 10.87 | −0.258 |
| Operator visual areaThe share of the code’s visual area occupied by operators such as +, =, and *. | 0.077 | +0.197 |
Intercept 0.07 + feature contributions = 1.452 (log-odds).
Score = sigmoid(1.452) = 0.81.
| Score | 0.432 |
|---|
| Score | 4 |
|---|
Run 1
The code has a clear deprecation warning but suffers from readability issues. The structure is minimal but provides little context for why the constructor is problematic beyond OS/2. Nesting is flat, which is good, but clarity of intent is low—the variable names 'l', 'd', and 'cal' are ambiguous and fail to explain their roles. The code is concise, which helps, but it also feels incomplete, as it ends abruptly without showing how 'cal' is used or how the date is constructed. Action granularity is decent, with one main operation per line, but the overall reading flow is disrupted by the truncated code snippet and unclear purpose. The comment is verbose but informative, yet the implementation does not clearly connect to the deprecation warning, leaving the reader confused about the exact problem and the intended alternative.
Run 2
The code is partially readable due to its simple linear structure and minimal nesting. The deprecation warning is clear, and the conversion logic is straightforward. However, several issues reduce clarity: the parameter name 'daysSince1970' is helpful but the multiplication converts to milliseconds without explanation or named constants, making intent ambiguous. Variable names are too short ('l', 'd', 'cal'), hurting readability. The code appears incomplete—only a fragment is shown—so the full action flow and purpose cannot be evaluated. Action granularity is acceptable (one operation per line), but the overall context, missing closing braces, and unexplained computation lower the score significantly.
Run 3
The code shows basic organization with a clear deprecation warning, but several issues hurt readability. The constructor body is truncated mid-logic, leaving unclear intent and incomplete flow. Magic numbers (24, 60, 60, 1000) lack named constants, reducing clarity. The variable names 'l' and 'd' are too short and ambiguous, especially 'l' which is easily confused with '1'. The comment is somewhat verbose and could be more concise. While nesting is minimal and actions are mostly one per line, the overall structure feels incomplete and the deprecated method lacks a clear alternative. The code mixes direct date manipulation with Calendar usage without explanation. These factors result in moderately readable but confusing code.
Run 1
Code Structure: The visible constructor follows a logical sequence, but the snippet is incomplete and lacks closing braces. Nesting: Flat, with no nested control flow. Clarity of intent: The parameter name and deprecation warning provide context, but variable names l and d are vague, and the purpose of the Calendar instance is not shown. Code length: Concise, with no obvious redundancy in the visible portion. Action granularity: Each statement performs one primary action on its own line. Reading flow: The conversion from days to milliseconds and subsequent Date creation are easy to follow, though unexplained numeric factors and the abrupt ending reduce readability.
Run 2
Code Structure: The constructor presents a logical sequence, but the snippet ends before its implementation and closing brace are complete. Nesting: Flat statements are easy to follow. Clarity of intent: The parameter name and deprecation warning explain the purpose and limitations, but names like l and d are vague, and the numeric conversion lacks named constants. Code length: Concise, with no obvious redundancy in the visible portion. Action granularity: Each statement performs one main action on its own line. Reading flow: The progression from days to milliseconds to a Date is natural, but the Calendar initialization has no visible connection to subsequent work.
Run 3
Code Structure: The visible constructor follows a simple, logical sequence, but the incomplete snippet lacks closing braces and subsequent initialization. Nesting: Flat, with no nested control flow. Clarity of intent: daysSince1970 and the deprecation warning convey purpose, but single-letter variables l and d obscure meaning, and the numeric conversion lacks explanation. Code length: Concise, with little unnecessary code. Action granularity: Each statement performs one main action, although the conversion combines several arithmetic operations. Reading flow: Natural progression from day count to milliseconds, Date creation, and Calendar acquisition; however, the relationship between d and cal is not shown.