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
Flow Based Programming in 2 minutes
Search
Lukas Rieder
April 04, 2019
Programming
0
78
Flow Based Programming in 2 minutes
This is a lightning ⚡️ talk I held at the Ruby User Group Berlin on April 4 2019.
Lukas Rieder
April 04, 2019
Tweet
Share
More Decks by Lukas Rieder
See All by Lukas Rieder
Modeling Document Databases
overbryd
1
140
Ahoi! Complex applications on Kubernetes
overbryd
0
80
Metabase UG, November 2018
overbryd
0
130
Flow Based Programming in Elixir
overbryd
0
170
Configuration in Elixir
overbryd
0
180
Metabase, three good practises for a hosted setup
overbryd
0
100
Elixir Deployment
overbryd
1
61
NIFs and C-Nodes
overbryd
0
76
SQL Workshop Part 1
overbryd
0
140
Other Decks in Programming
See All in Programming
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
190
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
Implementation Patterns
denyspoltorak
0
280
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
450
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
200
フロントエンド開発の勘所 -複数事業を経験して見えた判断軸の違い-
heimusu
7
2.8k
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.9k
組織で育むオブザーバビリティ
ryota_hnk
0
170
Grafana:建立系統全知視角的捷徑
blueswen
0
330
MUSUBIXとは
nahisaho
0
130
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
540
CSC307 Lecture 08
javiergs
PRO
0
670
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.5k
Bash Introduction
62gerente
615
210k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.6k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
180
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
75
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
410
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
180
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
How STYLIGHT went responsive
nonsquared
100
6k
Transcript
Hello, my name is Lukas
Nice to meet you tonight.
Ruby?
Elixir!
Superior VM
Superior Language
Superior Principles
I am here to warn you.
Everything I have written just keeps going and going and
going and going and going |> and going |> and going
|> and going |> and going |> and going
|> and going |> and going |> and going
|> and going |> and going |> and going
17:51:09.580 [error] Process #PI raised an exception ** (RuntimeError) and sometimes (stdlib) erl_eval.erl: 678: :erl_eval.do_apply/6
|> and going |> and going |> and going
|> and going |> and going |> and going
Write once run forever.
Elixir will put you out of your job.
No wonder I am back at RUG-B.
That is actually not what I wanted to talk about.
Let me tell you about the Flow Based Programming Paradigm
in 2 minutes.
OUT B A OUT IN IN IN IN
OUT B A OUT IN IN IN IN
OUT B A OUT IN IN IN IN Out In
OUT B A OUT IN IN IN IN Out In
Error
OUT B A OUT IN IN IN IN Out In
Error Ok
OUT B A OUT IN IN IN IN Out In
Error Ok Ok
OUT B A OUT IN IN IN IN Out In
Error Ok Ok
OUT B A OUT IN IN IN IN Out In
Error Ok Ok
OUT B A OUT IN IN IN IN Out In
Error Ok Ok
OUT B A OUT IN IN IN IN Out In
Error Ok Ok .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$ .quack
OUT B A OUT IN IN IN IN Out In
Error Ok Ok $%@$
There is a full blown implementation for Elixir: https://github.com/suitepad-gmbh/pipette
I am currently writing an amazing implementation for Ruby! https://TBA
If you have message passing, workflow, dynamic process, data transformation
problems...
I would like to know about them! https://www.hibase.co/ https://twitter.com/Overbryd
Thank you. https://github.com/suitepad-gmbh/pipette https://www.hibase.co/ https://twitter.com/Overbryd
I still love Ruby very much.
https://github.com/suitepad-gmbh/pipette https://www.hibase.co/ https://twitter.com/Overbryd I still love Ruby very
much.