Hacker News new | ask | show | jobs
by inopinatus 2087 days ago
> Does anyone have any criticisms of ULIDs

I'm not a fan of the Crockford encoding, since it supports noncanonical forms that'll silently trash the lexicographic sorting assertion when present, and the exclusion of "U" as some kind of profanity filter is both prissy and ineffective.

base58 seems better, vs my own fat fingers at any rate.

1 comments

"It excludes the letters I, L, and O to avoid confusion with digits. It also excludes the letter U to reduce the likelihood of accidental obscenity."

Excluding ILO doesn't seem a bad idea - but leaving out U for that particular reasons seems downright weird:

https://en.wikipedia.org/wiki/Base32#Crockford's_Base32

It doesn’t exclude them. Ignore the Wikipedia text, and look at the decoding table instead.
True - they should be generated during encoding but are allowed during decoding:

https://web.archive.org/web/20021223012947/http://www.crockf...

base58 avoids 0 as it looks similar to capital O in some fonts. Seems more reasonable than U.