Among other things (which I'm sure will be elaborated upon below) Japanese English slang for a comb-over.

Barcodes consist of a series of bars, some fat (ones), some thin (zeros), that make numbers that can be easily scanned. Barcodes include identifiers at the beginning, middle, and end (usually 6, 6, and 6), which make sure a bar codes gets scanned the right direction, and that the scan was complete.

You might also want to look at The hidden evil in UPC bar codes.

The bar code was invented by two guys from the Drexel Institute of Technology in Philadelphia, Pennsylvania USA. In 1948, graduate students Bernard Silver and Norman Joseph Woodland looked into a method of retrieving information during checkout at a cash register. At first, the two tried using ultraviolet-sensitive ink that could be read by, you guessed it, an ultraviolet light. However, this method was too expensive at the time and was therefore scrapped. Back to the drawing board! Finally in October of 1949, the patent was filed for what has now become known as the barcode. Their invention was described as "article classification...through the medium of identifying patterns" (i.e. the different sizes of bars). It was not until 1966 that the barcode system was implemented commercially. Unfortunately, there were no universal standards in place for barcodes at that time. Therefore, the UGPIC, or Universal Grocery Product Identification Code was established as a standard. This later led to the adoption of the UPC (Universal Product Code), which is still in use by the United States today.




note to self: must get a life. I am writing about barcodes for cripes sake! :O
Another barcoding scheme is called "39" or "3 of 9", and is in widespread use. Unlike UPC, 39 is alphanumeric. A bar of this code represents a string of characters. The first and last characters are always the "START/STOP" character. This allows the code to be scanned in either direction. The code is called 3 of 9 because in each character, 3 elements of the character are wide, while the rest are narrow. For example, here is the start/stop code:#...#.###.###.#
Note that the start character has 9 elements, either black (#) or white (.). There is one wide white element, and two wide blacks, totaling 3. Wide elements are three units wide, while narrow elements are one unit wide. Characters are separated by one narrow white element.Characters which may be represented by code 39: space, START/STOP, ~, $, %, *, +, Numbers, and uppercase letters.

Barcode Design

There are quite a few different types of barcode encoding schemes in use around the world. The different schemes are known as symbologies. Each one has its own strengths and weaknesses, which make it more or less suitable for a given application. Some of the characteristics that get traded off in choosing (or designing) a barcode symbology are:

  • Density How much room do you have for your barcode? This is a key aspect of barcode design. It is the one that every other design choice must make deals with. There are many strategies for increasing the density of barcode symbologies, most of which are beyond the scope of this writeup.
  • Character Sets How many different characters do you need? Some symbologies can encode only numbers, some can encode the entire extended ASCII set, others fall somewhere in between.
  • Integrity How important is accuracy? Symbologies may (or may not) use a couple of different means of encouraging accuracy:
    • Self-checking symbologies are those in which a single error will always produce an invalid character. The barcode will just be rejected by the scanner. This is distinct from:
    • Checksums are extra character(s) added to the encoded content, based on some mathematical operation performed on it. This is especially useful when the code may be hand-entered, for instance when self-checking rejects a corrupt or damaged barcode.
  • Simplicity How much trouble and expense are you willing to invest? Some symbologies can be nothing more than special fonts, which may be typed in with a word processor. Others may require special software and hardware to use.

Common Symbologies

The following is a list of some of the more popular barcode symbologies in use at the turn of the 21st century. It is by no means exhaustive, but it illustrates some of the tradeoffs inherent in the technology.

  • Code 39, or "3 of 9" This is the most common general-purpose symbology. It is simple, self-checking, and it can encode alphabetic, as well as numeric characters. There are variations of it that can incorporate checksums, and lowercase letters and extra symbols. There are freeware 3 of 9 fonts, and any off-the-shelf scanning system can read it. It is used in warehouse tracking, or just about any place where barcodes are handy for internal purposes. It is not at all compact, but it is very flexible.
  • UPC "Universal Product Code". There are actually five variants. The most familiar to American and Canadian consumers is UPC-A. It is the 12 digit numeric code on every candy bar and can of beans in North America. From a design standpoint, its most important characteristic is integrity. It can be scanned omnidirectionally, and is very forgiving of print quality. Both the symbology and its content are overseen by the Uniform Code Council, Inc. (UCC), of Dayton, Ohio. If you want to sell your product in Wal-Mart, you gotta go through the UCC first.
  • EAN "European Article Numbering". These symbologies are a superset of UPC, with thirteen digits instead of twelve. They incorporate a country code along with the UPC information. EAN International has offices around the world, and even the UCC will require retailers to use EAN codes by 2005. For some reason, Japan has adopted its own name for the EAN-13 symbology, with its country code. If you see references to a JAN barcode, do not be alarmed. Your EAN-13 system will work fine.
  • Postnet The US Postal Service has invented its own unique barcode system for mail. It uses the height of the bars, instead of their width, to encode information. This system is well-adapted to streaming readers. Traditional symbologies would be susceptible to errors introduced by fluctuations in the speed at which a barcode passed in front of the reader.
  • MSI Also known as Modified Plessey Code. These are the barcodes seen on the shelves (but not on the products) in grocery stores. It is not self-checking, but it uses a CRC check code. It has a hexadecimal character set. It is very well-suited to reading and mass code storage by portable devices. (Maybe you have seen people with little boxes slung over their shoulders, working their way down the aisles.) The original Plessey Code is almost obsolete, but it is sometimes still used in libraries.
  • Code 128 Unlike Code 39, Code 128 incorporates the entire 128 character true ASCII set. It uses a check code, and is extremely dense. It has no set length, so you can use it for just about any old thing. This is a good one to use if you need to encode lots of information per item. Unfortunately, you can't just type this one in. You'll need some software to create and read these barcodes. There is also a UCC/EAN-128 specifation, which is used to provide product supply chains with extended information.
  • 2 of 5 "plain" 2 of 5 is not used as often as Interleaved 2 of 5. This is a numeric-only symbology that encodes numbers in pairs - odd-numbered digits in the bars, even-numbered ones in the spaces. Its chief virtue is density.
  • Two-Dimensional Barcodes There is a whole class of "barcodes" that are non-linear. You have probably seen these on the shipping labels of UPS packages. That one is called Maxicode, and it can store up to 100 full ASCII characters in a square inch. It can still be read when 25% of it has been destroyed. Other prevalent 2-d barcodes are Codablock and PDF417. One of the best is called SuperCode, and it has been graciously released to the public domain by its inventor, Ynjiun Wang. These are certainly the future of barcoding, because of their density and integrity, but they all require special software and hardware to implement.

A bar code is a sequence of alternating black and white lines, which encodes a sequence of numbers or letters. They are intended for use in 'keyless data entry' for automated identification of items. Scanning a bar code is easy, fast and accurate, reducing the work and removing the human error introduced in data entry.

Bar codes can be scanned and decoded with little or no errors under most conditions, often without human intervention. Bar code readers typically use a red laser to detect the edges of the lines, thus allowing the bar code to be read from almost any direction.

The symbology of a bar code is similar to that of Morse code. A sequence of symbols are encoded using 2 signals (in the case of a bar code, a black line or a white line, in the case of Morse code, a 'dit' or a 'dah'). While it may appear that a bar code consists of different widths of lines, all of the lines are, in fact, the same width. Wider lines occur when two or more lines of the same colour are adjacent.

As well as encoding a string of characters, the bar code will usually include a checksum at the end to improve accuracy. If the checksum is incorrect, the reading is discarded.

There are many encoding schemes used in bar codes, some allowing alphanumeric characters to be encoded:

UPC is the standard encoding for grocery bar codes and ISBN numbers on books. This encoding represents the digits 0-9, each with 2 black lines a 2 white lines, with widths of 1-4, up to a total of 7:
  |   ## #|
0 |   ## #|
  |   ## #|

  |  ##  #|
1 |  ##  #|
  |  ##  #|

  |  #  ##|
2 |  #  ##|
  |  #  ##|

  | #### #|
3 | #### #|
  | #### #|

  | #   ##|
4 | #   ##|
  | #   ##|

  | ##   #|
5 | ##   #|
  | ##   #|

  | # ####|
6 | # ####|
  | # ####|

  | ### ##|
7 | ### ##|
  | ### ##|

  | ## ###|
8 | ## ###|
  | ## ###|

  |   # ##|
9 |   # ##|
  |   # ##|
The bar codes are split into two groups of 6 numbers. To read a UPC bar code, there are some special rules. The 2nd, 3rd and 5th nubers are inverted and read backwards and the 6th - 12th numbers are inverted. This is to reduce errors in the reading and to indicate the orientation of the bar code.

Log in or register to write something here or to contact authors.