SlideShare une entreprise Scribd logo
1  sur  161
Télécharger pour lire hors ligne
Max Firtman @firt
BREAKING LIMITS
ON JAVASCRIPT FOR
MOBILE HTML5
San Francisco, May 28th, 2013
Tuesday, May 28, 13
mobile+web developer
maximiliano
@firt
Tuesday, May 28, 13
Tuesday, May 28, 13
Tuesday, May 28, 13
we’ll talk about mobile
1- Mobile HTML5
2- JavaScript on Mobile
3- UI
4- Device
Tuesday, May 28, 13
material
Presentation
online tool (Chrome/FF)
smartphone/tablet?
Tuesday, May 28, 13
Tuesday, May 28, 13
1- mobile html5
Tuesday, May 28, 13
mobile
1- websites
2- apps
Tuesday, May 28, 13
mobile
1- websites
2- apps
Tuesday, May 28, 13
mobile
1- websites
2- apps
Tuesday, May 28, 13
with html5
we can create...
Tuesday, May 28, 13
we can create
1- websites
Tuesday, May 28, 13
Using the browser
URL
Web Server
1- websites
we can create
Tuesday, May 28, 13
we can create
2- webapps
Tuesday, May 28, 13
Browser to install
Full-screen
Icon on home screen
Web Server
2- webapps
we can create
Tuesday, May 28, 13
full screen webapps
home screen webapps
webapps are also known as(
)
Tuesday, May 28, 13
we can create
3- native webapps
Tuesday, May 28, 13
Package, compile, sign
Icon on home screen
App Store
No web server
3- native webapps
we can create
Tuesday, May 28, 13
hybrid apps
packaged webapps
native webapps are also
known as
(
)
Tuesday, May 28, 13
mobile
1- websites
2- apps
Tuesday, May 28, 13
a- native
b- webapps
c- native webapps
mobile
1- websites
2- apps
Tuesday, May 28, 13
web platforms
Tuesday, May 28, 13
How many browsers
do you know on
desktop?
web platforms
Tuesday, May 28, 13
5
web platforms
Tuesday, May 28, 13
How many browsers
do you know on
mobile?
web platforms
Tuesday, May 28, 13
...
web platforms
Tuesday, May 28, 13
Tuesday, May 28, 13
Android Browser
Tuesday, May 28, 13
Android Browser 2.2
Tuesday, May 28, 13
Android Browser 2.3
Tuesday, May 28, 13
Android Browser 4.x
Tuesday, May 28, 13
Did I mention it is NOT
Google Chrome?
(
)
Tuesday, May 28, 13
Google Chrome
Tuesday, May 28, 13
Google Chrome Android
Tuesday, May 28, 13
Google Chrome iOS
Tuesday, May 28, 13
Safari on iOS
Tuesday, May 28, 13
Opera
Tuesday, May 28, 13
Opera Mobile
Tuesday, May 28, 13
Opera Mini
Tuesday, May 28, 13
Opera for Android
Tuesday, May 28, 13
Firefox
Tuesday, May 28, 13
Firefox OS
Tuesday, May 28, 13
Internet Explorer
Tuesday, May 28, 13
BlackBerry Browser 5-7.x
Tuesday, May 28, 13
BlackBerry Browser 5-7.x
Tuesday, May 28, 13
BlackBerry Browser PB
Tuesday, May 28, 13
BlackBerry Browser BB10
Tuesday, May 28, 13
Nokia Browser
Tuesday, May 28, 13
Nokia Browser Symbian
Tuesday, May 28, 13
Nokia Browser MeeGo
Tuesday, May 28, 13
Nokia Browser Series 40
Tuesday, May 28, 13
Silk
Tuesday, May 28, 13
UC Browser
Tuesday, May 28, 13
Dolfin
Tuesday, May 28, 13
should I continue?
(
)
Tuesday, May 28, 13
Proxy browsers
web platforms
Tuesday, May 28, 13
And it’s not just
browsers!
web platforms
Tuesday, May 28, 13
Web View
web platforms
Tuesday, May 28, 13
Web View
web platforms
Tuesday, May 28, 13
Web View
web platforms
Tuesday, May 28, 13
Web View
web platforms
Tuesday, May 28, 13
Official (native)
webapp platforms
web platforms
Tuesday, May 28, 13
Official (native)
webapp platforms
web platforms
Tuesday, May 28, 13
unknown future
Tuesday, May 28, 13
2013: glasses
Tuesday, May 28, 13
Tuesday, May 28, 13
web platforms
- too many
- different versions
- different scenarios
- not just the browser
Tuesday, May 28, 13
“change is the only constant“
Heraclitus
Tuesday, May 28, 13
2- javascript on mobile
Tuesday, May 28, 13
Origins & security
js on mobile
Tuesday, May 28, 13
Website
Webapp
Native webapp
origins & security
Tuesday, May 28, 13
Debugging
(demo)
js on mobile
Tuesday, May 28, 13
Power consumption
js on mobile
Tuesday, May 28, 13
battery consumption
Amazon consumes 17% energy
in a non used JS
jQuery.js ~ 4 joules (0,02%)
~5000 jQuery parsings per charge
Who Killed My Battery ~ mobilexweb.com/go/battery
Tomorrow, 1.45pm @ Fluent
Tuesday, May 28, 13
JavaScript lifetime
js on mobile
Tuesday, May 28, 13
classic web?
js lifetime
Tuesday, May 28, 13
mobile is quite
different
(demo)
js lifetime
Tuesday, May 28, 13
let's start coding and testing
Tuesday, May 28, 13
page visibility api
Tuesday, May 28, 13
awake detection
Tuesday, May 28, 13
notification api
Tuesday, May 28, 13
zombie window
Tuesday, May 28, 13
background
Tuesday, May 28, 13
background
Tuesday, May 28, 13
Tuesday, May 28, 13
<blink>Welcome to my website!</blink>
Tuesday, May 28, 13
<bgsound src="welcome.wav">
Tuesday, May 28, 13
<font family="Arial" size="20">
Tuesday, May 28, 13
background
<meta http-equiv="refresh"
content="60">
Tuesday, May 28, 13
background
<meta http-equiv="refresh" content="2">
Tuesday, May 28, 13
background
<meta http-equiv="refresh" content="2">
<script>
var mr = document.querySelector("meta");
setInterval(function() {
mr.content=mr.content;
}, 1000);
</script>
Tuesday, May 28, 13
Tuesday, May 28, 13
background
Tuesday, May 28, 13
DISCLAIMER
Tuesday, May 28, 13
only from iOS 6.1
(5.0+ similar)
Tuesday, May 28, 13
Progressive
enhancement
js on mobile
Tuesday, May 28, 13
js on mobile
- security domains
- debugging
- battery consumption
- background execution
- progressive enhancement
Tuesday, May 28, 13
3- UI on mobile
Tuesday, May 28, 13
UI
Viewport y pixels
Tuesday, May 28, 13
UI
Full screen
Tuesday, May 28, 13
full screen
Tuesday, May 28, 13
full screen
4 solutions
Tuesday, May 28, 13
full screen
Solution #1
Tuesday, May 28, 13
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
Tuesday, May 28, 13
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
if (navigator.standalone) { }
Tuesday, May 28, 13
<meta name="apple-mobile-web-app-capable"
content="yes">
<meta name="viewport"
content="width=device-width">
Tuesday, May 28, 13
Tuesday, May 28, 13
Tuesday, May 28, 13
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
<meta name="viewport"
content="width=320.1">
Tuesday, May 28, 13
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
<meta name="viewport"
content="width=device-width">
<meta name="viewport"
content="..."
media="device-height: 568px">
Tuesday, May 28, 13
full screen
Tuesday, May 28, 13
full screen
Solution #2
Tuesday, May 28, 13
full screen
Tuesday, May 28, 13
full screen
@media (orientation: landscape) and (height: 214px),
(orientation: landscape) and (height: 181px)
{
}
Tuesday, May 28, 13
full screen
Solution #3
future platforms
Tuesday, May 28, 13
full screen
var body = document.documentElement;
if (body.requestFullScreen) {
body.requestFullScreen();
}
Tuesday, May 28, 13
full screen
var body = document.documentElement;
if (body.requestFullScreen) {
body.requestFullScreen();
} else if (body.webkitRequestFullScreen) {
body.webkitRequestFullScreen();
}
Tuesday, May 28, 13
full screen
var body = document.documentElement;
if (body.requestFullScreen) {
body.requestFullScreen();
} else if (body.webkitRequestFullScreen) {
body.webkitRequestFullScreen();
} else if (body.mozRequestFullScreen) {
body.mozRequestFullScreen();
}
Tuesday, May 28, 13
full screen
Solution #4
...
Tuesday, May 28, 13
full screen
window.addEventListener("load",
function() { window.scrollTo(0, 0); });
// use with care
document.addEventListener("touchmove",
function(e) { e.preventDefault() });
Tuesday, May 28, 13
UI
images for different
screen densities
Tuesday, May 28, 13
screen densities
<img src="photo.png" width="300">
Tuesday, May 28, 13
screen densities
Tuesday, May 28, 13
300 CSS pixels
300 1.00
390 1.30
450 1.50
600 2.00
672 2.24
900 3.00
device px px ratio
screen densities
Tuesday, May 28, 13
Solution #1
Tuesday, May 28, 13
screen densities
use vector images
<img src="photo.svg" width="300">
<svg></svg>
@font-face {}
Tuesday, May 28, 13
screen densities
Tuesday, May 28, 13
screen densities
Tuesday, May 28, 13
Solution #2
Tuesday, May 28, 13
screen densities
<img src="photo.png" width="300">
if (window.devicePixelRatio > 1.5) {
// change URL
}
Tuesday, May 28, 13
Solution #3
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
#photoContainer {
background-image:
-webkit-image-set(url('photo-lo.png') 1x,
url('photo-hi.png') 2x);
width: 300px; height: 200px;
}
Tuesday, May 28, 13
Solution #4
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
#photoContainer {
background-image: url('photo-lo.png');
width: 300px; height: 200px;
}
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
@media (-webkit-min-device-pixel-ratio: 1.5) {
#photoContainer {
background-image: url('photo-hi.png');
background-size: 100%;
width: 300px; height: 200px;
}
}
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
@media (-webkit-min-device-pixel-ratio: 1.5),
(min--moz-device-pixel-ratio: 1.5) {
}
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
@media (-webkit-min-device-pixel-ratio: 1.5),
(min--moz-device-pixel-ratio: 1.5),
(-o-min-device-pixel-ratio: 1/2) {
}
Tuesday, May 28, 13
screen densities
<div id="photoContainer">
@media (-webkit-min-device-pixel-ratio: 1.5),
(min--moz-device-pixel-ratio: 1.5),
(-o-min-device-pixel-ratio: 1/2),
(min-resolution: 1.5dppx) {
}
Tuesday, May 28, 13
always query
on ranges
@media (-webkit-device-pixel-ratio: 2)
Tuesday, May 28, 13
always query
on ranges
@media (-webkit-min-device-pixel-ratio: 1.7)
Tuesday, May 28, 13
find the balance
300x300 900x900
Tuesday, May 28, 13
UI
High resolution
canvas
Tuesday, May 28, 13
hi-res canvas
<canvas width="300" height="200">
</canvas>
300px
Tuesday, May 28, 13
hi-res canvas
300 CSS pixels
300 1.00
390 1.30
450 1.50
600 2.00
672 2.24
900 3.00
device px px ratio
Tuesday, May 28, 13
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
Tuesday, May 28, 13
hi res canvas
var devPxRatio = window.devicePixelRatio;
var canvasPxRatio =
document.querySelector("canvas")
.getContext("2d")
.webkitBackingStorePixelRatio;
Tuesday, May 28, 13
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
devPxRatio = 2
canvasPxRatio = 1
Tuesday, May 28, 13
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
devPxRatio >= 1
canvasPxRatio = undefined
Tuesday, May 28, 13
Solution #1
hi res canvas
Tuesday, May 28, 13
hi res canvas
<meta name="viewport" content="width=640">
<canvas width="600" height="400">
</canvas>
600px
Tuesday, May 28, 13
Solution #2
hi res canvas
Tuesday, May 28, 13
hi res canvas
<script>
document.querySelector("canvas")
.getContext("2d")
.setScale(2, 2);
</script>
300px
Tuesday, May 28, 13
hi res canvas
<canvas width="600" height="400">
</canvas>
300px
<script>
document.querySelector("canvas")
.getContext("2d")
.setScale(2, 2);
</script>
Tuesday, May 28, 13
hi res canvas
<canvas width="600" height="400"
style="width: 300px; height: 200px">
</canvas>
300px
<script>
document.querySelector("canvas")
.getContext("2d")
.setScale(2, 2);
</script>
Tuesday, May 28, 13
multi-platform &
multi-resolution
Tuesday, May 28, 13
execution &
memory
Tuesday, May 28, 13
wrapping up
Tuesday, May 28, 13
Tuesday, May 28, 13
“change is the only constant“
Heraclitus
Tuesday, May 28, 13
you can reach a good
experience
Pictures)from)freedigitalphotos.net)
thank you!
firtman@gmail.com
@firt
firt.mobi/pmw
Tuesday, May 28, 13

