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.5k
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
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
340
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
190
카카오페이는 어떻게 수천만 결제를 처리할까? 우아한 결제 분산락 노하우
kakao
PRO
0
110
Creating a Free Video Ad Network on the Edge
mizoguchicoji
0
120
CSC509 Lecture 11
javiergs
PRO
0
180
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
OnlineTestConf: Test Automation Friend or Foe
maaretp
0
110
役立つログに取り組もう
irof
28
9.6k
Kaigi on Rails 2024 〜運営の裏側〜
krpk1900
1
230
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
690
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
120
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.5k
Documentation Writing (for coders)
carmenintech
65
4.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Building Adaptive Systems
keathley
38
2.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Optimizing for Happiness
mojombo
376
70k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Scaling GitHub
holman
458
140k
Side Projects
sachag
452
42k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
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]