frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Al Lowe on model trains, funny deaths and working with Disney

https://spillhistorie.no/2026/02/06/interview-with-sierra-veteran-al-lowe/
50•thelok•3h ago•6 comments

Hoot: Scheme on WebAssembly

https://www.spritely.institute/hoot/
114•AlexeyBrin•6h ago•20 comments

Stories from 25 Years of Software Development

https://susam.net/twenty-five-years-of-computing.html
49•vinhnx•4h ago•7 comments

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
809•klaussilveira•21h ago•246 comments

Reinforcement Learning from Human Feedback

https://rlhfbook.com/
72•onurkanbkrc•6h ago•5 comments

The AI boom is causing shortages everywhere else

https://www.washingtonpost.com/technology/2026/02/07/ai-spending-economy-shortages/
88•1vuio0pswjnm7•7h ago•99 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
1053•xnx•1d ago•599 comments

Start all of your commands with a comma (2009)

https://rhodesmill.org/brandon/2009/commands-with-comma/
470•theblazehen•2d ago•173 comments

Selection Rather Than Prediction

https://voratiq.com/blog/selection-rather-than-prediction/
8•languid-photic•3d ago•1 comments

Vocal Guide – belt sing without killing yourself

https://jesperordrup.github.io/vocal-guide/
196•jesperordrup•11h ago•67 comments

Speed up responses with fast mode

https://code.claude.com/docs/en/fast-mode
8•surprisetalk•59m ago•1 comments

France's homegrown open source online office suite

https://github.com/suitenumerique
534•nar001•5h ago•248 comments

U.S. Jobs Disappear at Fastest January Pace Since Great Recession

https://www.forbes.com/sites/mikestunson/2026/02/05/us-jobs-disappear-at-fastest-january-pace-sin...
42•alephnerd•1h ago•14 comments

Coding agents have replaced every framework I used

https://blog.alaindichiappari.dev/p/software-engineering-is-back
204•alainrk•6h ago•309 comments

A Fresh Look at IBM 3270 Information Display System

https://www.rs-online.com/designspark/a-fresh-look-at-ibm-3270-information-display-system
33•rbanffy•4d ago•5 comments

72M Points of Interest

https://tech.marksblogg.com/overture-places-pois.html
25•marklit•5d ago•1 comments

Software factories and the agentic moment

https://factory.strongdm.ai/
63•mellosouls•4h ago•67 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
110•videotopia•4d ago•30 comments

Where did all the starships go?

https://www.datawrapper.de/blog/science-fiction-decline
67•speckx•4d ago•70 comments

Show HN: Kappal – CLI to Run Docker Compose YML on Kubernetes for Local Dev

https://github.com/sandys/kappal
21•sandGorgon•2d ago•10 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
271•isitcontent•21h ago•36 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
199•limoce•4d ago•109 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
284•dmpetrov•21h ago•151 comments

Making geo joins faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
155•matheusalmeida•2d ago•48 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
553•todsacerdoti•1d ago•267 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
424•ostacke•1d ago•110 comments

Ga68, a GNU Algol 68 Compiler

https://fosdem.org/2026/schedule/event/PEXRTN-ga68-intro/
41•matt_d•4d ago•16 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
348•eljojo•1d ago•214 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
367•vecti•23h ago•167 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
466•lstoll•1d ago•308 comments
Open in hackernews

AlphaDec: A human-readable alternative to ULID/Snowflake IDs

https://github.com/firasd/alphadec
47•firasd•6mo ago

Comments

firasd•6mo ago
Hi folks, my project:

AlphaDec is a human-readable, lexically sortable UTC encoding. It's designed to be timezone-agnostic, reversible, and safe for use in LLMs, filenames, and database keys.

Examples like 2025_M4O2_todo.txt carry timing information (seasonal + positional) but avoid ISO collisions.