Contenu connexe

En vedette

Legal Issues Relating to BCE
Legal Issues Relating to BCELegal Issues Relating to BCE
Legal Issues Relating to BCEJISC BCE
 
讓網站企畫工作更順暢的數位工具 李一詩
讓網站企畫工作更順暢的數位工具 李一詩讓網站企畫工作更順暢的數位工具 李一詩
讓網站企畫工作更順暢的數位工具 李一詩悠識學院
 
SMX - How to Know If You've Been Hit by Google's Panda Penalty
SMX - How to Know If You've Been Hit by Google's Panda PenaltySMX - How to Know If You've Been Hit by Google's Panda Penalty
SMX - How to Know If You've Been Hit by Google's Panda PenaltyHelen Overland
 
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.Michelle Bruno
 
Tucuman valley Desarrollo Mobile, nativo o HTML5?
Tucuman valley Desarrollo Mobile, nativo o HTML5?Tucuman valley Desarrollo Mobile, nativo o HTML5?
Tucuman valley Desarrollo Mobile, nativo o HTML5?Maximiliano Firtman
 
Social media: The connective tissue between news outlets and their communities
Social media: The connective tissue between news outlets and their communitiesSocial media: The connective tissue between news outlets and their communities
Social media: The connective tissue between news outlets and their communitiesDan Kennedy
 
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao悠識學院
 
