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
JavaScript Playbook
Search
Zach
May 22, 2014
Technology
0
110
JavaScript Playbook
Zach
May 22, 2014
Tweet
Share
More Decks by Zach
See All by Zach
You're Not Special Kalx14
theotherzach
0
66
Test Drive a Browser Game With AngularJS
theotherzach
0
320
Lineman.js - Chicago Node.js Package Show & Tell
theotherzach
0
61
Nobody Will Train You But You
theotherzach
1
320
Other Decks in Technology
See All in Technology
タスク管理も1on1も、もう「管理」じゃない ― KiroとBedrock AgentCoreで変わった"判断の仕事"
yusukeshimizu
5
2k
マネージャー版 "提案のレベル" を上げる
konifar
21
14k
マルチアカウント環境でSecurity Hubの運用!導入の苦労とポイント / JAWS DAYS 2026
genda
0
110
GitLab Duo Agent Platform + Local LLMサービングで幸せになりたい
jyoshise
0
190
楽しく学ぼう!ネットワーク入門
shotashiratori
0
320
Kiro のクレジットを使い切る!
otanikohei2023
0
120
A Gentle Introduction to Transformers
keio_smilab
PRO
2
940
類似画像検索モデルの開発ノウハウ
lycorptech_jp
PRO
4
1k
Ultra Ethernet (UEC) v1.0 仕様概説
markunet
3
230
kintone開発のプラットフォームエンジニアの紹介
cybozuinsideout
PRO
0
840
Serverless Agent Architecture on Azure / serverless-agent-on-azure
miyake
1
160
EMからVPoEを経てCTOへ:マネジメントキャリアパスにおける葛藤と成長
kakehashi
PRO
9
1.3k
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
0
260
Typedesign – Prime Four
hannesfritz
42
3k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Making Projects Easy
brettharned
120
6.6k
Paper Plane (Part 1)
katiecoart
PRO
0
5.3k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
69
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.4k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
200
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
Transcript
JavaScript Playbook
testdouble.com @TheOtherZach
[email protected]
Who We Code For
3 Masters
User Our Code Needs To Solve Somebody’s Problem
Machine Our Code Needs To Execute Efficiently
Maintainer Future Programmers Must Be Able To Extend And Fix
Our Code
Maintainable code is readable and flexible.
Flexible
“I think we’re in trouble. I don’t think we have
the foggiest idea how to compute very well.” - Dr. Gerald Sussman
Why is maintenance so expensive?
The changeability of your code is unknowable until the change
happens.
But we can make bets.
Modular
Dependencies
Libraries / Frameworks
Your Code
Shared & Mutable State
I/O
Knowledge
Every Dependency Increases Rigidity
Tests Sometimes Enforce Modularity
Anybody Who Tells You They Have This Figured Out Is
Selling Something
Summary: ! flexibility is a function of modularity
Readable
class WestSideStory extends RomeoAndJuliet
The readability of your code is unknowable until the reading
happens.
But we can make bets.
Contextual Overhead
Consistency
Chunk Size
Libraries
Ninja Code
Code is often a pleasure to write. Make Yours Fun
To Read
Summary: ! Optimize For Reading, Not Writing
@TheOtherZach’s Specific Advice
Concat & Min in Production
We Configured Grunt For You: ! Lineman.js ! You’re Welcome
Skip Require.js
Bower < cURL
Style Guide or (Coffee|Clojure|Type)Script
Linting or (Coffee|Clojure|Type)Script
Use Ember for client routing
Learn Angular
Use Your Favorite Backend
jQuery Plugins Are Black Boxes
Learning to test ! will make you better
Invent Your Own Best Practices
testdouble.com @TheOtherZach
[email protected]