Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Elixir for busy Javadevs

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

Elixir for busy Javadevs

Avatar for David Schmitz

David Schmitz

March 23, 2017
Tweet

More Decks by David Schmitz

Other Decks in Technology

Transcript

  1. #Devoxx #AwesomeElixir @koenighotze WET YOUR APPETITE FOR ELIXIR SHOW OFF

    SOME COOL FEATURES CODE A DISTRIBUTED PIZZA PARLOUR
  2. #Devoxx #AwesomeElixir @koenighotze It didn't take long, but pretty soon

    my gut feeling kicked in. This is good $hit. …, they both compile to instructions for the EVM - Joe Armstrong (Creator of Erlang)
  3. #Devoxx #AwesomeElixir @koenighotze Programmer focussed OTP Power + Ruby Love

    Functional but pragmatic Standard Toolset Why Elixir is awesome
  4. #Devoxx #AwesomeElixir @koenighotze Pizza Parlour - Version 1 “Take my

    money! I want a salami pizza!” “I am hungry!!” “3 €, please!”
  5. #Devoxx #AwesomeElixir @koenighotze Pillars of Resilience and Reliability Message-passing between

    isolated processes Automatic recovery and monitoring Transparent distribution
  6. #Devoxx #AwesomeElixir @koenighotze Shared resources Shared state Shared stability SHARED

    STATE COMPUTATION COMPUTATION COMPUTATION HEAVY WEIGHT PROCESS COMPUTATION COMPUTATION COMPUTATION
  7. #Devoxx #AwesomeElixir @koenighotze Architecture build around tiny Processes PROCESS PROCESS

    PROCESS PROCESS PROCESS PROCESS PROCESS PROCESS PROCESS PROCESS PROCESS HEAVY WEIGHT PROCESS
  8. #Devoxx #AwesomeElixir @koenighotze Message driven Pizza - The request {:pizza,

    “Salami”} handle_call({:pizza, “Salami”}, from, state)
  9. #Devoxx #AwesomeElixir @koenighotze Risk at the Bottom of the Supervision

    Tree APPLICATION SUPERVISOR Here be dragons…
  10. #Devoxx #AwesomeElixir @koenighotze Real-time apps with Ecto and Phoenix defmodule

    Video do def alphabetical(query) do from q in query, order_by: q.name end end
  11. #Devoxx #AwesomeElixir @koenighotze Real-time apps with Ecto and Phoenix def

    alphabetical(query) do … Video |> Video.alphabetical |> Repo.all
  12. #Devoxx #AwesomeElixir @koenighotze New insights and ideas Clean patterns as

    part of the core Architecture and Tooling for IoT Vibrant and friendly Community Come for OTP, stay for…
  13. #Devoxx #AwesomeElixir @koenighotze Elixir Homepage, http://elixir-lang.org/ Dave Thomas, Programming Elixir

    Fred Hebert, Stuff Goes Bad: Erlang in Anger Do you want to know more?