The Technology of Tension | EventTechBrief.com
The Technology of Tension | EventTechBrief.comThe Technology of Tension | EventTechBrief.com
The Technology of Tension | EventTechBrief.comMichelle Bruno
 
6 Differentiating Marketplace11 24 08
6 Differentiating Marketplace11 24 086 Differentiating Marketplace11 24 08
6 Differentiating Marketplace11 24 08Peer Resource Group
 
Hp13小講 Usability概念簡介
Hp13小講 Usability概念簡介Hp13小講 Usability概念簡介
Hp13小講 Usability概念簡介悠識學院
 
HTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbasHTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbasMaximiliano Firtman
 

En vedette (16)

Legal Issues Relating to BCE
Legal Issues Relating to BCELegal Issues Relating to BCE
Legal Issues Relating to BCE
 
讓網站企畫工作更順暢的數位工具 李一詩
讓網站企畫工作更順暢的數位工具 李一詩讓網站企畫工作更順暢的數位工具 李一詩
讓網站企畫工作更順暢的數位工具 李一詩
 
SMX - How to Know If You've Been Hit by Google's Panda Penalty
SMX - How to Know If You've Been Hit by Google's Panda PenaltySMX - How to Know If You've Been Hit by Google's Panda Penalty
SMX - How to Know If You've Been Hit by Google's Panda Penalty
 