It encodes the full UTC year as a symmetrical orbital structure: 26 periods × 10 arcs × 26 bars × 10 beats. Each one tickable in JS, Bash, or Python.

Inspired by the clean abstractions of Snowflake IDs, but readable by humans and AIs.

Live clock: https://firasd.github.io/alphadec/

Interesting images of Claude reverse-engineering it:

1. https://firasd.github.io/alphadec/assets/2025_O3U4_alphadec_...

2. https://firasd.github.io/alphadec/assets/2025_O3U4_alphadec_...

3. https://firasd.github.io/alphadec/assets/2025_O3U4_alphadec_...

4. https://firasd.github.io/alphadec/assets/2025_O3U4_alphadec_...

JimDabell•6mo ago
I’m a bit confused about the comparison with ULID.

Identifiers like that (and KSUID, etc.) have a time component and a random component, so that multiple systems that generate IDs simultaneously won’t collide.

This scheme only includes the time component. But in your comparison with ULID you describe it as collision resistant. How is this the case?

rfoo•6mo ago
The project states that:

> LLM & AI-Native: Its structured, tokenizable nature makes it powerful primitive for time-based reasoning, prompt engineering, and log analysis in AI systems.

Being significantly OOD usually does not help in this case, did I miss something here?

firasd•6mo ago
The OOD thing ironically helps a bit because sometimes AI can skim over regular timestamps and say two different times are the same etc. LLMs don't actually parse and calculate the timestamps after all. With AlphaDec it's very clear that two timestamps are different

Also I use a little preamble... here is what I send Anthropic's Claude Sonnet when it asks for the current AlphaDec over an MCP tool

// AlphaDec units (approx): Period = UTC yr (different length leap yr vs common yr) / 26 ≈ 14.04 days | Arc ≈ Period / 10 ≈ 33.7 hours | Bar ≈ Arc / 26 ≈ 77.75 minutes | Beat ≈ Bar / 10 ≈ 7.78 minutes. The final part of canonical AlphaDec is milliseconds offset within the beat. Period F, Period M, Period S, and Period Z always contain equinoxes/solstices. Truncating significant digits creates natural time groupings, eg 2025_M2 contains 'every alphadec in this arc' [ { "timezone": "UTC", "iso": "2025-07-25T00:47:09.219Z" }, { "timezone": "AlphaDec", "alphadec": "2025_O6B3_087680", "readable": "O6:B3" } ]

burnt-resistor•6mo ago
And always, the big asterisk on using UTC instead of TAI: https://cr.yp.to/proto/utctai.html
akdor1154•6mo ago
Entered with scepticism but left convinced. Looks very thoughtfully designed, nice!

I admit i do feel a bit uneasy about the rational numbers used in the definition, but i guess it doesn't matter for the purposes of this? And you do seem to have considered it. I still wonder if a less neat but integer-second or -millisecond definition might be useful, as round tripping could then be well defined i think? (If, as another poster hinted, you consider the interaction with leap seconds too)

andoando•6mo ago
Hmm

ISO 8601: 2025-06-14T23:37:42.814Z

is far more readable than

alphadec: 202025_L0V3_001827

no?

throwaway290•6mo ago
These days readable means readable by LLMs. Who has time to read anymore? There's too much content being generated llms every microsecond
satisfice•6mo ago
Anything is human-readable, if you think this is. This is more human-readable than a QR code, I guess, but that isn’t saying much.
Dylan16807•6mo ago
> ISO 8601 - Not sort-friendly as a string (unless zero-padded)

The zero padding is in fact part of the format.

> ISO 8601 - Verbose

It's an extra few characters but I can also tell what date it is and what time of day it is by looking at it.

Also you can remove the separators to make it only 4 characters longer.

On the other hand if you really want it to be compact, AlphaDec doesn't do the job. To go from year down to second you need 8 characters, and then 3 more for milliseconds. Base32 would need 5 and then 2 more.

