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
Webpack & WebAssembly
Search
Sendil Kumar N
June 01, 2018
Technology
0
470
Webpack & WebAssembly
Sendil Kumar N
June 01, 2018
Tweet
Share
More Decks by Sendil Kumar N
See All by Sendil Kumar N
[Heapcon-2023] Building High Performance Web Applications
sendilkumarn
0
59
Building Reactive Microservices with Kotlin & running on Kubernetes
sendilkumarn
0
120
Building Reactive Microservices with JHipster & K8s
sendilkumarn
0
12
Designing High Performance React Applications
sendilkumarn
1
140
Batching, Suspense, and Server Components
sendilkumarn
0
33
DevNexus_Building_with__Zero_Trust_Architecture_Copy.pdf
sendilkumarn
0
39
Lessons Learnt with Visual Testing and Snapshots
sendilkumarn
0
100
Easy Microservices with K8s & Istio
sendilkumarn
0
83
KHipster - Kotlin Hipster
sendilkumarn
0
170
Other Decks in Technology
See All in Technology
「手動オペレーションに定評がある」と言われた私が心がけていること / phpcon_odawara2024
blue_goheimochi
1
310
【SORACOM UG】(2024年度版) SIMってなんだ? ~セルラー通信がつながる仕組み、解説します~
soracom
PRO
0
210
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
0
240
シン・Kafka / shin-kafka
oracle4engineer
PRO
6
2.7k
自動生成を活用した、運用保守コストを抑える Error/Alert/Runbook の一元集約管理 / Centralized management of Error/Alert/Runbook to minimize operational costs using automated code generation
biwashi
9
2k
SREとその組織類型
tatsuo48
8
1.5k
[2024年3月版] Databricksのシステムアーキテクチャ
databricksjapan
7
1.9k
NLP2024 参加報告LT ~RAGの生成評価と懇親戦略~ / nlp2024_attendee_presentation_LT_masuda
taro_masuda
1
190
Databricks:『生成AI World Cup』のご案内
databricksjapan
1
130
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
24
4.8k
人間の尊厳、幸福、アクセシビリティ / 第116回「WEB TOUCH MEETING」アクセシビリティSP
nulabinc
PRO
2
180
普段有償でサポート業務をしているCSAが技術知見を無料で公開する理由
07jp27
1
620
Featured
See All Featured
Being A Developer After 40
akosma
56
580k
Raft: Consensus for Rubyists
vanstee
131
6.2k
Principles of Awesome APIs and How to Build Them.
keavy
119
16k
The Pragmatic Product Professional
lauravandoore
24
5.8k
A designer walks into a library…
pauljervisheath
199
23k
How GitHub (no longer) Works
holman
304
140k
We Have a Design System, Now What?
morganepeng
42
6.7k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
A Tale of Four Properties
chriscoyier
150
22k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
GitHub's CSS Performance
jonrohan
1023
450k
Documentation Writing (for coders)
carmenintech
59
3.9k
Transcript
Webpack @sendilkumarn WebAssembly
Sendil Kumar N • Full stack developer @Xebialabs
Sendil Kumar N • Full stack developer @Xebialabs • Core
dev team member @JHipster
Sendil Kumar N • Full stack developer @Xebialabs • Core
dev team member @JHipster • Team member @webpack
Sendil Kumar N • Full stack developer @Xebialabs • Core
dev team member @JHipster • Team member @webpack • Part of rust-wasm Working Group
Sendil Kumar N • Full stack developer @Xebialabs • Core
dev team member @JHipster • Team member @webpack • Part of rust-wasm Working Group • Big open source lover
Full stack developers?
C++ devs?
None
None
WebAssembly ?
What is WebAssembly?
Binary instruction format 1010110 1010110 1010110 1010110 1010 1010110 1010110
1010110 1010110 1010
stack based machines 1010110 1010110 1010110 1010110 1010 1010110 1010110
1010110 1010110 1010 Binary instruction format for
Most efficient representation of instructions in binary 1010110 1010110 1010110
1010110 1010 1010110 1010110 1010110 1010110 1010
What, well in other words?
Run your native code in web.
Implementation detail for high level languages
Why WebAssembly?
Where “Performance” matters
JavaScript ?
WebAssembly is not a replacement to Javascript
None
❤ We
❤
❤ We
Javascript is fast
Interpreted language Write it Execute it
It is compiled too Write it Execute it Compile it
Optimise it
Then what is the benefit with WebAssembly ?
Where you need “Maintainable Performance”
Wait, What is maintainable performance?
High performance with Maintainable code
Geeky code
Uncertainties
Performance loopholes
Okay, I am writing Javascript for 15 years.
Well, lets test it
Tell me which is having higher performance
A B
A B ✅
Optional args will have an impact on your performance…
Monomorphisation
Memoization
Debug with profiler
Used Webpack?
❤Webpack❤
Okay, isn’t webpack a JS bundler?
Webpack is a bundler for your frontend.
Webpack is a new LLVM Unpopular
It bundles / packs everything that you need
Actually, how your application needs
Actually, how your application needs code-splitting / DCE
WP 4 - announced WebAssembly support.
From WP4.8 we have a better WebAssembly support
WP5 will have even better WebAssembly support
Demo time lets pack and roll with webpack
Demo agenda
Create a Rust project
Use Wasm bindgen to create wasm files + binding JS
files.
Make that rust project into node project
Add web pack + web pack serve to it
Run it…
Enough demo it…
Other mentions
Streaming compilation
WP internals may be / will be in Rust
In future
Garbage collection
Dom Manipulation
JVM devs ?
Kotlin ?
Questions?
Happy Hacking