Skip to content

Instantly share code, notes, and snippets.

@kafaichoi
Last active August 25, 2017 10:19
Show Gist options
  • Save kafaichoi/72c38d486cf00c1091f1687291ad5542 to your computer and use it in GitHub Desktop.
Save kafaichoi/72c38d486cf00c1091f1687291ad5542 to your computer and use it in GitHub Desktop.
Elixir Phoenix Note

Elixir = Ruby + Erlang + Clojure

Ruby: Developer Happiness Erlang: OTP Powerful Clojure: One of the best designed language. Elixir: Programmer focused, functional but pragmatic, standard toolset

Elixir Design priniciples

  1. Phoenix is not our application. Phoenix 1.3 is just web interface.
  2. Embrace state outside of the database. process holding state. OK to have stateful server
  3. If it's concurrent, extract it into an OTP application.
  4. (Don't just) Let it crush

Zen of Erkabg

core feature repeatable transient

Ease of finding bugs in production Repeatable Transient
core feature EASY HARD
secondary feature EASY, OFTEN, OVERLOOKED HARD
Bugs that happend in production Repeatable Transient
core feature Should Never All th time
secondary feature Pretty Often All the time
Bugs handled by restarts Repeatable Transient
core feature No Yes
secondary feature Depends Yes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment