Learn barcode usage module

implementation for issue #45 
need indentation fix.