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
Generative Animation with Elm
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ulric Wilfred
January 26, 2019
Programming
0
240
Generative Animation with Elm
Presented at f (by) '19
Ulric Wilfred
January 26, 2019
Tweet
Share
More Decks by Ulric Wilfred
See All by Ulric Wilfred
The Future of Web UI Development
shamansir
0
150
iElm-Tech-JB.pdf
shamansir
0
120
"iElm"
shamansir
0
92
Elm Revolution
shamansir
0
110
Про Гит
shamansir
2
140
Elm: 2D and 3D Graphics
shamansir
1
550
RPD — Reactive Patch Development, Extended Cut
shamansir
0
220
RPD: Reactive Patch Development
shamansir
0
320
Animatron Player API in Details v3
shamansir
0
460
Other Decks in Programming
See All in Programming
Data-Centric Kaggle
isax1015
2
750
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
440
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
360
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
260
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.2k
Vibe codingでおすすめの言語と開発手法
uyuki234
0
210
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
TerraformとStrands AgentsでAmazon Bedrock AgentCoreのSSO認証付きエージェントを量産しよう!
neruneruo
4
2.7k
CSC307 Lecture 08
javiergs
PRO
0
650
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
CSC307 Lecture 03
javiergs
PRO
1
490
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
140
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
2
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
170
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
93
Navigating Team Friction
lara
192
16k
Test your architecture with Archunit
thirion
1
2.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Thoughts on Productivity
jonyablonski
74
5k
Bash Introduction
62gerente
615
210k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
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.