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
Evolution of a Web Application
Search
Raquel Vélez
January 27, 2017
Programming
1.1k
1
Share
Evolution of a Web Application
Presentation given at ScriptConf in Linz, Austria, 27 Jan 2017
Raquel Vélez
January 27, 2017
More Decks by Raquel Vélez
See All by Raquel Vélez
Engineering of Craft - Let's Sketch Tech
rockbot
0
200
Engineering of Craft
rockbot
0
370
The Beauty of Bad Code
rockbot
1
200
The Beauty of Bad Code
rockbot
4
570
Wombat-Driven Understanding: an interactive guide to using npm
rockbot
0
380
Wombat-Driven Understanding: An Interactive Guide To Using npm
rockbot
0
920
the npm website: a tale of wonder and woe (and wombats!)
rockbot
0
340
fear
rockbot
1
380
hiring at npm
rockbot
1
330
Other Decks in Programming
See All in Programming
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
440
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
220
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
1
210
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.2k
OSもどきOS
arkw
0
370
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
280
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.1k
Swiftのレキシカルスコープ管理
kntkymt
0
210
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
310
New "Type" system on PicoRuby
pocke
1
400
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
210
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
Are puppies a ranking factor?
jonoalderson
1
3.5k
Test your architecture with Archunit
thirion
1
2.3k
Claude Code のすすめ
schroneko
67
220k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
240
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
560
Mind Mapping
helmedeiros
PRO
1
220
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Transcript
Evolution of a Web Application the story of js.com npm
brought to you by @rockbot
@rockbot #scriptconf an overview of npm
@rockbot #scriptconf for JavaScript npm is a package manager
@rockbot #scriptconf npm is a package manager
@rockbot #scriptconf our #1 priority is to reduce friction
@rockbot #scriptconf started out as open source
@rockbot #scriptconf 0 20,000,000 40,000,000 2012-10-22 2013-01-10 2013-03-31 2013-06-19 2013-11-25
weekly downloads
@rockbot #scriptconf 0 15,000 30,000 45,000 60,000 12/14/2011 12/13/2012 12/13/2013
number of packages
@rockbot #scriptconf became a company in 2014
@rockbot #scriptconf the npm website: the gory details
@rockbot #scriptconf 7-day rolling 0 200,000 400,000 600,000 800,000 2014/1/6
2015/1/5 2016/1/4 2017/1/2 Users New Users users on the website
@rockbot #scriptconf DESIGN
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf npm
@rockbot #scriptconf npm
@rockbot #scriptconf npm
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf SEARCH
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf FRONT-END JAVASCRIPT
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf vs
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf
@rockbot #scriptconf FRAMEWORKS
@rockbot #scriptconf function showProfile (req, res, showprofile) { // …
req.model.end(function (er, m) { var td = { showprofile: showprofile , profile: req.model.profile , fields: showprofile.fields , title: showprofile.name , hiring: req.model.whoshiring , packages: req.model.packages , starred: req.model.starred } res.template('profile.ejs', td) }) }
@rockbot #scriptconf vs
@rockbot #scriptconf
@rockbot #scriptconf TESTING
@rockbot #scriptconf tests?
@rockbot #scriptconf (hapi ecosystem test framework)
@rockbot #scriptconf (selenium wrapper)
@rockbot #scriptconf
@rockbot #scriptconf node-tap
@rockbot #scriptconf WHAT’S NEXT?
@rockbot #scriptconf clean up
@rockbot #scriptconf grow the team
@rockbot #scriptconf adapt
@rockbot #scriptconf npm loves you
Raquel Vélez @rockbot http://rckbt.me raquel@ js.com