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
Primer on the 4 Rules of Simple Design
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Marty Haught
September 15, 2016
Technology
0
50
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
Tweet
Share
More Decks by Marty Haught
See All by Marty Haught
Baltic_Ruby_Keynote_2025.pdf
mghaught
0
81
State of RubyGems 2024
mghaught
0
250
Interviewing Developers - Boulder Ruby May 2018
mghaught
1
140
The Prototyping Mindset - Devoxx.us 2017
mghaught
0
190
Make Better Decisions
mghaught
0
200
Make Better Decisions
mghaught
0
44
Ruby Community: Awesome; Could be Awesomer
mghaught
2
290
Ruby Community: Awesome; Could be Awesomer
mghaught
4
190
Other Decks in Technology
See All in Technology
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
140
【SLO】"多様な期待値" と向き合ってみた
z63d
2
310
生成AIの利用とセキュリティ /gen-ai-and-security
mizutani
1
1.2k
どこで打鍵するのが良い? IaCの実行基盤選定について
nrinetcom
PRO
2
170
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
820
バクラクのSREにおけるAgentic AIへの挑戦/Our Journey with Agentic AI
taddy_919
2
1k
ビズリーチにおける検索・推薦の取り組み / DEIM2026
visional_engineering_and_design
1
100
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラットフォームづくり
yuriemori
0
110
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
14k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
95k
Evolution of Claude Code & How to use features
oikon48
1
280
クラウド時代における一時権限取得
krrrr38
1
170
Featured
See All Featured
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
130
Ethics towards AI in product and experience design
skipperchong
2
210
Building Adaptive Systems
keathley
44
2.9k
Skip the Path - Find Your Career Trail
mkilby
1
72
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Crafting Experiences
bethany
1
77
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
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