hitchhiker's guide to"'serverless" javascript - steven faulkner, bustle
TRANSCRIPT
![Page 1: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/1.jpg)
The Hitchhiker’s Guide to “Serverless” Javascript
Steve Faulkner, Bustle
![Page 2: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/2.jpg)
Steve Faulkner
@southpolesteve
![Page 3: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/3.jpg)
![Page 4: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/4.jpg)
![Page 5: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/5.jpg)
![Page 6: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/6.jpg)
Director of Platform
Engineering
![Page 7: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/7.jpg)
hype! serverless 101
why? why not?
serverless @ bustle tools
![Page 8: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/8.jpg)
![Page 9: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/9.jpg)
The people who are serving websites on Lambda or something are not only doing it wrong, they are wasting money while locking themselves in to an architecture
that doesn't fit their app
- @scrollaway on HN
![Page 10: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/10.jpg)
doesn’t scale not production ready
too slow too expensive
![Page 11: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/11.jpg)
![Page 12: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/12.jpg)
serverless for 99% of user requests
![Page 13: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/13.jpg)
10-20 million calls per day
![Page 14: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/14.jpg)
< 200ms
![Page 15: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/15.jpg)
< $$$
![Page 16: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/16.jpg)
Serverless 101
![Page 17: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/17.jpg)
there are still servers…
![Page 18: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/18.jpg)
…but what if we abstracted them away?
![Page 19: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/19.jpg)
as a Service
![Page 20: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/20.jpg)
Where does the business logic go?
![Page 21: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/21.jpg)
![Page 22: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/22.jpg)
![Page 23: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/23.jpg)
Functions as a Service
![Page 24: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/24.jpg)
run only when needed
![Page 25: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/25.jpg)
pay only when running
![Page 26: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/26.jpg)
don’t bother me with details
![Page 27: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/27.jpg)
request myApp() response
![Page 28: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/28.jpg)
![Page 29: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/29.jpg)
![Page 30: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/30.jpg)
![Page 31: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/31.jpg)
re:invent happening right
now…
![Page 32: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/32.jpg)
app.get(‘/‘, sayHello)
function sayHello(req,res){ res.end(‘hello!’) }
![Page 33: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/33.jpg)
app.get(‘/‘, sayHello)
function sayHello(req,res){ res.end(‘hello!’) }
![Page 34: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/34.jpg)
app.get(‘/‘, sayHello)
function sayHello(req,res){ res.end(‘hello!’) } Functions
Routing
![Page 35: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/35.jpg)
Functions-aaS +
Routing-aaS
![Page 36: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/36.jpg)
Lambda +
API Gateway
![Page 37: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/37.jpg)
Lambda
![Page 38: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/38.jpg)
![Page 39: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/39.jpg)
write code zip
upload fn()
![Page 40: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/40.jpg)
node java python
![Page 41: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/41.jpg)
node shim +
rust/go/haskell
![Page 42: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/42.jpg)
function(event,context,cb){ cb(null, ‘Hello World’) }
![Page 43: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/43.jpg)
versioning aliases RAM + CPU logging
non-http events
![Page 44: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/44.jpg)
API Gateway
![Page 45: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/45.jpg)
![Page 46: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/46.jpg)
click around a lot
![Page 47: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/47.jpg)
cache/throttle authorization
api keys logging/metrics custom domains
ssl swagger import/export
![Page 48: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/48.jpg)
why serverless?
![Page 49: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/49.jpg)
![Page 50: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/50.jpg)
ops
![Page 51: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/51.jpg)
2011 startup ops: heroku down? get lunch!
![Page 52: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/52.jpg)
2016 startup ops:have a plan
![Page 53: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/53.jpg)
serverless ops: LOL! WAT SERVERS?
![Page 54: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/54.jpg)
serverless ops: LOL! WAT SERVERS?
![Page 55: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/55.jpg)
#noops
![Page 56: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/56.jpg)
“serverless” ops: have a plan
![Page 57: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/57.jpg)
benchmarksfallbacks
load testing monitoring#lessops
![Page 58: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/58.jpg)
scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale scale
![Page 59: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/59.jpg)
1 -> 1000 RPS
![Page 60: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/60.jpg)
1000 -> 0 RPS
![Page 61: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/61.jpg)
iteration
![Page 62: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/62.jpg)
single function deployments
![Page 63: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/63.jpg)
<1s deploys
![Page 64: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/64.jpg)
$$$$
![Page 65: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/65.jpg)
events API
![Page 66: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/66.jpg)
ec2 ~$2500/mo
![Page 67: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/67.jpg)
lambda api gateway ~$400/mo
![Page 68: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/68.jpg)
why not?
![Page 69: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/69.jpg)
lock in
![Page 70: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/70.jpg)
const express = require(‘express’) const fn = require(./lambda-fn/) const app = express()
app.get('/', (req, res) => { fn.handler(null, null, (err, result) => { res.json(result) }) });
app.listen(3000)
![Page 71: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/71.jpg)
cold functions
![Page 72: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/72.jpg)
const data = loadBigData() // Takes 15s
module.exports.handler = function(e,ctx,cb){ processBigData(data, cb) }
![Page 74: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/74.jpg)
long tasks
![Page 75: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/75.jpg)
5 min max
![Page 76: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/76.jpg)
s3(3GB) Lambda
Kinesis Firehose Elasticsearch
![Page 77: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/77.jpg)
testing
![Page 78: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/78.jpg)
test in the cloud?
![Page 79: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/79.jpg)
![Page 80: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/80.jpg)
frontend
![Page 81: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/81.jpg)
![Page 82: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/82.jpg)
API Gateway
S3 Lambda(SSR)
html + js
![Page 83: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/83.jpg)
backend
![Page 84: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/84.jpg)
![Page 85: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/85.jpg)
API Gateway
Lambda
JSON
dynamodb redis
![Page 86: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/86.jpg)
tools!!!
![Page 87: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/87.jpg)
serverless framework node-lambda
apex claudia.js
![Page 88: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/88.jpg)
![Page 89: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/89.jpg)
npm install -g shep
![Page 90: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/90.jpg)
JavaScript Only no CF,terraform
swaggerwebpack
environments
![Page 91: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/91.jpg)
shep new my-api shep generate endpoint shep deploy production
![Page 92: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/92.jpg)
coming soon…
shep server shep docs
shep logs —stream
![Page 93: Hitchhiker's Guide to"'Serverless" Javascript - Steven Faulkner, Bustle](https://reader034.vdocuments.mx/reader034/viewer/2022042706/587fa9291a28ab825e8b794d/html5/thumbnails/93.jpg)
questions?
Steve Faulkner @southpolesteve