In my previous employment I was tasked with creating a new product identification scheme. The product had over 560 variants with many different, and for many years, unnoted variables. I've provided an example below.

Variables:

  • Specification
  • Width
  • Length
  • Color
  • Cardboard-Core Diameter
  • Backer
  • Printed Labels

I took these variables and determined what could be created together on the machine, I named these two different variables: Machine Variables and Product Variables

Machine Variables:

If 2 products did not exactly match with these variables, they could not be run at the same time

  • Specification
  • Cardboard-Core Diameter
  • Color
  • Length
  • Backer

Product Variables:

These variables could be different and products could still be run together

  • Width
  • Printed Labels

Determining Labels for the Variables

Machine Readable vs Human Readable

Truly this is not a "versus". If your code is human readable it can be machine readable as well (with some forward thinking and planning). However the reverse is not true, if it is machine readable, it may not be human readable.

The choice is entirely your own. For my purposes I choose human readable as many of our systems were performed by hand and teaching people to read a code is already difficult.

I won't go into much more detail here. I'll link to a good article here on the difference and pros and cons, it's been written to death.

Ways to Label

For some variables it is simple. Our cardboard-core was either a 2" or 3", so I made the choices 2 or 3.

Backer was more difficult as it was various

Creating the Product Code

Once you've determined your labels you can put the code together. I made mine as easy for a human to read as possible but also easy for anyone with excel to take apart.

101!N45!500!NBL!2!L.S101!27

Hopefully you can read the label above if you've worked your way through this blog post. It's also machine readable though and as discussed above hits all the helpful bits.

If the backer weight is unspecified it's just

  • 101!N!500!NBL!2!L.S101!27

If the width is a decminal then it just gets added. The ! marks help to let a computer known when one section is done and another begins. Although it may make it look ugly I highly recommend it if you're making a human readable code. It also allows you to add on extra data after the end without having to reprogram many systems. Simply code your current systems to ignore anything after the 7th ! mark and always end your code with one now.

Next Post