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
The JavaScript Software Factory
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Chris Castle
March 01, 2017
Programming
250
0
Share
The JavaScript Software Factory
A talk I gave at ForwardJS March 1, 2017.
Chris Castle
March 01, 2017
More Decks by Chris Castle
See All by Chris Castle
Event Driven Architectures with Apache Kafka on Heroku
crc
0
5.7k
Continuously Delivering, Managing, and Scaling Apps
crc
0
130
keg.io
crc
2
890
Other Decks in Programming
See All in Programming
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1k
Moments When Things Go Wrong
aurimas
3
120
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
270
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
2
3k
関係性から理解する"同一性"の型用語たち
pvcresin
2
580
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.1k
AI Agent と正しく分析するための環境作り
yoshyum
3
610
AIエージェントの隔離技術の徹底比較
kawayu
0
430
ふつうのFeature Flag実践入門
irof
6
3.1k
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
150
誰も頼んでない機能を出荷した話
zekutax
0
140
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
850
Featured
See All Featured
HDC tutorial
michielstock
2
680
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
310
Designing for Performance
lara
611
70k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
190
Discover your Explorer Soul
emna__ayadi
2
1.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Facilitating Awesome Meetings
lara
57
6.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Producing Creativity
orderedlist
PRO
348
40k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.6k
The Limits of Empathy - UXLibs8
cassininazir
1
340
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Transcript
The JavaScript SOFTWARE FACTORY ForwardJS March 1, 2017 Image: Jackson
Jost
Chris Castle Developer Advocate @crc Image: Ferdinand Stöhr
THUNDER SNOW
Image: Kalle K
Programming is easy. Software development is hard. Image: Vladimir Chuchadeev
Programming is easy. Image: Vladimir Chuchadeev
Software development is hard. Image: Vladimir Chuchadeev
You want to know what makes it even harder? Image:
Markus Spiske
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
Fools ignore complexity. Pragmatists suffer it. Geniuses remove it. -
Alan Perlis
Simplicity is a great virtue but it requires hard work
to achieve it and education to appreciate it. - E.W. Dijkstra
None
None
SOME SIMPLIFYING TIPS
None
Stop spending time on the bottom two layers.
None
No global modules
1 { 2 "name": "js-software-factory-samples", 3 "version": "1.0.0", 4 "description":
"Sample codez!", 5 "main": "index.js", 6 "author": "Chris Castle", 7 "license": "MIT", 8 "dependencies": { 9 "left-pad": "^1.1.3" 10 }, 11 "devDependencies": { 12 "gulp": "^3.9.1" 13 } 14 }
None
The Twelve-Factor App
https://12factor.net
None
Use yarn
- Predictability - Security - Performance
Deploy a lot
None
Make testing automatic
None
None
Logging
winston bunyan log4js morgan
Debugging
1 const debug = require('debug')('http') 2 const http = require('http')
3 4 http.createServer((req, res) => { 5 debug(`${req.method} ${req.url}`) 6 res.end('hello\n') 7 }).listen(3000, () => { 8 debug('listening'); 9 })
no debug output
debug output
Thank you Image: SpaceX