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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Chris Castle
March 01, 2017
Programming
0
250
The JavaScript Software Factory
A talk I gave at ForwardJS March 1, 2017.
Chris Castle
March 01, 2017
Tweet
Share
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
120
keg.io
crc
2
870
Other Decks in Programming
See All in Programming
Smart Handoff/Pickup ガイド - Claude Code セッション管理
yukiigarashi
0
120
組織で育むオブザーバビリティ
ryota_hnk
0
170
今から始めるClaude Code超入門
448jp
7
8.4k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6k
CSC307 Lecture 06
javiergs
PRO
0
680
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
950
Patterns of Patterns
denyspoltorak
0
1.4k
AI時代の認知負荷との向き合い方
optfit
0
150
Fragmented Architectures
denyspoltorak
0
150
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
190
dchart: charts from deck markup
ajstarks
3
990
Architectural Extensions
denyspoltorak
0
270
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.7k
Ruling the World: When Life Gets Gamed
codingconduct
0
140
Balancing Empowerment & Direction
lara
5
880
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
BBQ
matthewcrist
89
10k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
New Earth Scene 8
popppiees
1
1.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
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