Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Why would you ever reuse an identifier like that? Is there some kind of material cost associated with a new identifier?


This is what we've never understood. Trying to ask why is almost always futile, the people who're there now never knows.

I suspect it's often some legacy stuff, like a certain system only had 6 chars available for the reference, and so that's how they ended up working around it and nobody realized that limitation no longer exists.

But yeah, does not make much sense to us either.


This reminds me of a project I was remotely involved with: Airbus having to handle an aircraft order number above 5 digits as they were delivering their 10’000th aircraft to a customer.

This was a multi year project where we had to deliver software used to map risk and impact across the whole company.

Imagine the costs.

source: https://www.flightglobal.com/airlines/a320neo-line-adapts-to...


Yeah I mean I also get that aspect. We integrate with many systems, we have 18 different integrations with one of our larger customers, and we're just a small piece of the puzzle.

Would likely be super costly just to figure out which, if any, of the systems that would have to change.


Is it a fully computerised B2B system? I mean when I order some patch cables for a project, I do it via a web shop and pay with my corporate credit card. The vendor generates an order number but also asks me for customer purchase order reference. I just make something up that might have my initials and date and a serial like "MV-20220723-1". Others may not be so methodical.


Yeah this is B2B, so should be computer generated.

Then again, who knows what goes on behind the scenes...


Just like passenger name records - 6 characters for legacy reasons, so they’re constantly recycled


Even the USPS reuses tracking numbers. I had a package show as "delivered" before it even shipped once, because it received a recycled tracking number.


I don't even reuse references inside a single running instance of software. Using u64 you can generate billions a second and still not run out for hundreds of years.


Right, but u64 is kind of long for something you might want to read over the phone, or enter using DTMF tones.


USPS tracking numbers are at least 22 digits long (depending on shipping method; some can be 27); I don’t think ease of data entry was a priority for them.

22 digits and they somehow still manage to reuse tracking numbers. 10^22 (or 10^20, if we assume some encoding overhead) valid numbers should be able to uniquely identify a lot of mail.


A lot of the first digits are actually used for parsing. It's not a fully unique number.

USPS labels (and other labels from other couriers) are an incredibly fascinating subject you would never care about until you work in the industry.


For the ones you mention that have 22 digits, the first 8 digits (if memory serves) identify the class of mail service and other metadata. So that leaves you with 10^14 at most, assuming there’s no encoding overhead / check digits.

> USPS tracking numbers are at least 22 digits long

Actually, that’s wrong. There are shorter ones.

Examples:

82 000 000 00 - Global Express Guaranteed

EC 000 000 000 US - Priority Mail Express International

CP 000 000 000 US - Priority Mail International

There’s also foreign shipped packages that will follow various standards that aren’t 22 digits, yet are still technically a valid USPS tracking number.


They probably encode information in the code itself then, perhaps source/destination or similar. Perhaps to allow "offline" operations?


Some legacy identifiers come in fixed length fields, insufficient for contemporary usage. I know a company where some identifier should have been lengthened long ago, but that would impact a couple hundred systems (and by system I mean whole applications, front and back) - so they keep plodding on with what they have and yes, it is a drag on operations and it causes endless hacks.


I'm thinking either production or the warehouse still uses manual stamping of lot (or shipment) numbers with those auto-increment stamps... The number is then captured by hand into a system somewhere.

The system worked fine when production was X times smaller, but no attention has been paid to it since it was first designed.


They might need a new type of identifier to guarantee uniqueness. And there might be cost associated with updating the system (workflows, databases, scanners, training, etc) to deal with new type of identifiers.


In some cases it’s a flag that there’s a mainframe underneath that people are afraid to touch with the number of digits fixed to save memory. So many other legacy systems assume the field is fixed that you can’t add digits. Companies then look and say, “We can spend tens of millions of dollars to fix this, or we can spend the money on advertising and compensation, and just deal with the issues that come with reusing numbers”


I have worked for a company that reused order-tracking identifiers. The reason was mechanical: The more digits in the identifier the bigger the barcode on the shipping label. A non-issue with 2D barcodes but back then it was an issue.


Totally different context, but at my company, they started reusing some IDs that are supposed to be unique because they ran out of them and the old-as-fuck computer systems can't handle longer IDs.


Many airlines reuse your booking reference number too




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: