Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Elm - A new approach to building the front end
Joel Clermont
November 06, 2015
Programming
0
220
Elm - A new approach to building the front end
As delivered at True North PHP 2015
Joel Clermont
November 06, 2015
Tweet
Share
More Decks by Joel Clermont
See All by Joel Clermont
Level Up Your Code Quality
jclermont
0
140
How to Save Time
jclermont
0
21
F# Type Providers
jclermont
0
39
Give Elm a Chance! (that conference)
jclermont
0
110
Give Elm a Chance (newCodeCamp)
jclermont
0
110
Give Elm a Chance!
jclermont
0
150
Property-based testing: work harder, not smarter
jclermont
0
260
Elm: A new approach to building the front end
jclermont
0
66
Hack - Why Should I Care?
jclermont
0
48
Other Decks in Programming
See All in Programming
SHOWROOMの分析目的を意識した伝え方・コミュニケーション
hatapu
0
230
【DevFest & ADS JP 22】チームで導入する
[email protected]
おいしい健康
kako351
0
210
Refactor with using `available` and `deprecated`
417_72ki
3
370
スタック・オーバーフローに コントリビュートしはじめて良かったこと🐣
takuyakikuchi
1
120
AWSにおける標的型Bot対策
hacomono
0
390
Hasura の Relationship と権限管理
karszawa
0
150
How to Fight Production Incidents?
asatarin
0
150
ECS Service Connectでマイクロサービスを繋いでみた
xblood
0
520
Enumを自動で網羅的にテストしてみた
estie
0
1.2k
あなたと 「|」 したい・・・
track3jyo
PRO
2
1k
監視せなあかんし、五大紙だけにオオカミってな🐺🐺🐺🐺🐺
sadnessojisan
2
1.3k
様々なWebアプリをAzureにデプロイする
tomokusaba
0
110
Featured
See All Featured
Practical Orchestrator
shlominoach
178
8.9k
Raft: Consensus for Rubyists
vanstee
130
5.7k
Building Flexible Design Systems
yeseniaperezcruz
314
35k
The Illustrated Children's Guide to Kubernetes
chrisshort
22
42k
Docker and Python
trallard
30
1.9k
Code Review Best Practice
trishagee
50
11k
Building Your Own Lightsaber
phodgson
96
4.9k
Designing Experiences People Love
moore
130
22k
Bootstrapping a Software Product
garrettdimon
299
110k
Making the Leap to Tech Lead
cromwellryan
116
7.6k
The Art of Programming - Codeland 2020
erikaheidi
35
11k
The Language of Interfaces
destraynor
149
21k
Transcript
Elm A new approach to building the front end Joel
Clermont @jclermont
What to expect • Elm language tour
What to expect • Elm language tour • Application architecture
overview
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process?
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process? • Tooling
What to expect • Elm language tour • Application architecture
overview • Tour an Elm app • How does this fit in with my current process? • Tooling • Why should I give Elm a try?
Elm as a language
Pure Functions
Immutable Data
Statically Typed (plus types as data)
Statically Typed (another example)
Functional Programming • higher-order functions • currying • recursion •
pattern matching
All hail the pipe!
Questions?
Elm architecture
Model
Update
View
Questions?
Tour a simple app
Model
Update
View
None
Questions?
How does this fit in?
From Elm to your browser • compile to JS
From Elm to your browser • compile to JS •
link JS source in your web app
From Elm to your browser • compile to JS •
link JS source in your web app • Elm.fullscreen
From Elm to your browser • compile to JS •
link JS source in your web app • Elm.fullscreen • Elm.embed
It’s just HTML/CSS/JS
Excellent JS interop
Questions?
Tooling
Compiler
Excellent tooling • Package manager
Excellent tooling • Package manager • REPL
Excellent tooling • Package manager • REPL • Interactive debugger
Excellent tooling • Package manager • REPL • Interactive debugger
• Great documentation
Questions?
Why should I consider Elm? • It’s fast
Why should I consider Elm? • It’s fast • It’s
safe
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem • Easy to integrate gradually
Why should I consider Elm? • It’s fast • It’s
safe • Great tooling and ecosystem • Easy to integrate gradually • It’s FUN
Next steps • http://elm-lang.org (live demos, debugger, REPL) • https://pragmaticstudio.com/elm
• https://pragmaticstudio.com/blog/2014/12/19/ getting-started-with-elm • @elmlang @czaplic @rtfeldman • http://noredinktech.tumblr.com
Questions? @jclermont
https://joind.in/15744 Thank you! @jclermont