> Things that most people generally agree on include:
> 
> - carefully splitting out service types.  E.g. a fibre cable to a
> location is one ID; a wavelength on that service is another ID of
> another type; an IP transit service on that wave is a third ID, etc.

Definitely. We have one digit in our circuit ID which denotes the type to aid 
with quick identification.
 
We also use a luhn-10 checksum digit at the end, which is optional on re-entry. 
This is really helpful when getting references over the phone. When written, 
it's with a hyphen so that it's clear that it's able to be dropped.

A few things we also decided on:

- Circuit references are purely numerical (although we prefix them with letters 
when written, those letters are not part of what makes the numbers unique in 
our business). The main reason for this is that they can easily be entered in a 
variety of *compact* barcode formats. Most label printers support this, and it 
saves loads of time in the datacentre when you can just scan the label on a 
circuit on a handheld PC.

- Circuit references are always the same length. This way, if the checksum 
digit is being dropped (e.g. because it's coming from a non-human source like a 
barcode), we know that the checksum digit is missing.

- The first digit is never a zero, to avoid silly mistakes if you're sorting 
them in Excel etc.

- The first four digits are a simple date code of YYMM that the ID was 
generated. This is surprisingly handy when you're looking for a specific 
circuit reference in a list, and it sort of helps to spread the dataset out a 
bit. This is what ensures that it's a non-zero first digit for the next 80 
years or so. The date code isn't a *requirement* of our format, however. Should 
we need more than 10,000 circuits per month, we'll just abandon the date coding.

For those interested, our system looks like this:

VCI-150600019-7

Any non [0-9] characters (including symbols) can be omitted.

VCI : denotes that this circuit identifier corresponds to our business
1506 : date code
0001 : sequence number, incremented per circuit, per month
9 : circuit type
7 : checksum (optional)

T

Reply via email to