What is a Barcode Scanner and How Does it Work?