Unix-timestamps zijn perfect voor machines en nutteloos voor mensen. Elke logaggregator, database-record en API-response lijkt tijd op te slaan als een ruw geheel getal dat seconden telt sinds 1 januari 1970, en elke developer heeft ooit geprobeerd met het blote oog te schatten of 1725580800 recent is of oeroud.
De gebruikelijke terugvaloptie is een snelle Google-zoekopdracht — "1725580800 to date" — wat werkt maar een omweg via de browser toevoegt voor iets wat een opzoekklus van twee seconden zou moeten zijn. Of je schrijft een one-liner in een taalconsole: new Date(1725580800000) in een browser-JS-console, waarbij je moet onthouden om met 1000 te vermenigvuldigen voor milliseconden en hopen dat je seconden en milliseconden niet door elkaar hebt gehaald.
Seconden versus milliseconden: de klassieke valkuil
Unix-tijd is meestal in seconden, maar JavaScripts Date-object verwacht milliseconden, en sommige API's (vooral die gebouwd op JavaScript) geven standaard timestamps in milliseconden terug. Deze door elkaar halen geeft je een datum die ofwel wild in de toekomst ligt of vastzit rond het epoch van 1970 — een fout die elke developer minstens één keer heeft gemaakt tijdens het debuggen van een "waarom ziet deze datum er verkeerd uit"-probleem.
Tijdzones voegen nog een laag toe. Een timestamp converteert naar een specifiek moment, maar het weergeven in jouw lokale tijd versus UTC versus de tijdzone van de server kan dezelfde waarde er als drie compleet verschillende tijden laten uitzien, wat er veel toe doet als je probeert een fout aan een deployment te koppelen.
Converteer direct in beide richtingen
Bellows bevat een timestampconverter die een Unix-timestamp omzet naar een leesbare datum en tijd, en een datum terug omzet naar een timestamp — beide richtingen, geen rekenwerk nodig. Het handelt de ambiguïteit tussen seconden en milliseconden af, zodat jij niet hoeft te raden.
Logs en databases debuggen
Logaggregators, databaserijen en API-payloads slaan tijd veel vaker op als ruwe getallen dan als leesbare strings. Een handvol timestamps converteren terwijl je een incident traceert, is een kleine taak die tientallen keren voorkomt tijdens elke serieuze debugsessie.
Planning en verlooplogica
Cache-verlooptijden, tokenvervaldatums en geplande taak-timestamps zijn stuk voor stuk Unix-tijd onder de motorkap. Snel controleren wat een bepaalde vervalwaarde daadwerkelijk overeenkomt in kloktijd helpt je verifiëren dat je TTL-logica doet wat je denkt dat hij doet.