Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Generative Animation with Elm
Search
Ulric Wilfred
January 26, 2019
Programming
250
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Generative Animation with Elm
Presented at f (by) '19
Ulric Wilfred
January 26, 2019
More Decks by Ulric Wilfred
See All by Ulric Wilfred
Declarative UI in Elm (2026) @ Elm Camp
shamansir
0
15
The Future of Web UI Development
shamansir
0
170
iElm-Tech-JB.pdf
shamansir
0
130
"iElm"
shamansir
0
100
Elm Revolution
shamansir
0
120
Про Гит
shamansir
2
170
Elm: 2D and 3D Graphics
shamansir
1
560
RPD — Reactive Patch Development, Extended Cut
shamansir
0
240
RPD: Reactive Patch Development
shamansir
0
330
Other Decks in Programming
See All in Programming
仕様駆動開発による爆速プロダクト開発 / Bakusoku Spec Driven Development
kobakei
0
110
Building an Out-of-Order CPU
latte72
1
770
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
thread_parallel_with_free-threaded_Python_and_NumPy.pdf
riku_sakamoto
0
330
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
460
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
150
Foundry Localでエージェント開発
seosoft
0
190
20260828_品質と開発生産性を両立させる、AI時代のE2Eテストの考え方
magicpod
0
200
Are APIs Still Relevant in the AI Era?
soyuka
0
120
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
160
Claude Codeを組織的に動かして月400PRを実現した話
happy_ryo
0
270
Deep dive into the select statement (GopherCon UK)
jespino
0
180
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
790
4 Signs Your Business is Dying
shpigford
187
23k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
330
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
280
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Side Projects
sachag
456
43k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
460
Tell your own story through comics
letsgokoyo
1
1.1k
Technical Leadership for Architectural Decision Making
baasie
3
570
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
540
Transcript
Generative Animation with Elm f (by) ‘19 Minsk, Belarus
the obsessed engineer @shaman_sir the obsessed designer Sergo Golovachev Anton
Kotenko
1. The Problem hierarchy of needs from the designers’s point
of view splashes, banners, screensavers… maybe sales something else bla-bla-bla
The Company needs splash screens and banners for
every new IDE version and product
~2000 graphical artifacts per release
Pressure with time, every release requires new style
It should be complex, not minimal
None
So the designer comes to the idea to
generate this stuff (Company doesn’t care about the way it’s done)
It is better if it would be animated, so the
designer will be able to find and save the nicest frame
It is better if it includes time travel, so
the designer would be able to return back in time to the frame they missed
Trying new ideas should be easy, so it should
be easy to change the parts of the generated Thing
1. The Problem The programmer’s point of view λ
Why functional programming?
We’ve tried with p5.js and JavaScript and it’s error-prone
None
Haskell is fascinating
Algebraic Data Types save lives
We need the web output
Elm compiles to JS
Elm started with the graphics from the first
point
Elm is OK with both animation and time travel
None
2. The solution
We had no idea what we get as the result
Functional Programming Elm WebGL Shaders λ Precursors:
Combine different techniques Fractals Delaunay Voronoi FSS
Layers - to try Canvas / WebGL / Text,
to control their order Canvas WebGL SVG WebGL
None
None
MUV but for layers (triggered by animation ticks along with
other events) Canvas WebGL SVG WebGL Tick
None
None
JS-to-Elm connection: random numbers as side-effect
Canvas WebGL SVG WebGL FSS Start | Import | ChangeConfiguration
(also Lucky) Tick
None
Elm-WebGL is awesome https://github.com/elm-explorations/webgl
Type control for shaders code
https://github.com/JetBrains/elmsfeuer https://www.jetbrains.com/goodies/code2art/#tron
Fin.