SShortSingh.
Back to feed

Why GPA Calculators Get Conversions Wrong — and How to Build One That Doesn't

0
·1 views

GPA scales across countries — such as the US 4.0, India's 10.0 CGPA, and France's 20.0 — measure academic performance using fundamentally different grading bands and conventions, making direct linear conversion between them mathematically misleading. A developer argues that the common one-line rescaling formula produces numbers that appear precise but carry no real meaning, since a French 14/20 (a strong grade) incorrectly maps to a US B− under linear conversion. The more impactful everyday bug, however, is failing to apply credit-weighted averaging — using a simple mean instead of weighting each course by its credit hours — which skews results whenever courses carry different credit loads. Rounding policy adds another layer of ambiguity, as institutions differ on whether to round half-up, use banker's rounding, or truncate, and these differences can affect scholarship eligibility at the margins. The recommended approach is to compute GPA natively within each scale, label any cross-scale conversion clearly as an estimate, and be transparent about which conversion table or rounding method was applied.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Docgrity tool scans repos and Confluence for contradictory or stale documentation

A developer has launched Docgrity, an open-source tool designed to detect inconsistencies, duplicates, and unanswered questions within project documentation. The tool was motivated by the growing problem of AI coding agents generating overlapping or conflicting markdown files across repositories. Docgrity is available as a VS Code extension, a CLI tool via npm, and a CI GitHub Action, and also supports Confluence through an early-stage Forge app. Every flagged issue is backed by verbatim source quotes verified against the actual file, ensuring no finding is reported without evidence. The project is MIT licensed, runs locally with no telemetry or external servers, and aims to make documentation more reliable for both developers and AI agents.

0
ProgrammingDEV Community ·

Developer loses 79% of extracted data after AI model treats '<TAB>' as literal text

A developer building an AI-powered data extraction pipeline lost 246 of 310 records because the language model output the literal string '<TAB>' instead of an actual tab character, exactly as instructed. The bug was compounded because the pipeline's rejection counter lumped together parsing failures and hallucinated content under a single field, making a catastrophic format error look like the integrity checker working correctly. The fix involved replacing the ambiguous separator name with a concrete worked example using a pipe character, after confirming the corpus contained none across nearly eight million characters. A secondary lesson emerged when the worked example used real source text, causing the model to copy it verbatim and extract nothing else — requiring a fictional placeholder name to prevent imitation. The developer also added a fast single-fragment probe flag, cutting the time to detect prompt contract failures from a full pipeline run down to roughly seven seconds.

0
ProgrammingDEV Community ·

Checker: A Zero-Dependency Go Library for Declarative Struct Validation

A Go library called Checker has been released to simplify input validation by replacing verbose if-statement chains with struct tag declarations. Developers can define rules such as required fields, email format checks, minimum password length, and cross-field comparisons directly alongside struct fields. Unlike many validation libraries, Checker also includes normalizers — such as trim, title-case, and HTML escaping — that run in the same pipeline as validation rules. The library has no external dependencies beyond the Go standard library, reducing supply-chain risk and keeping build times lean. It also supports nested structs, container-level rules for slices and maps, conditional field requirements, and 23 built-in translated locales for error messages.

0
ProgrammingDEV Community ·

Google Named Its AI Gemini After Twin Gods — Here Is the Mythology Behind It

Google's AI model family, Gemini, is officially named to represent the merger of DeepMind and Google Brain, but the name also draws from the Greek myth of the twin demigods Castor and Pollux. In the myth, mortal Castor and immortal Pollux were granted a compromise by Zeus, alternating between the underworld and Mount Olympus rather than being separated by death. Some observers draw a parallel between this divine alternation and the turn-based structure of large language model conversations, where a human user and an AI model exchange prompts and responses. The analogy positions the human as the mortal Castor and the AI as the divine Pollux, with each exchange representing a temporary transfer of capability across that boundary. Whether symbolic or coincidental, the Gemini name connects a modern AI product to one of antiquity's most enduring stories about mortality, divinity, and shared existence.