Skip to content

Instantly share code, notes, and snippets.

@wdhowe
Created April 11, 2021 03:34
Show Gist options
  • Save wdhowe/f1de8d44db338ed1a50833e8ea815c78 to your computer and use it in GitHub Desktop.
Save wdhowe/f1de8d44db338ed1a50833e8ea815c78 to your computer and use it in GitHub Desktop.
simplicity

Simplicity

Notes from Rich Hickey's Simplicity Matters slides.

"Simplicity is the ultimate sophistication." -Leonardo da Vinci

Toolkit

Complexity Simplicity
State, Objects Values
Methods Functions, Namespaces
Variables Managed refs
Inheritence, switch, matching Polymorphism a la carte
Syntax Data
Imperative loops, fold Set functions
Actors Queues
ORM Declarative data manipulation
Conditionals Rules
Inconsistency Consistency

Order

Complex Simple
Positional arguments Named arguments or map
Syntax Data
Product types Associative records
Imperative programs Declarative programs
Prolog Datalog
Call chains Queues
XML JSON, Clojure literals
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment