Chapter 27: Industrial Work-in-Process Tracking |
At a Glance: The Unseen Journey |
Imagine a raw metal casting, roughly hewn and unremarkable, entering a factory floor. Over the next several days, it will be subjected to searing heat in a furnace, precisely shaved down by machining centers, and finally coated with a protective layer of paint. At each step, its identity must be known. Is this the batch destined for an aerospace client, or the one meant for a commercial automotive orderHas it received the correct heat treatment durationWhich operator handled it last |
In the pre-digital era, this tracking was a logistical nightmare of handwritten tags and manual data entry---a process ripe with errors. This chapter delves into one of the earliest and most successful solutions to this problem: the application of Code 39 barcodes to paper 'travelers,' or routing sheets. While modern technology has introduced more data-dense options, the humble Code 39 barcode played a pivotal role in revolutionizing industrial work-in-process (WIP) tracking. Its specific technical characteristics---simplicity, reliability, and flexibility---made it the ideal tool for harsh factory environments. We will explore these characteristics in detail and examine how Code 39 became the unsung hero of the factory floor, from heat treatment to painting, and beyond. |

|
1. The Genesis of Work-in-Process Tracking |
Before we examine the symbology itself, it is essential to understand the problem it was designed to solve. Work-in-Process, or WIP, refers to the goods and materials that are in the middle of the manufacturing process. They are neither raw materials waiting to be used nor finished products ready for shipment. Instead, they are in a state of transformation. |
In the 1970s, before the widespread adoption of barcodes, tracking these WIP items was a profoundly manual and inefficient process. If you walked into a typical machine shop of that era, you would find a chaotic environment. Pallets of metal parts would be stacked in queues, waiting for their turn on the next machine. A 'traveler,' or routing sheet, was a piece of paper that physically accompanied a batch of parts through the factory. This paper would be covered in handwritten notes, checkboxes, and signatures, detailing which operations had been completed and by whom. It was a continuous, open-loop system that relied entirely on human memory and diligence for accuracy and was prone to several significant problems: |
* Human Error: Illegible handwriting, mis-entered part numbers, and lost travelers were common. A single mistake could send an expensive batch of parts to the wrong machine or the wrong customer. |
* Lack of Real-Time Visibility: Management had no way of knowing the precise location of a batch without physically walking the floor and finding the traveler. This made production scheduling a guessing game. |
* Inefficiency: Time was wasted searching for lost paperwork or manually transcribing data into ledgers at the end of each shift. The 'data entry' process was a bottleneck in its own right. |
The manufacturing industry desperately needed a system that was fast, accurate, and capable of surviving the gritty, dirty, and often hostile conditions of a factory floor. This is where the story of Code 39 begins. |

|
2. Code 39: A Technical Profile |
The solution emerged from a company called Intermec. In 1974, Dr. David Allais and his team developed a new type of barcode, originally named 'Code 3 of 9' and later more commonly known as Code 39 . It wasn't just another barcode; it was specifically engineered to meet the demands of the industrial sector. Its technical features were tailored to solve the very problems plaguing manufacturing. |
The '3 of 9' Structure |
The barcode's name is derived from its core structural logic. Each character in the Code 39 symbology is represented by a pattern of nine elements: five bars (the dark lines) and four spaces (the white gaps). Of these nine elements, exactly three are 'wide,' and the remaining six are 'narrow' . This is the secret to its simplicity and its most defining characteristic. |
Unlike other barcodes of the time that required complex and expensive printing equipment to manage varying widths, Code 39's binary logic of 'wide' and 'narrow' was easy to print. It could be produced using standard impact printers, dot-matrix printers, or even specialized 'font' cartridges, which were a revolutionary innovation at the time. |
The Importance of the Start/Stop Character |
Every Code 39 barcode begins and ends with a specific character: the asterisk (*) . This 'start/stop' character serves two critical functions. First, it signals to the scanner that the barcode is beginning and tells it where it ends. Second, because the asterisk is never used for data encoding, it provides a fixed reference point. This is what allows Code 39 to be 'bidirectional'---a scanner can read the code from left to right or right to left without any confusion . If the scanner reads it in reverse, the software recognizes the sequence of characters but knows it's been inverted because the asterisk is now at the 'end.' |
Variable Length and Character Set |
Code 39 is a variable-length barcode, meaning it can encode as few or as many characters as needed, up to the physical limitations of the label and the scanner . This was a vital feature for industrial tracking, where part numbers and work orders could range from short identifiers like 'A-1' to long alphanumeric strings like 'HEAT-TREAT-BATCH-2024-10-15.' |
The standard Code 39 character set is robust, including the digits 0-9, all uppercase letters A-Z, and a set of special characters: space, dollar sign ($), percentage (%), plus sign (+), minus sign (-), period (.), and slash (/) . This was the first barcode symbology to offer both numbers and letters, a crucial requirement for manufacturing where part numbers are rarely purely numeric . A later variation, known as Code 39 Full ASCII, allowed for the encoding of all 128 ASCII characters by pairing the standard 44 characters in a specific two-character combination. However, in its standard form, it was more than enough for WIP tracking. |
The Optional Checksum |
When speed is paramount and error rates are low, an optional error-checking character can be beneficial. Code 39 incorporates the MOD 43 checksum algorithm . Here, the value of the data characters is summed and divided by 43; the remainder is the value of the checksum character. While this adds an extra layer of data integrity, it was not always mandatory, as the code's design had other inherent checks. This optional nature of the checksum reflects a key technical design choice: it balances the need for accuracy against the desire for simplicity and speed. |
Wide-to-Narrow Ratio and Scanning |
Perhaps the single most important technical feature of Code 39 is its 'self-checking' nature. The width of a single bar or space must fit within one of two categories: wide or narrow. The wide elements are generally 2 to 3 times the width of the narrow ones, a ratio often specified as 2:1, 2.5:1, or 3:1 . While this code can theoretically be printed with any ratio, the industry standard is 2.5:1 . |
Because of this strict binary logic, a scanner doesn't need an absolute reference point to decode the symbol. It can measure the relative widths of the elements. Even if the barcode is slightly stretched, faded, or poorly printed, the scanner can still distinguish between the 'wide' and 'narrow' elements, making it incredibly fault-tolerant. This, combined with its bidirectional readability, meant that factory workers didn't need to meticulously align the label with the scanner; they could wave the scanner in the general direction of the barcode, and it would still read correctly. It was this ruggedness that made Code 39 the perfect 'workhorse' of the industrial world. |

|
3. Application Example: Heat Treatment |
We can start our journey on the factory floor with the heat treatment process. Heat treatment involves subjecting metal parts to extreme temperatures---often exceeding 1,000 degrees Celsius---to alter their physical and mechanical properties. This process can make a metal harder, more ductile, or more resistant to wear. However, it presents a monumental challenge for tracking: the paper traveler cannot survive the furnace. |
The challenge isn't just the heat; it's also the soot, oil, and scale that form on the parts during these processes. A barcode printed on a standard paper label would be destroyed. While modern solutions like Data Matrix codes etched directly onto the metal or 'hole codes' are now used for extreme environments, Code 39 played a crucial, indirect role in this step of the process. |
In many cases, the 'traveler' itself is physically separated from the parts before they enter the furnace. The parts are loaded into a high-temperature alloy basket or a metal tray. These containers are often etched, stamped, or tagged with a metal tag that has a Code 39 barcode embossed or printed on it using high-temperature-resistant inks . The Code 39 barcode on the basket is scanned and linked to the batch data contained on the paper traveler. The paper traveler, in turn, is placed in a separate, cool area. |
When the parts exit the furnace and cool down, the basket's Code 39 barcode is scanned again. The system then automatically updates the digital record for that batch, confirming that the heat treatment cycle has been completed. The paper traveler, with its Code 39, is then reattached to the tray to guide the next stage: machining. The technical advantage here is Code 39's ruggedness: the barcode doesn't need to survive the heat itself, but the basket tag---often created by permanent marking methods like dot peen or laser etching---must be readable by a scanner. The large, simple 'wide/narrow' pattern of Code 39 makes it easier to read on rough, uneven surfaces than denser codes. |

|
4. Application Example: Machining |
The machining stage is one of the most data-intensive areas in the production flow. Parts may need to be sent to a lathe, then a milling machine, followed by a drill press, and finally to a grinding station---often in a specific order, sometimes returning to the same machine for a different operation. This is where the paper traveler acts as a central logbook, and Code 39 provides the key to digitize its contents. |
As a batch of castings arrives at the first machining station, the operator scans the Code 39 barcode printed on the traveler. This immediately pulls up the work instructions on a screen. The system knows that this particular batch of parts needs to have its outer diameter turned down to a certain spec. Crucially, the system also knows the part's dimensions before the operation, allowing for automated tool offsets. |
After the machining operation is completed, the operator scans the traveler again. A new field is filled in the system: the operation is marked as 'Complete,' and the timestamp is recorded. The traveler is then physically moved to the next station in the queue. |
However, the application is not always limited to the traveler itself. In modern machining environments, the raw materials themselves often carry Code 39 labels. Consider a high-volume automotive parts manufacturer. Raw steel bars arrive at the factory and are cut into workpieces. Each workpiece or pallet of workpieces might have a Code 39 label slapped on it. When a machinist loads a workpiece onto the lathe, they scan the Code 39 label on the workpiece, and then scan the traveler. This ensures that the correct raw material is being used for the correct work order, providing a positive material verification. The system can also be integrated with the CNC machine: after scanning the barcode, the correct machining program is automatically downloaded to the controller, eliminating the risk of the operator running the wrong program for that part . |
This automation is possible because Code 39 is simple enough to be generated on the fly by simple label-printing software and robust enough to be read by a scanner that might be covered in metal shavings and coolant. Its low spatial density is an advantage here: the barcode can be read at a slight angle or at a distance, unlike high-density codes that require a precise, close-up scan. |

|
5. Application Example: Painting |
The painting and coating stage presents a different set of challenges. While the heat is gone, the environment becomes a hostile place of dust, overspray, solvents, and the potential for complete surface coverage. This is the final and most visible stage of the process. |
The problem is that painting a part often means covering it in a layer of material. If the barcode label is on the part itself, it will be painted over and rendered unreadable. Therefore, the Code 39 is once again applied to the 'fixture' or 'hanger' that holds the parts, rather than the parts themselves. These fixtures are unique to each part type and go through the painting line with the parts. The Code 39 labels on these fixtures are made of a durable, solvent-resistant material and are placed in areas that are shielded from the spray pattern, such as a tab on a bracket that is covered by a protective film during the painting process. |
The workflow mirrors the previous steps. As the painted parts come off the line, a worker scans the Code 39 barcode on the fixture. The system verifies that this batch has completed the painting operation. If the painting is part of a multi-step process---a primer coat followed by a topcoat---the Code 39 on the fixture is scanned between each coat. The system then instructs the conveyor system to route the parts to the correct downstream destination: perhaps the final assembly area, the quality control lab, or the packing station. |
The technical beauty of Code 39 here is its simplicity and visual contrast. Unlike the more complex QR Code or Data Matrix codes that use a matrix of small dots, Code 39 is a linear pattern of relatively large bars. This makes it possible to print a readable Code 39 on a rugged, high-contrast label that can be read even after being subjected to a fine overspray of mist, without needing the high-quality image capture required for 2D codes. Scanners with basic optics can read a slightly obscured Code 39, making it the practical choice for the painting line. |

|
6. Application Example: A Complex Assembly Line |
The power of Code 39 in WIP tracking becomes even more apparent in a complex assembly setting, such as in the aerospace or defense industries. Here, a single product---say, a jet engine component---may require thousands of subassemblies and hundreds of hours of labor. The accountability is paramount, and the components are often subject to stringent regulations. |
In this environment, Code 39 labels are used at every level. Subcontractors who supply raw materials use Code 39 barcodes that conform to the industry standard. When these materials arrive at the factory, they are scanned into the system. As the parts proceed down the assembly line, each major assembly step is tracked by scanning a Code 39 label on the assembly fixture and a label on the operator's badge. This creates a digital 'audit trail,' a complete record of who did what, when, and with which components. The data from the Code 39 scan can also be used to populate critical documentation for Federal Aviation Administration (FAA) or military (MIL-STD) compliance, satisfying the rigorous traceability requirements of these industries . |
Here, the fact that Code 39 was adopted by the U.S. Department of Defense for its LOGMARS (Logistics Applications of Automated Marking and Reading Symbols) program is a significant historical advantage . The military and defense supply chain standardized on Code 39 early on, creating an ecosystem of readers, printers, and software that made it the default choice for many contractors. This lock-in ensured its persistence, even as newer technologies emerged. |

|
7. Technical Characteristics Influencing its Application |
Across all these examples, several of Code 39's technical characteristics dictate where and how it is used in industrial WIP tracking. |
7.1 The Great Advantage: Simplicity and Ruggedness |
As we have noted, the binary logic of the '3 of 9' pattern is its foundation. The ability to read it with a wide tolerance is a massive practical advantage. A scratched, smudged, or poorly printed Code 39 is far more likely to be read than a data-dense QR Code or a Code 128. In a foundry, where the air is thick with dust and oil, this is a matter of survival for the label. This robustness, coupled with the code's ability to be printed using simple, low-resolution methods---including impact printers that simply hammer the pattern into a label---was exactly what the industrial sector needed in the 1970s and 1980s . |
7.2 The Great Weakness: Low Data Density |
The '3 of 9' structure that gives Code 39 its robustness is also its greatest weakness: it is very 'spacious.' Because a single character is encoded by nine elements, the barcode takes up significantly more horizontal space than other symbologies like Code 128, which uses a more complex variable-length pattern to encode more data in less space. For example, a Code 39 label encoding '1234567890' is physically longer than a Code 128 label encoding the same data. This means that Code 39 is rarely used for small items. It is, therefore, a label for boxes, pallets, and the large paper travelers themselves, rather than for tiny components like a computer microchip. When space is at a premium, a more dense barcode is required. |
7.3 The Moderate Character Set |
While Code 39's 44-character set was revolutionary for its time, providing both letters and numbers, it is ultimately limited to uppercase characters and a small set of symbols . This was perfectly fine for part numbers and order numbers in the 1980s. However, as supply chains became more global and IT systems more complex, the need for lowercase letters and a broader range of characters increased. This limitation is why Code 39 is rarely used for modern, generic data entry. It's a purpose-built tool, not a general-purpose one. |
7.4 The Checksum as a Reflection of Its Era |
The optional MOD 43 checksum highlights a key aspect of Code 39's design philosophy. In an era of slow processors and limited memory, making the checksum optional was a design compromise. The code's self-checking nature was considered sufficient for many industrial uses, and adding a mandatory checksum would have slowed down the printing and scanning process. For high-security or high-value applications, the checksum could be enabled. This 'optional' characteristic is a reflection of the era it was born into and the pragmatic approach of its designers. |

|
8. Code 39 in the Modern Factory |
It is vital to understand that Code 39 was not a static solution. It was a foundational technology that paved the way for more advanced systems. |
In many modern factories, you will find a hybrid system. The 'paper traveler' has often been replaced by a 'paperless' or 'digital traveler,' which exists solely as a digital file on a tablet or computer. However, the logic of Code 39---the 'scan to identify'---is still used. Instead of a traveler, an electronic smart tag, an RFID chip, or a high-density Data Matrix code might be physically attached to the pallet, but the workflow is exactly the same: scan the ID, pull up the instructions, and log the activity. |
In fact, the lineage of Code 39 is directly visible in the adoption of 2D barcodes for similar work. When the automotive industry, for example, needed to track individual engines through assembly, they used Data Matrix codes because they are small and can be etched directly onto the cylinder head. However, the *process* of tracking it---the logic of scanning to move the work in progress---was a direct copy of the Code 39 workflow that had been used for decades. |
Furthermore, Code 39 remains the workhorse in many industries that do not require high data density. Consider logistics and warehousing. Moving large pallets of finished goods doesn't require tiny codes. The robust Code 39 label on the side of the pallet is easily scanned by a warehouse worker with a handheld device, even from a distance, to log receipt and shipment. Its compatibility with all types of scanners also makes it a safe fallback choice for any business with a legacy system . SEW-EURODRIVE's DriveTag service, for instance, still offers Code 39 as a format for custom labeling, ensuring compatibility with customers' existing scanners and enterprise resource planning systems . |
We even see its legacy in the software used to manage WIP today. Modern inventory apps, such as QingTsaiWip V2 and WAMA, still explicitly list Code 39 support alongside QR Code and other formats . This indicates that while newer codes have emerged, Code 39 remains a standard that developers must support. |

|
9. The Legacy and Persistence of Code 39 |
Code 39 is not a 'legacy' technology in the sense of being obsolete. It is a 'legacy' technology in the sense of being a foundation. Like a screwdriver in a toolbox, it is not the most glamorous tool, but it is indispensable. Its persistence is a testament to good engineering. |
The choice of Code 39 for these industrial tracking tasks was not accidental. It was a deliberate design decision driven by the technical constraints of the 1970s and 1980s. At a time when computing power was scarce, memory was expensive, and printers were slow, Code 39 offered a practical solution to a real-world problem. It was simple enough to be printed by a dot-matrix printer on a standard sheet of paper, yet robust enough to be read by a scanner that might be covered in grease and dirt. This 'fitness for purpose' is what makes it an icon of industrial automation. |
Today, in the era of the Internet of Things, Industry 4.0, and smart manufacturing, the digital twin is a popular concept. The idea is to have a virtual representation of a physical object. In a sense, the paper traveler carrying a Code 39 barcode was the first primitive digital twin. The barcode on the paper was the connection between the physical world (the metal casting) and the digital world (the computer record). By scanning it, the physical part 'told' the digital system where it was and what had been done to it. |
This was a radical shift in manufacturing philosophy, moving from a reactive, after-the-fact recordkeeping system to a proactive, real-time tracking system. Code 39 was the key that unlocked this new capability. It brought the 'information age' to the factory floor. |

|
10. Conclusion: The Backbone of WIP Tracking |
The story of Code 39 in industrial WIP tracking is a story of solving a practical problem with elegant simplicity. From its initial application on paper routing sheets for metal castings, this humble barcode provided the necessary bridge between the physical shop floor and the emerging digital records. It allowed manufacturers to know, with a simple scan, where a part was, what had been done to it, and where it needed to go next. |
We have seen its application across various stages: surviving the separation from parts during high-temperature heat treatment, guiding the complex sequence of operations in machining, enduring the harshness of the painting line, and providing the critical traceability demanded by the military and aerospace sectors. While its limitations---low data density, lack of lowercase letters, and large physical footprint---have led to the adoption of denser symbologies like Code 128 and Data Matrix for specific applications, its legacy is undeniable. |
In its heyday, Code 39 was the undisputed champion of the industrial tracking sector. It was the first symbology to combine letters and numbers, it was robust enough to withstand the factory environment, and it was simple enough to be printed with widely available equipment. It standardized the 'scan-to-track' workflow that is now ubiquitous in modern manufacturing. Even today, in a world of complex 2D codes and RFID chips, the very process of tracking a work-in-process item---whether it's a jet engine or a box of cereal---owes a debt to the simple, reliable, and iconic Code 39. It is not the flashiest technology in the book, but it is undoubtedly one of the most important. |