Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Shipping Secret Messages Through Barcodes
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Karina Ruzinov
January 23, 2018
Programming
610
0
Share
Shipping Secret Messages Through Barcodes
PyCascades 2018 talk
Karina Ruzinov
January 23, 2018
Other Decks in Programming
See All in Programming
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
750
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
220
AIと共にエンジニアとPMの “二刀流”を実現する
naruogram
0
110
存在論的プログラミング: 時間と存在を記述する
koriym
5
730
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
3.8k
AI 開発合宿を通して得た学び
niftycorp
PRO
0
180
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
580
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.5k
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
1
210
PHPで TLSのプロトコルを実装してみる
higaki_program
0
650
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
230
Understanding Apache Lucene - More than just full-text search
spinscale
0
150
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
190
Rails Girls Zürich Keynote
gr2m
96
14k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
110
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
250
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
320
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.2k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
Shipping secret messages through barcodes Karina Ruzinov Software Engineer @
Transfix
Logistics Point A ➡ Point B ✈
Lingo • Carrier: does the shipping of The Thing •
UPS, USPS, FedEx • Shipper: the creator of The Thing • Warby Parker, Five Guys, Nike
So…barcodes?
None
UPC Code39
How you too can read a (UPC) barcode Credit: http://barcode-labels.com/you-can-learn-read-barcode/
What you’re seeing
420112159361289697090020989867 What the carrier is seeing
420 11215 9361289697090020989867 The Identifier for Zip Codes My actual
zip code What the customer impatiently stalks
But how did the scanner know how to do this
None
Convert the electrical signal from the LED reading to a
digital representation First things first.
Image credit: carolinabarcode.com
None
11000101000 11000100010
Is the check digit correct? Before we proceed.
Convert to ASCII text based on decoder 11000101000 11000100010 =
40 = H = 41 = I
Output the final text Allows us to go from To
this
But how does this relate to Python
But before Python, ZPL! (Zebra Programming Language)
None
Python! (writing ZPL)
These are important
None
X,Y coordinates
None
None
A “tall” number
None
None
None
None
None
None
Shipping labels are fun and all, but what else is
out there? QR CODES!
Quick Aside...
Quick Response Code?! • Uses our of alphanumeric representation ->
integer -> binary map • Data is encoded in a zig zag fashion • Level of error correction impacts the quantity of data that can be stored within the QR Code • Masking to appease the scanner
But thankfully we have ZPL (+ Python)
None
Unintuitive ZPL we didn’t have to write Easy QR Code
call
None
How about a demo?
Takeaway • A lot is hidden in plain sight •
Why type something, when you can just scan it? • Barcodes are cool
Thanks! Questions? @kruzinov