ICS Capabilites
ICS CapabilitesICS Capabilites
ICS Capabilites
 
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
Getting Hacked is a Nasty Business. Events are in for a Rude Awakening.
 
The Poppy Appeal
The Poppy AppealThe Poppy Appeal
The Poppy Appeal
 
Tucuman valley Desarrollo Mobile, nativo o HTML5?
Tucuman valley Desarrollo Mobile, nativo o HTML5?Tucuman valley Desarrollo Mobile, nativo o HTML5?
Tucuman valley Desarrollo Mobile, nativo o HTML5?
 
Social media: The connective tissue between news outlets and their communities
Social media: The connective tissue between news outlets and their communitiesSocial media: The connective tissue between news outlets and their communities
Social media: The connective tissue between news outlets and their communities
 
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao
人多嘴雜乎?眾志成城乎?開放源碼軟體的使用體驗 by Bob Chao
 
Green book
Green bookGreen book
Green book
 
The Technology of Tension | EventTechBrief.com
The Technology of Tension | EventTechBrief.comThe Technology of Tension | EventTechBrief.com
The Technology of Tension | EventTechBrief.com
 
6 Differentiating Marketplace11 24 08
6 Differentiating Marketplace11 24 086 Differentiating Marketplace11 24 08
6 Differentiating Marketplace11 24 08
 
