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
ElixirConf.EU 2017 Recap
Search
Lou Xun
May 21, 2017
Programming
0
150
ElixirConf.EU 2017 Recap
Recap of ElixirConf.EU 2017 at Elixir Shanghai meetup
Lou Xun
May 21, 2017
Tweet
Share
More Decks by Lou Xun
See All by Lou Xun
Traffic Control the Rabbit(MQ) with Rust using RedBPF
aquarhead
0
150
Stateful PBT, with a game logic case study
aquarhead
1
200
Introducing ExLoglite
aquarhead
0
120
Defensive Programming vs. Let It Crash
aquarhead
4
970
Getting Help |> Ways to Contribute
aquarhead
1
99
Other Decks in Programming
See All in Programming
令和最新版手のひらコンピュータ
koba789
14
7.8k
Claude Codeで実装以外の開発フロー、どこまで自動化できるか?失敗と成功
ndadayo
2
220
tool ディレクティブを導入してみた感想
sgash708
1
140
#QiitaBash TDDで(自分の)開発がどう変わったか
ryosukedtomita
1
370
The State of Fluid (2025)
s2b
0
170
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
12
2.7k
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
370
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
1
240
UbieのAIパートナーを支えるコンテキストエンジニアリング実践
syucream
2
520
AIエージェント開発、DevOps and LLMOps
ymd65536
1
200
Nuances on Kubernetes - RubyConf Taiwan 2025
envek
0
170
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
380
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Why Our Code Smells
bkeepers
PRO
338
57k
Become a Pro
speakerdeck
PRO
29
5.5k
Embracing the Ebb and Flow
colly
86
4.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Faster Mobile Websites
deanohume
309
31k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
The Cost Of JavaScript in 2023
addyosmani
53
8.8k
Designing for Performance
lara
610
69k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
560
Transcript
2017 ElixirConf.EU
None
José Valim Day 1 Keynote • Elixir 5yrs old, 1.0
-> 1.4 • _Seven Languages in Seven Weeks_ • "Elixir" before Elixir • defobject >,< • Elixir Goals -> Rethink meta-programming • Elixir ~= Data(types) + Modules + Processes • http: //theerlangelist.com //article/spawn_or_not • Time -> Runtime • Elixir 1.5
Tonći Galić CQRS/ES + Elixir • Event Sourcing • eventual
consistency • CQRS • Command • Query • Responsibility Segregation • +Elixir • gen_server/gen_statem/gen_stage • pattern matching • etc… • https: //10consulting.com/2017/01/04/building-a-cqrs-web- application-in-elixir-using-phoenix/
Andrea Amantini Nextjournal • https: //nextjournal.com/ • editor + interactive,
connected code cells • Dependencies of code cells -> Graph of processes • Cuneiform (cuneiform-lang.org) • GenStage (:digraph, BroadcastDispatcher) • Applications • Phoenix Channel • Runner App • Erlang Ports • Docker
None
Dániel Vámosi Visualization • https: //github.com/koudelka/visualixir • http: // www.erlang.pl/
• “Paparazzi”
Introducing ExLoglite LIGHTNING TALK
None
Tetiana Dushenkivska & Keith Salisbury Day 2 Keynote • _The
Age of Elixir_ • Community • Elixir Shanghai !!
Thomas Arts QuickCheck • Improved Elixir integration (eqc_ex) • PBT
x ex_loglite • Shrinking • Quviq customers: Volvo, Dropbox, Basho… • Erlang -> Elixir for B2B • Spec! (JSON Schema) • generator, validator • Real-time system challenge (timestamp…) • JSON Schema + QuickCheck for random data generation
defmodule ExLogLite.LogModelEQC do use ExUnit.Case use EQC.ExUnit alias ExLogLite.LogModel property
"`build` always return string of a specific length" do forall {s, n} <- {utf8(), choose(1, 1000)} do ensure byte_size(LogModel.build(s, n)) == n end end end
None
GraphQL Bruce Williams & Benjamin Wilson
Bruce Williams & Benjamin Wilson GraphQL • 3yrs of Elixir
@ CargoSence • RESTful APIs -> GraphQL • Absinthe • and friends… • Schema -> Objects -> Fields (type, another obj) • GraphQL Document • Query (like an object) • or Mutation, results are like queries • or Subscriptions
None
Bruce Williams & Benjamin Wilson Absinthe • Resolver -> Macro
(Map.get) • Execution / Data loading: • Batching • absinthe_ecto • lazy loading • combine sub-tree query • Projection (eager loading) • Extending Absinthe (hexdocs) • Phases |> Pipeline • Limit by complexity, etc… • middleware (per-field)
GRAPHQL BOOK COMING SOON
Petri Kero Scalable Mobile Game Backend • Distillery release •
Docker -> Kubernetes • libcluster • Distributed Locks • Global PG • Sloppy Quorum • Use AI client for load testing • 420k concurrents @ 8-node, 36 vCPU cluster • scaling up steps…
None
Chris McCord Closing Keynote • Why Phoenix 1.3 • Lonestar
ElixirConf 2017- KEYNOTE: Phoenix 1.3 • still rc >,< • Phoenix 1.4 • Metrics • Instrumenting
ADOPTING ELIXIR NEW BOOK2
See U Next Time @aquarhead