Remix.run Logo
nighthawk454 3 days ago

Mentioned in the article's comments:

> Why not use UUID7?

> "ULID is much older than UUID v7 though and looks nicer"

For those unfamiliar, UUIDv7 has pretty much the same properties – sortable, has timestamp, etc.

ULID: 01ARZ3NDEKTSV4RRFFQ69G5FAV

UUIDv7: 019b04ff-09e3-7abe-907f-d67ef9384f4f

wood_spirit 3 days ago | parent | next [-]

UUID 7 is so much easier than the ULID in the article manipulate. Pretty much every language and database has the string manipulation and from_hex functions to extract the timestamps without any special support function. Whereas a format that is too clever is way more complicated to work with.

nvader 3 days ago | parent | prev | next [-]

UUIDv7 looks better in the eye of this beholder.

ChymeraXYZ 3 days ago | parent [-]

I know it may sound stupid but in my latest project I chose ULIDs because I can easily select them as one word, instead of various implementations of browsers, terminals, DB guis, etc each have their own opinion how to select and copy the whole UUID. So from that point of view ULIDs "look" better for me as they are more ergonomic when I actually have to deal with them manually.

unscaled 3 days ago | parent [-]

I don't think it's stupid and this is one of the reason I prefer ULIDs or something like it. These IDs are very important for diagnostics, and making them easily selectable is a good goal in my book.

andy_ppp 3 days ago | parent | prev [-]

It’s also quite common to base62 the UUID value so in this case “31prI2bsccbXJB7cvbtV9”