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
Elixir Mini Introduction for Zürich Meetup
Search
Stefan Wintermeyer
February 20, 2017
Technology
0
270
Elixir Mini Introduction for Zürich Meetup
Stefan Wintermeyer
February 20, 2017
Tweet
Share
More Decks by Stefan Wintermeyer
See All by Stefan Wintermeyer
Cache = Cash! 2.0
wintermeyer
0
50
Disassembling Online Dating - FroSCon 2024
wintermeyer
0
130
Ash Framework - Elixir Kenya February 2024 Webinar
wintermeyer
1
150
The Greener Gras
wintermeyer
0
320
Rails vs. Phoenix vs. Hanami
wintermeyer
0
1.4k
RubyConfBy 2018 talk about WebPerformance with Rails 5.2
wintermeyer
3
380
WebPerformance für Reiseblogger
wintermeyer
0
310
WebPerformance with Rails 5.2
wintermeyer
5
980
FrOSCon 2017 talk about vutuv
wintermeyer
0
570
Other Decks in Technology
See All in Technology
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
1
810
ソフトとハード両方いけるデータ人材の育て方
waiwai2111
1
200
20260114_データ横丁 新年LT大会:2026年の抱負
taromatsui_cccmkhd
0
160
AI Agent Agentic Workflow の可観測性 / Observability of AI Agent Agentic Workflow
yuzujoe
1
1.1k
Models vs Bounded Contexts for Domain Modularizati...
ewolff
0
190
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.4k
BidiAgent と Nova 2 Sonic から考える音声 AI について
yama3133
2
150
Node vs Deno vs Bun 〜推しランタイムを見つけよう〜
kamekyame
1
470
Claude Codeを使った情報整理術
knishioka
20
12k
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
1
560
AWS re:Invent 2025 を振り返る
kazzpapa3
2
120
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
75
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Faster Mobile Websites
deanohume
310
31k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
240
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Building Applications with DynamoDB
mza
96
6.9k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
280
New Earth Scene 8
popppiees
1
1.4k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
420
KATA
mclloyd
PRO
33
15k
Transcript
Elixir Stefan Wintermeyer @wintermeyer
Elixir is a functional, concurrent, general-purpose programming language that runs
on the Erlang virtual machine (BEAM). https://en.wikipedia.org/wiki/Elixir_(programming_language)
defmodule ModuleName do def hello do IO.puts "Hello World" end
end http://elixir-lang.org/crash-course.html
IEx Elixir’s interactive shell
None
Why would I want to learn Elixir? Why invest the
time and effort? I’m happy with Ruby and OO.
Three Main Reasons Spoiler Alert: Concurrency is not one of
them.
1. Speed Elixir runs circles around Ruby and Python.
2. Stability Speed is nothing without stability.
3. Hot-Code Upgrades Zero Downtime!
Some Code Examples
Assigning Values to Variables
iex(1)> a = 1 1 iex(2)>
iex(1)> a = 1 1 iex(2)> a = 2 2
iex(3)>
iex(1)> a = 1 1 iex(2)> a = 2 2
iex(3)> ^a = 3 ** (MatchError) no match of right hand side value: 3
Tuples
iex(1)> {a, b, c} = {10, 20, 30} {10, 20,
30} iex(2)>
iex(1)> {a, b, c} = {10, 20, 30} {10, 20,
30} iex(2)> a 10 iex(3)>
Pattern Matching
iex(1)> {a, b, c} = {10, 20, 30} {10, 20,
30} iex(2)>
iex(1)> {a, b, c} = {10, 20, 30} {10, 20,
30} iex(2)> {a, 20, c} = {10, 20, 30} {10, 20, 30} iex(3)>
iex(1)> {a, b, c} = {10, 20, 30} {10, 20,
30} iex(2)> {a, 20, c} = {10, 20, 30} {10, 20, 30} iex(3)> {a, 1, c} = {10, 20, 30} ** (MatchError) no match of right hand side value: {10, 20, 30}
If you want to get your feed wet with Elixir
I recommend two projects.
If you like hardware try http://nerves-project.org
None
If you like the web try www.phoenixframework.org
None
Phoenix Framework Productive. Reliable. Fast. Phoenix != Rails
None
mix phoenix.new blog Y cd blog vim config/dev.exs brew install
postgres brew services start postgres createuser -W --createdb blog demo mix ecto.create mix phoenix.gen.html Post posts subject body vim web/router.ex resources "/posts", PostController mix ecto.migrate mix phoenix.server Blog Example
Thank you! @wintermeyer