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
Beginning ClojureScript: How not to learn a new...
Search
Greg Goltsov
October 03, 2017
Programming
1
100
Beginning ClojureScript: How not to learn a new language
Talk I gave at Sydney's Clojure meetup about my experience of learning ClojureScript.
Greg Goltsov
October 03, 2017
Tweet
Share
More Decks by Greg Goltsov
See All by Greg Goltsov
Seeing at the Speed of Thought: Empowering Others Through Data Exploration
ggoltsov
0
250
Full-stack Data Science: How to be a One-Man Data Team
ggoltsov
2
570
Kuranku - final game presentation
ggoltsov
0
260
Scalable agent-based simulations
ggoltsov
1
230
Procedural City Generator - Honours Presentation
ggoltsov
2
1.6k
Extracting the Meaning: Painless processing and analysis of image data with Fiji and Ruby
ggoltsov
0
150
Ninja Code
ggoltsov
1
2.4k
Other Decks in Programming
See All in Programming
各クラウドサービスにおける.NETの対応と見解
ymd65536
0
250
Оптимизируем производительность блока Казначейство
lamodatech
0
950
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
590
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
Androidアプリの One Experience リリース
nein37
0
1.2k
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
180
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
為你自己學 Python
eddie
0
520
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.4k
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
300
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
Featured
See All Featured
KATA
mclloyd
29
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
YesSQL, Process and Tooling at Scale
rocio
170
14k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
500
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Embracing the Ebb and Flow
colly
84
4.5k
How to train your dragon (web standard)
notwaldorf
89
5.8k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Transcript
Beginning ClojureScript How not to learn a new language @gregoltsov
www.gregory.goltsov.info
[email protected]
None
Watched & loved Simple Made Easy. “I’m learning Clojure”
Watched & loved Simple Made Easy. “I’m learning Clojure”
This was 5 years ago
Demo
— Why? — Too much Angular. Front-end never felt right.
Gulp, webpack, whaaa?
Enter ClojureScript Re-frame Re-frisk Figwheel
— Re-frame — Amazing wiki Starter apps Simple toolbelt Easy-ish
to start for noobs like me
— Re-frame — A lot of JS intro with Leaflet.js
Translating to JS is annoying to begin with, but Figwheel kicks in. DB as a global state + no args events for super-quick prototyping.
— Re-com + re-frisk — Crazy fast for building interfaces.
No more CSS hate. Hard to style nicely. Global state + re-frist = happiness.
Starter App TodoMVC
Lessons learned
If you’re starting, Clojure + Emacs = Fail
Start with tech you already know Python + Flask
lein vs boot
lein vs boot
tooo vs calendar
todo vs calendar Plan (getplan.co) vs Todoist
4clojure?
4clojure?
Do not seek to follow in the footsteps of the
wise; seek what they sought — Matsuo Basho
Commit to a project
Commit to a project
Commit to a giving a talk I have no idea
what I’m doing
Consistency >> Inspiration
1 hour daily “one small improvement” rewarding 3 hours every
Saturday huge leap daunting, feeling behind Consistency >> Inspiration
Decent resources Lambda Island, helps with JS intro CLJSJS for
importing JS libraries re-frame-template for general awesomeness Clojure for Brave and True — great learning book Parens of the Dead — funky way of learning CLJS Speaking.io — Because “imagine everyone's naked” is terrible advice.
(end rant) Thanks! @gregoltsov www.gregory.goltsov.info
[email protected]