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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
インフラエンジニア必見!Kubernetesを用いたクラウドネイティブ設計ポイント大全
daitak
0
320
茨城の思い出を振り返る ~CDKのセキュリティを添えて~ / 20260201 Mitsutoshi Matsuo
shift_evolve
PRO
1
180
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
4.7k
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
170
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
190
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
320
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
140
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
Featured
See All Featured
Everyday Curiosity
cassininazir
0
130
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
96
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Paper Plane
katiecoart
PRO
0
46k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
120
Practical Orchestrator
shlominoach
191
11k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
55
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
Six Lessons from altMBA
skipperchong
29
4.1k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
300
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
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]