Theory
કિરાણાની દુકાનના counter પરનો beep
Chirag ની દુકાનની બાજુમાં એક biscuit નું packet લેવા જાઓ છો, અને જુઓ છો કે દુકાનવાળો એને એક ચમકતી લાલ બારી પાસેથી પસાર કરે છે. Beep: bill પર biscuit નું નામ અને કિંમત આવી ગયાં.
હવે એક કોયડો છે: ગયા મહિને આ જ biscuit ₹10 નાં હતાં, આજે ₹12 નાં છે, અને packet પર તો કોઈએ કંઈ નવું print નથી કર્યું.
તો પછી beep એ ખરેખર શું વાંચ્યું, અને નવી કિંમત આવી ક્યાંથી? આનો જવાબ જાણશો પછી દુનિયાનો દરેક supermarket તમને નવી નજરે દેખાશે.
Theory
પટ્ટીઓમાં લખેલો roll number
Barcode એ ખરેખર તો પટ્ટીઓવાળું શર્ટ પહેરેલો એક number જ છે. સફેદ ખાલી જગ્યાઓ પર જાડી-પાતળી કાળી પટ્ટીઓ, જેમ Morse code માં dots અને dashes થી અક્ષરો બને એમ, digits બનાવે છે. પટ્ટીઓ એટલા માટે જ છે કારણ કે પ્રકાશ પટ્ટીઓની પહોળાઈ, print કરેલા digits કરતાં વધારે ઝડપથી અને વધારે ભરોસાપાત્ર રીતે વાંચી શકે છે. નીચે જે number print થયેલો હોય છે, એ literally એ જ value છે, પણ આપણે વાંચી શકીએ એવી.
Theory
Reader કઈ રીતે કામ કરે છે
Reader એ scanner ની પ્રકાશ પાછો વાળવાની જ trick છે, ફક્ત ખાસ કામ માટે બનાવેલી:
- એ પટ્ટીઓ પર laser કે LED light ફેંકે છે;
- સફેદ જગ્યાઓ પ્રકાશ પાછો reflect કરે, કાળી પટ્ટીઓ પ્રકાશ absorb કરી લે;
- એક sensor આ on-off reflection pattern અને પટ્ટીઓની પહોળાઈનું timing માપે છે;
- decoding એ pattern ને પાછું digits માં ફેરવી નાખે છે.
હવે એનો બીજો અને સૌથી અગત્યનો ભાગ: આ number billing system ના database માં જાય છે, જે item નું નામ, કિંમત અને stock entry પાછાં આપે છે. Beep એટલે read બરાબર થઈ ગયું એની ખાતરી.
Theory
કોયડાનો જવાબ આપતી સમજણ
Barcode માં ખાલી એક ID હોય છે. કિંમત તો database માં હોય છે.
એટલા માટે જ biscuit ની કિંમત packet ને અડ્યા વગર બદલાઈ ગઈ: દુકાનવાળાએ database માં ફક્ત એક જ row edit કરી, અને shelf પરના દરેક packet ની "કિંમત" તરત જ બદલાઈ ગઈ.
ગયા lesson ના FASTag જેવી જ design છે (tag માં ID, account backend માં). તમે computing ની એક ઊંડામાં ઊંડી આદત જોઈ રહ્યા છો: identity object પર, અને meaning database માં, બરાબર એ જ વિચાર જેના પર તમારો BCA105 નો database subject ઊભો છે.
Quiz
Product ના barcode ની પટ્ટીઓમાં ખરેખર શું encode થયેલું હોય છે?
- ફક્ત એક ઓળખવા માટેનો number
- Product નું નામ અને અત્યારની કિંમત
- Expiry date અને batch ની વિગતો
- Product નો એક નાનો ફોટો
Show the answer
ફક્ત એક ઓળખવા માટેનો number
પટ્ટીઓમાં ફક્ત એક identifier encode થાય છે, બીજું કંઈ નહીં. નામ, કિંમત, batch, stock, જે કંઈ કામનું છે એ બધું database માં હોય છે, જેને આ ID ખોલી આપે છે. "Barcode માં કિંમત હોય છે" એ અહીંની સૌથી classic ગેરસમજ છે, અને આગળના block ની ₹10-થી-₹12 વાળી વાર્તા જ સાબિતી છે કે એ સાચું હોઈ જ ના શકે.
Think first
Barcode નો ચોરસ પિતરાઈ ભાઈ
UPI payment માટે તમે જે QR code scan કરો છો, એ ખરેખર barcode નું જ ચોરસ સ્વરૂપ છે. પટ્ટીવાળા barcode ના કરી શકે એવું QR શું કરી શકે? Dimensions વિશે વિચારો.
Show the answer
પટ્ટીઓ data ને એક dimension માં encode કરે છે (એક લીટી પરની પહોળાઈઓ): એટલા માટે એમાં ખાલી એક નાનો ID જ સમાય. QR code data ને 2 dimensions માં packing કરે છે (dots ની grid): સેંકડો characters, એટલે એમાં આખું UPI payment address, એક URL, કે WiFi ના credentials પણ સમાઈ જાય. અને ઉપરથી bonus: એને તમારો phone camera જ વાંચી લે, laser ની જરૂર જ નહીં, એટલા માટે જ payments માં QR છવાઈ ગયું, જ્યારે store ના shelf પર હજી પટ્ટીવાળા barcode નું જ રાજ ચાલે છે.
Watch out
જ્યાં marks કપાઈ જાય
એવું લખવું કે barcode માં કિંમત કે product ની વિગતો store થાય છે: ના, એમાં તો એક ID store થાય છે; બાકીનું બધું database આપે છે, પેલી કિંમત બદલાવાની વાર્તા યાદ રાખજો. Reader ને output device તરીકે ખોટી જગ્યાએ મૂકવું: એ તો data input કરે છે. અને barcode vs QR ની સરખામણીમાં marks છે 1D vs 2D અને laser reader vs camera માટે, બંને લખજો.
Theory
Pattern કઈ રીતે repeat થાય એ જુઓ
સળંગ 3 lessons ને એક જ હાડપિંજર છે: scanner (પ્રકાશ કાગળ વાંચે), barcode (પ્રકાશ પટ્ટીઓ વાંચે), RFID (radio tags વાંચે), દરેક એક identity પકડે છે જેને database meaning માં ફેરવે છે. જ્યારે BCA105 માં તમને formally databases ભણાવવામાં આવે, ત્યારે યાદ રાખજો કે એમનો હેતુ તો તમે એક toll plaza અને એક કિરાણાની દુકાન પર ક્યારનો જોઈ ચૂક્યા છો.
Summary
Key takeaways
- Barcode એક number ને કાળી/સફેદ પટ્ટીઓની પહોળાઈ તરીકે encode કરે છે; reader reflection decode કરે છે.
- કાળો રંગ પ્રકાશ absorb કરે, સફેદ reflect કરે; pattern નું timing digits બનાવે છે.
- Code માં ફક્ત એક ID હોય છે; કિંમત અને વિગતો database lookup માંથી આવે છે.
- Database માં એક જ edit કરો, ને દરેક packet ની કિંમત તરત બદલાઈ જાય, ફરી label લગાવવાની જરૂર નહીં.
- QR codes એ 2D barcodes છે: વધારે data, camera થી વંચાય, અને UPI ચલાવે.
- યાદ રાખવાની trick: identity object પર, meaning database માં.