Hp13小講 Usability概念簡介
Hp13小講 Usability概念簡介Hp13小講 Usability概念簡介
Hp13小講 Usability概念簡介
 
HTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbasHTML5, Viewports, CSS3 y otras yerbas
HTML5, Viewports, CSS3 y otras yerbas
 
Etf social media progress
Etf social media progressEtf social media progress
Etf social media progress
 
Slides for mit
Slides for mitSlides for mit
Slides for mit
 

Plus de Maximiliano Firtman

ChatGPT and AI for Web Developers
ChatGPT and AI for Web DevelopersChatGPT and AI for Web Developers
ChatGPT and AI for Web DevelopersMaximiliano Firtman
 
Hacking Web Performance en Español - JSConf México 2020
Hacking Web Performance en Español - JSConf México 2020Hacking Web Performance en Español - JSConf México 2020
Hacking Web Performance en Español - JSConf México 2020Maximiliano Firtman
 
Uncovering Secrets of Progressive Web Apps
Uncovering Secrets of Progressive Web AppsUncovering Secrets of Progressive Web Apps
Uncovering Secrets of Progressive Web AppsMaximiliano Firtman
 
Hacking Web Performance @ ForwardJS 2017
Hacking Web Performance @ ForwardJS 2017Hacking Web Performance @ ForwardJS 2017
Hacking Web Performance @ ForwardJS 2017Maximiliano Firtman
 
La Web Salta al Mundo Físico - Web meets Physical World (spanish)
La Web Salta al Mundo Físico - Web meets Physical World (spanish)La Web Salta al Mundo Físico - Web meets Physical World (spanish)
La Web Salta al Mundo Físico - Web meets Physical World (spanish)Maximiliano Firtman
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Maximiliano Firtman
 
High Performance Web - Full Stack Toronto
High Performance Web - Full Stack TorontoHigh Performance Web - Full Stack Toronto
High Performance Web - Full Stack TorontoMaximiliano Firtman
 
Responsive Images and Performance
Responsive Images and PerformanceResponsive Images and Performance
Responsive Images and PerformanceMaximiliano Firtman
 
The Physical World meets the Web
The Physical World meets the WebThe Physical World meets the Web
The Physical World meets the WebMaximiliano Firtman
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices Maximiliano Firtman
 
