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
Primer on the 4 Rules of Simple Design
Search
Marty Haught
September 15, 2016
Technology
72
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Primer on the 4 Rules of Simple Design
A short introduction to the 4 Rules of Simple Design given at Boulder Ruby in 2015 and 2016.
Marty Haught
September 15, 2016
More Decks by Marty Haught
See All by Marty Haught
Baltic_Ruby_Keynote_2025.pdf
mghaught
0
120
State of RubyGems 2024
mghaught
0
290
Interviewing Developers - Boulder Ruby May 2018
mghaught
1
160
The Prototyping Mindset - Devoxx.us 2017
mghaught
0
220
Make Better Decisions
mghaught
0
210
Make Better Decisions
mghaught
0
52
Ruby Community: Awesome; Could be Awesomer
mghaught
2
310
Ruby Community: Awesome; Could be Awesomer
mghaught
4
210
Other Decks in Technology
See All in Technology
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
810
AI感のないAWS構成図をAIエージェントに描かせたい!
sagochiko
2
500
Apache Iceberg が拓く AI 時代のオープンレイクハウス
tomtanaka
0
210
Meet AgentCore Identity Consent Portal
hironobuiga
3
160
猫でもわかるKiro Web
kentapapa
1
160
The kernel report
ennael
PRO
1
190
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
520
形式手法を使って仕様をコーディングしよう
mikanichinose
0
160
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.5k
営業オントロジーの作り方と、エージェントからの辿り方 ── ナレッジワークの現場から
kworkdev
PRO
1
230
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
180
プラットフォームを「作る」、 チームに「入り込む」
sansantech
PRO
0
510
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
New Earth Scene 8
popppiees
4
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
76k
Embracing the Ebb and Flow
colly
88
5.2k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
We Are The Robots
honzajavorek
0
380
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
A designer walks into a library…
pauljervisheath
211
25k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Practical Orchestrator
shlominoach
192
12k
Transcript
Primer on the 4 Rules of Simple Design Marty Haught
@mghaught
Origin • Introduced by Kent Beck pre 2000 • via
Extreme Programming (XP) • Associated with “Do the simplest thing that could possibly work.”
Corey Haines http://bit.ly/4rules-boulderruby $11.99 • via Code retreats • Conway’s
Game of Life
The Rules 1. Tests pass 2. Expresses intent 3. No
duplication 4. Small
1. Tests Pass • Need to verify that your code/system
works • Automated tests are the fastest way to verify
2. Expresses Intent • Intention revealing • You can quickly
look at it and know what it does • Not bad naming, unclear or inaccurate • Does the method/variable match the language you use to describe it?
3. No Duplication • DRY - Don’t Repeat Yourself •
Commonly thought of as repetition in code structure (lines of code) • Also knowledge duplication • "Every piece of knowledge should have one and only one representation."
4. Small • No extraneous parts to the code •
Does everything there have a purpose? • Is it still being used? • Did I extract too far?
Resources • Corey’s Book: http://bit.ly/4rules-boulderruby • XP wiki: http://c2.com/cgi/wiki?XpSimplicityRules •
JB Rainsberger: http://www.jbrains.ca/permalink/ the-four-elements-of-simple-design