There's probably a good middle ground here but I think AlphaDec sacrifices too much. I'd much rather have something that encodes month, day, and hour into one character each so even if I didn't memorize which is which I can at least truncate by them instead of periods, arcs, and bars.

I think the pure 4-character version has some good appeal, but both truncating it and extending it for better precision lose most of that appeal.

> ISO 8601 - Not great for filenames or embeddings

I guess, but using a different character from colon is a very simple tweak you can make.

gregman1•6mo ago
Cannot agree more! AlphaDec is a great example of why we should consult existing standards before spending so much time and resources to develop something inferior.
nivertech•6mo ago

  AlphaDec: 2025_L0V3_001827
  
  Instead of:
  
  ISO 8601: 2025-06-14T23:37:42.814Z
This is misleading. The precision is less than 1 min, So it should be:

  AlphaDec: 2025_L0V3_001827
  
  Instead of:
  
  ISO 8601: 2025-06-14T23:37
  
  or

  DateTime: 20250614_2337
This format is a Rube Goldberg machine which adds nothing to the table.

BTW: was this format designed with the help of an LLM? LLMs can easily misunderstand or miss the big picture, while over-optimizing for small details.

Dylan16807•6mo ago
You got the precisions mixed up. (which is understandable)

A0A0 is multi-minute chunks. A0A0_000 is seconds. A0A0_000000 is milliseconds.

nivertech•6mo ago
> Example:

  AlphaDec: 2025_L0V3 (or full canonical: 2025_L0V3_000000)
  UTC: June 5th, 2025 at 13:45
still holds:

  2025_L0V3_000000
  20250605_1345000
Dylan16807•6mo ago
You made a typo there, 1345000 doesn't make sense. Hours, minutes, three more digits?

Here's how I'd lay out the comparison if we're doing proper ISO 8601:

  2025_L0V3_000
  20250605T134500Z

  2025_L0V3_000000
  20250605T134500.000Z
nivertech•6mo ago
either

  2025_L0V3_000000
  20250605_134500000
or

  2025_L0V3_000.000
  20250605_134500.000
2 digits is good trade-off for clarity and better mapping to the problem domain.
Dylan16807•6mo ago
I wouldn't really say the periods compare like that but it doesn't really matter.

I also prefer ISO 8601 here. But I think removing the Z isn't worth the risk, so that makes it a 3 character difference.

nine_k•6mo ago
A decimal digit encodes approximately 3.3 bits. The current Unix timestamp (barely) fits into 32 bits, so it should take approximately 10 decimal digits to represent. The number of seconds since the beginning 0 CE fits into 36 bits, so requires 12 decimal digits at least. The ISO timestamp (YYYY-mm-dd HH:MM:SS) requires 4 + 4 + 6 = 14 decimal digits.

If we wanted to compress the representation while remaining within ASCII and allowing for textual sorting and easy glancing, our best bet is something like base64: Latin upper case + lower case + digits give us 66 characters, a soupçon more than 6 bits per character. We'd need only 6 characters to represent a 36-bit timestamp with 1 second precision, and just 5, for a minute precision. Yay!

Better yet, since timekeeping is base 60 since Sumerian times, we could directly represent minutes and seconds with one digit each, using base60 (with a room to spare for the leap second). Relinquishing 1.5 more bits, we could use only 24 distinct values for hours, allowing for a clear separation of "date" and "time"; time would take 3 characters, like D7a.

If we agree to spend 2 characters (12 bit) for month + day, then the month and the day directly map to one character each. Now allocate 2 characters for the year, and we're set until year 4095, when we could reconsider.

So, we have a timestamp of 2 + 2 + 3 = 7 characters, only one longer than the theoretical minimum, and with quite a room to spare. The result directly maps to the traditional calendar dates, with year, month, day, hour, minute, second being separate digits, and which is readable, sortable, pronounceable, and trimmable. (Now we only need to write it in cuneiform again.)