Extreme Web Performance for Mobile Device Fluent 2015
Extreme Web Performance for Mobile Device Fluent 2015Extreme Web Performance for Mobile Device Fluent 2015
Extreme Web Performance for Mobile Device Fluent 2015Maximiliano Firtman
 
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014Maximiliano Firtman
 
Extreme Web Performance for Mobile Devices - Velocity NY
Extreme Web Performance for Mobile Devices - Velocity NYExtreme Web Performance for Mobile Devices - Velocity NY
Extreme Web Performance for Mobile Devices - Velocity NYMaximiliano Firtman
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesExtreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesMaximiliano Firtman
 

Plus de Maximiliano Firtman (20)

ChatGPT and AI for Web Developers
ChatGPT and AI for Web DevelopersChatGPT and AI for Web Developers
ChatGPT and AI for Web Developers
 
PWA Cheat Sheet 2023
PWA Cheat Sheet 2023PWA Cheat Sheet 2023
PWA Cheat Sheet 2023
 
Hacking Web Performance en Español - JSConf México 2020
Hacking Web Performance en Español - JSConf México 2020Hacking Web Performance en Español - JSConf México 2020
Hacking Web Performance en Español - JSConf México 2020
 
The modern PWA Cheat Sheet
The modern PWA Cheat SheetThe modern PWA Cheat Sheet
The modern PWA Cheat Sheet
 
Hacking Web Performance 2019
Hacking Web Performance 2019Hacking Web Performance 2019
Hacking Web Performance 2019
 
Progressive Web Apps Keynote
Progressive Web Apps KeynoteProgressive Web Apps Keynote
Progressive Web Apps Keynote
 
Hacking Web Performance
Hacking Web PerformanceHacking Web Performance
Hacking Web Performance
 
Uncovering Secrets of Progressive Web Apps
Uncovering Secrets of Progressive Web AppsUncovering Secrets of Progressive Web Apps
Uncovering Secrets of Progressive Web Apps
 
Hacking Web Performance
Hacking Web Performance Hacking Web Performance
Hacking Web Performance
 
Hacking Web Performance @ ForwardJS 2017
Hacking Web Performance @ ForwardJS 2017Hacking Web Performance @ ForwardJS 2017
Hacking Web Performance @ ForwardJS 2017
 
La Web Salta al Mundo Físico - Web meets Physical World (spanish)
La Web Salta al Mundo Físico - Web meets Physical World (spanish)La Web Salta al Mundo Físico - Web meets Physical World (spanish)
La Web Salta al Mundo Físico - Web meets Physical World (spanish)
 
Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)Progressive Web Apps (español - spanish)
Progressive Web Apps (español - spanish)
 
High Performance Web - Full Stack Toronto
High Performance Web - Full Stack TorontoHigh Performance Web - Full Stack Toronto
High Performance Web - Full Stack Toronto
 
Responsive Images and Performance
Responsive Images and PerformanceResponsive Images and Performance
Responsive Images and Performance
 
The Physical World meets the Web
The Physical World meets the WebThe Physical World meets the Web
The Physical World meets the Web
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices
 
Extreme Web Performance for Mobile Device Fluent 2015
Extreme Web Performance for Mobile Device Fluent 2015Extreme Web Performance for Mobile Device Fluent 2015
Extreme Web Performance for Mobile Device Fluent 2015
 
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
Extreme Web Performance for Mobile Devices - Velocity Barcelona 2014
 
Extreme Web Performance for Mobile Devices - Velocity NY
Extreme Web Performance for Mobile Devices - Velocity NYExtreme Web Performance for Mobile Devices - Velocity NY
Extreme Web Performance for Mobile Devices - Velocity NY
 
Extreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile DevicesExtreme Web Performance for Mobile Devices
Extreme Web Performance for Mobile Devices
 

Dernier

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Dernier (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Breaking JavaScript Limits on Mobile HTML5