Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
The Pragmatic Programmer
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Lucas Arantes
August 26, 2016
Programming
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
The Pragmatic Programmer
A talk to incentive coders to be more pragmatic.
Lucas Arantes
August 26, 2016
More Decks by Lucas Arantes
See All by Lucas Arantes
Elixir 101
lucasprag
1
270
The pragmatic programmer
lucasprag
0
150
Clean Architecture
lucasprag
3
90
Hello Docker!
lucasprag
0
80
Hello Swift!
lucasprag
1
61
Other Decks in Programming
See All in Programming
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
180
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
500
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
Everything will be SERVERLESS — 信じて運用した10年の経験値 / Everything Will be Serverless — Lessons Learned from 10 Years of Operational Experience
seike460
PRO
1
1.1k
Rでドレミ/Do-Re-Mi_with_R
florets1
0
130
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
220
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
590
Jetpack Compose Mechanisms
skydoves
3
820
sbt 2.0: takeoff
eed3si9n
0
160
phperだってパンチカードでコーディングしたい
o0h
PRO
0
330
[2026-09-26]空論ジェネリックプロセス~テスト資産とAIで紡ぐ、再現可能なパフォーマンスチューニングの話~
tosite
0
270
Web Framework Benchmark Battle 2026, Any%
a_matsuda
2
2k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
590
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
460
The Curious Case for Waylosing
cassininazir
1
570
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Scaling GitHub
holman
464
140k
BBQ
matthewcrist
90
10k
Transcript
The Pragmatic Programmer
None
Critical Thinking
None
None
Provide options, don’t make lame excuses
“The greatest of all weaknesses is the fear of appearing
weak” J.B. Bossuet
Everybody is learning
Don’t live with broken windows
None
DRY — Don’t Repeat Yourself
“Every piece of knowledge must have a single, unambiguous, authoritative
representation within a system” The Pragmatic Programmer
When you don’t follow the DRY principle • Increase debugging
difficult • Have to change the same code twice • Increase redundancy • More time to develop a new feature • Refactor to fix your code • ... DRY
Catalyst for change
None
Invest in your knowledge portfolio
“An investment in knowledge always pays the best interest” Benjamin
Franklin
Invest in your knowledge portfolio • invest regularly • diversify
• buy low, sell high • manage risk • review and rebalance
Communicate
“A large part of our day is spent communicating, so
we need to do it well” The Pragmatic Programmer
Ideas to better communicating • know/plan what you want to
say • write an outline • ask yourself: Does this get across whatever I’m trying to say? Refine it until it does • know your audience, understand the needs interests and capabilities of your audience
Know more than one language
“The limits of languages influence how you think about a
problem” The Pragmatic Programmer
Use one editor well
Choose an editor, know it well, and use it for
all editing tasks.
Good editors have the following features • configurable • extensible
• programmable
None
Want more?
None
42