Een error code is een kort nummer of label dat software teruggeeft als er iets misgaat, en dat precies aangeeft welk probleem optrad in plaats van alleen dát er een probleem was. De bekendste voorbeelden zijn webstatuscodes: 404 voor een pagina die er niet is, 500 voor een server die crashte, 403 voor toegang geweigerd.
Denk aan de waarschuwingslampjes op een autodashboard. Een rood lampje is niet de storing zelf, het is een gecodeerde hint die de monteur recht naar het kapotte onderdeel wijst. Een error code doet hetzelfde voor software: in plaats van een vaag het ging stuk geeft hij een specifiek signaal waar goede error handling automatisch op kan reageren, en waarmee een developer kan beginnen met debuggen van de echte oorzaak.
Codes laten ook machines onderling praten. Geeft een betaal-API een 402 terug, dan weet het aanroepende systeem dat het om een nieuwe kaart moet vragen in plaats van eindeloos opnieuw te proberen; een 429 zegt dat het rustiger aan moet doen. Hetzelfde nummer betekent elke keer hetzelfde, in elke programmeertaal, en daarom leunen API’s er zo zwaar op. Een zin als “kon niet verwerken” dwingt elke aanroeper om naar de oorzaak te gokken, terwijl een nummer in één regel code te matchen is.
De truc is codes consistent en goed gedocumenteerd houden. Een code die niemand kan opzoeken is ruis, terwijl een heldere, gecatalogiseerde set een storing midden in de nacht verandert in een snelle diagnose. De klassieke valkuil is één generieke code voor alles hergebruiken, zodat één enkele 500 tien verschillende fouten verbergt en de dienstdoende engineer bijna niets vertelt.
Bij TopDevs zorgen we dat elk systeem heldere, gedocumenteerde error codes teruggeeft, zodat als er iets stukgaat de oorzaak meteen duidelijk is in plaats van een gokspel.