A new year is a time for renewal, opportunity, and new beginnings. For engineers, however, it's a chance to argue about part numbers some more. I love the smell of part numbers in the morning. Whether your allegiance lies with the Generic Numbering Coalition (GNC) or the Confederacy of Intelligent Numbers (CIN), valid arguments worth defending exist on both sides. We've covered both factions and spaces in-between. The pursuit of part number perfection, however, may lie in mutually assured destruction. The part number is a lie. For one day, perhaps sooner than you think, part numbers will be no more.
One clear sign of the partocolypse is that outright victory eludes each of our stalwart, diametrically-opposed numbering religions. The prevalence of engineering data management tools such as PDM and PLM secured wins in the transition to generic numbering, capitalizing on the implementation of such tools as a perfectly justifiable breakpoint to expunge the old ways. After all, it makes perfect sense that capabilities like classification should trump any humanly contrived numbering schema, destined at one time or another to become wholly obsolete. Yet intelligent numbers thrive; they remain both abundant and widespread. What gives?
The reality of part numbers
- Old numbers die hard: For one, part number legacies are indeed numerous. Old part numbers aren't going to simply dissolve into the ether. And yet many more new parts contain some semblance of intelligent part numbers, if only because users of those part numbers have sometimes fought and won against their database-minded IT oppressors.
- Intelligence and metadata aren't mutually exclusive: Second, from strictly a usability standpoint, generic numbers offer nothing compelling. The metadata and/or classification used to parse and search generically numbered parts can be implemented on any part, regardless of its numbering structure. A common complaint leveraged on intelligent numbers is you don't know what you're doing unless you're in on the coding scheme. As if you have no other choice but to memorize or interpret the number manually. In a database driven environment built on intelligent numbers, you don't have to understand the number. In fact, given the metadata, the system could even build the number for you. Knowing the schema provides a shortcut, surely, but otherwise you search for it just like you would have to always do with a generic number. So from a usability perspective there is no compelling case here.
- No system exists in isolation: Then there are the endless company mergers, acquisitions, spin-offs, buyouts, reorganizations, etc., where two or more numbering systems collide. The end result is a common cross-pollination of part numbering schemes ranging from the meticulously contrived to the totally random and everything in between. So universal adoption of pure, organic, grass-fed, free-range, vegan generic numbering is – at best – inconsistent. The realities of part numbers and their dependencies on historical data are far too complicated.
But the truth has eluded us. For the perfect part number scheme is not a part number scheme at all. That's not existential nonsense, but rather the reality of computer science taken through the lens of usability.
UID: not for you, not for me
Part numbers are meant to be unique. Ideally they are system generated. Consequently they're used as an indexing mechanism by the database technology in engineering tools. That very fact makes part numbers Unique Identifiers (UIDs). And that's bad, because UIDs are for machines, not people. All the technology you use employs such UID constructs, but you never are expected to interact with them.
People should not deal with indexes. But we deal with part numbers. That's why we're not getting anywhere - we're taking a touch point that's been hijacked as an index, and turning it into a proper index that makes a lousy touch point. You can't win this way. Which is why the part number debate goes in endless circles.
If a part number is to truly become an index they might as well be universally unique identifiers (UUIDs). UUIDs take things a step further by creating a standard for "practically unique" global identifiers, technically suitable for interchange across disparate systems and databases. Incidentally, many engineering database systems don't have part number fields that can support the 32 hexadecimal characters needed for a 128bit UUID (I'm looking at you, SAP).
By the way, just to blow your mind, UUID's have structure and, thus, can in some ways be considered an intelligent part number schema. Ah, the irony is strong in this one.
A numberless future
Does Tony Stark ask Jarvis for specific part numbers? How many phone numbers do you remember? Do you know your IP address without looking?
A more important question: do you really have to remember anymore?
An even more important question: do you care to remember?
There's a lesson here that applies to the future of part numbers. Systems of the future interacting across a federation of technology will be exchanging your part number as an index, but you will be just dealing with the meta data and the pretty pictures. The index will be as long as it needs to be truly unique and will carried forth as necessary in the background on every object for configuration control, but you'll just worry about the part, the design. The stuff you actually care about.
The problem is that type of future is still a few years out. But in the meantime, moving to generic numbers in today's systems doesn't bring you any closer to that reality. So expect a few more years of this whole brouhaha, before the age of part numbers comes crashing down. Until then, feel free to declare your allegiance in the comments below and we'll argue some more.
Part numbering. For most engineers, this two-word phrase is all it takes to conjure up especially strong feelings about what it means to be “right”, and what it means to be very, very “wrong.” We've assembled a handful of our part number greatest hits in this eBook anthology.