SlideShare a Scribd company logo
1 of 267
Download to read offline
Max Firtman @firt	

!
!
BREAKING LIMITS	

ON MOBILE	

HTML5 	

!
!
!
!
Helsinki, Oct 31, 2013
questions
yes, please
!
QA at the end
agenda
Mobile HTML5
Hacks for breaking limits
Next step: Google Glass
mobile
development
mobile
1- websites
2- apps
mobile
1- websites
2- apps
mobile
1- websites
2- apps
with html5
we can create...
we can create
1- websites
Using the browser
URL
Web Server
1- websites
we can create
we can create
2- webapps
Browser to install
Full-screen
Icon on home screen
Web Server
2- webapps
we can create
full screen webapps
home screen webapps
webapps are also known as
(
)
we can create
3- native webapps
Package, compile, sign
Icon on home screen
App Store
No web server
3- native webapps
we can create
hybrid apps
packaged webapps
native webapps are also
known as
(
)
mobile
1- websites
2- apps
a- native
b- webapps
c- native webapps
mobile
1- websites
2- apps
web platforms
How many browsers
do you know on
desktop?
web platforms
5
web platforms
How many browsers
do you know on
mobile?
web platforms
...
web platforms
Android Browser
Android Browser 2.2
Android Browser 2.3
Android Browser 4.x
Did I mention it is NOT
Google Chrome?
(
)
Google Chrome
Google Chrome Android
Google Chrome iOS
Safari on iOS
Opera
Opera Mobile
Opera Mini
Opera for Android
Firefox
Firefox OS
Internet Explorer
BlackBerry Browser 5-7.x
BlackBerry Browser 5-7.x
BlackBerry Browser PB
BlackBerry Browser BB10
Nokia Browser
Nokia Browser Symbian
Nokia Browser MeeGo
Nokia Browser Series 40
Silk
UC Web
Dolfin
should I continue?
(
)
Proxy browsers
web platforms
And it’s not just
browsers!
web platforms
Web View
web platforms
Web View
web platforms
Web View
web platforms
Web View
web platforms
Official (native)
webapp platforms
web platforms
Official (native)
webapp platforms
web platforms
unknown future
2013: glasses
hacks, why?
1- UI hacks
UI
Full screen
full screen
full screen
3 solutions
full screen
Solution #1
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
full screen
<meta name="mobile-web-app-capable"
content="yes">
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
if (navigator.standalone) { }
full screen
<meta name="apple-mobile-web-app-capable"
content="yes">
<meta name="viewport"
content="width=320.1">
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">
full screen
full screen
Solution #2
future platforms
full screen
var body = document.documentElement;
!
if (body.requestFullScreen) {
body.requestFullScreen();
}
full screen
var body = document.documentElement;
!
if (body.requestFullScreen) {
body.requestFullScreen();
} else if (body.webkitRequestFullScreen) {
body.webkitRequestFullScreen();
}
full screen
var body = document.documentElement;
!
if (body.requestFullScreen) {
body.requestFullScreen();
} else if (body.webkitRequestFullScreen) {
body.webkitRequestFullScreen();
} else if (body.mozRequestFullScreen) {
body.mozRequestFullScreen();
}
full screen
Solution #3
...
full screen
window.addEventListener("load",
function() { window.scrollTo(0, 0); });
!
// use with care
document.addEventListener("touchmove",
function(e) { e.preventDefault() });
UI
Snapped mode
Windows 8
snapped mode
snapped mode
@media only screen and (max-width: 400px) {
@-ms-viewport { 
width: 320px; 
}
}
UI
High resolution
canvas
hi-res canvas
<canvas width="300" height="200">
</canvas>
300px
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
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
hi res canvas
var devPxRatio = window.devicePixelRatio;
!
var canvasPxRatio =
document.querySelector("canvas")
.getContext("2d")
.webkitBackingStorePixelRatio;
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
devPxRatio = 2
canvasPxRatio = 1
hi res canvas
<canvas width="300" height="200">
</canvas>
300px
devPxRatio >= 1
canvasPxRatio = undefined
Solution #1
hi res canvas
hi res canvas
<meta name="viewport" content="width=640">
!
<canvas width="600" height="400">
</canvas>
600px
Solution #2
hi res canvas
hi res canvas
<script>

document.querySelector("canvas")
.getContext("2d")
.setScale(2, 2);
</script>
300px
hi res canvas
<canvas width="600" height="400">
</canvas>
300px
<script>

document.querySelector("canvas")
.getContext("2d")
.setScale(2, 2);
</script>
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>
multi-platform &
multi-resolution
execution &
memory
UI
truly numeric field
numeric
<input type="number">
numeric
<input type="number">
numeric
<input type="number">
Solution
numeric
<input type="number"
pattern="[0-9]*">
numeric
<input type="password"
pattern="[0-9]*">
UI
rich editor
rich editor
<ul contenteditable>
<li>First item
</ul>
rich editor
<ul contenteditable>
<li>First item
</ul>
rich editor
<ul contenteditable>
<li>First item
</ul>
UI
background tab
resurrection
background
background
<marquee>Welcome to my website!</marquee>
<font family="Arial" size="20">
background
<meta http-equiv="refresh"
content="60">
background
<meta http-equiv="refresh" content="2">
!
background
<meta http-equiv="refresh" content="2">
!
<script>
var mr = document.querySelector("meta");
setInterval(function() {
mr.content=mr.content;
}, 1000);
</script>
background
DISCLAIMER
only from iOS 6.1
UI
images for different
screen densities
screen densities
<img src="photo.png" width="300">
screen densities
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
Solution #1
screen densities
use vector images
<img src="photo.svg" width="300">
<svg></svg>
@font-face {}
screen densities
screen densities
Solution #2
screen densities
<img src="photo.png" width="300">
if (window.devicePixelRatio > 1.5) {
// change URL
}
Solution #3
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;
}
Solution #4
screen densities
<div id="photoContainer">
#photoContainer {
background-image: url('photo-lo.png');
width: 300px; height: 200px;
}
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;
}
}
screen densities
<div id="photoContainer">
@media (-webkit-min-device-pixel-ratio: 1.5),
(min--moz-device-pixel-ratio: 1.5) {
!
!
!
!
!
}
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) {
!
!
!
!
}
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) {
!
!
!
}
always query
on ranges
@media (-webkit-device-pixel-ratio: 2)
always query
on ranges
@media (-webkit-min-device-pixel-ratio: 1.7)
find the balance
300x300 900x900
2- device
interaction hacks
device
media capture
media capture
<input type="file">
Solution
media capture
<input type="file" accept="image/*">
<input type="file" accept="video/*">
<input type="file" accept="audio/*">
media capture
<input type="file" accept="image/*"
capture="camera">
<input type="file" accept="video/*"
capture="camcorder">
<input type="file" accept="video/*"
capture="microphone">
(old spec)
media capture
Live demo
device
interacting with
native apps
native integration
Solution, part I
DON'T DO THAT
Solution, part II
native integration
<meta name="apple-itunes-app"
content="app-id=999">
native integration
native integration
<meta name="apple-itunes-app"
content="app-id=999">
<meta name="app-argument"
content="">
native integration
<meta name="msApplication-ID"
content="App">
<meta name="msApplication-PackageFamilyName"
content="myPackage">
native integration
native integration
native integration
native integration
<meta name="msApplication-ID"
content="App">
<meta name="msApplication-PackageFamilyName"
content="myPackage">
!
<meta name="msApplication-Arguments"
content="">
!
no api
no android
Solution, part III
native integration
<a href="customprotocol://">Open app</a>
!
native integration
<a href="twitter://post?message=HTML5">
Tweet this</a>
!
native integration
native integration
function tweet() {
location.href="twitter://post?message=HTML5";
setTimeout(function() {
location.href="postCall.html";
}, 1000);
}
!
native integration
native integration
function tweet() {
iframe.location.href=
"twitter://post?message=HTML5";
setTimeout(function() {
appNotInstalled();
}, 1000);
}
!
device
push notification
push
<a href="suscription.passbook">
Subscribe to this site
</a>
push
push
3- enhancing your
app hacks
enhance your app
iOS home screen title
home screen
home screen
home screen
<title>My long title for SEO</title>
<meta name="apple-web-app-title"
content="My App">
UNDOCUMENTED
enhance your app
Changing tint iOS 7
tint
body {
background-color: blue; /* for the tint */
background-image: linear-gradient(to bottom, green 0%,
green 100%); /* for the body */
}
enhance your app
IE10 Live Tile
live tile
live tile
live tile
<meta name="msapplication-TileImage"
content="tile.png">
!
<meta name="msapplication-TileColor"
content="#ef0303">
enhance your app
You've said live tile!!!
live tile
<meta name="msapplication-badge"
content="frequency=60;polling-uri=XXX">
!
!
live tile
<meta name="msapplication-badge"
content="frequency=60;polling-uri=XXX">
!
<?xml version="1.0" ?>
<badge value="3" />
!
live tile
<meta name="msapplication-badge"
content="frequency=60;polling-uri=XXX">
!
<?xml version="1.0" ?>
<badge value="newMessage" />
!
enhance your app
It’s even better on
IE11
enhance your app
Storage limits
storage
AppCache, localStorage,
WebSQL, IDB
storage
Different domains,
iframes and
Cross Document Messaging API
!
storage
this might not work
in the future
do you really need
more space?
4- tools
Tools
Bandwidth
simulators
netlimiter.com
slowyapp.com
charlesproxy.com
Tools
Virtual Mobile Labs
developer.nokia.com
developer.samsung.com
keynotedeviceanywhere.com
most used key
combinations?
Tools
Live Reload
livereload.com
wrapping up
we need hacks because
• browsers are different
• no enough information
• undocumented features
• buggy
however
• usability and Performance matters
• be careful
• your app should work anyway
• use feature detection
“change is the only constant“
Heraclitus
1- glass experience
quick video
( )
MYTHS
Notifications on
your head
Notifications on
your head
Your content is
not so important
specs
nHD transparent
640x360
25" - 2.5m / 8 ft away
specs
Sensors
specs
Camera
specs
Multi-touch panel
specs
wifi
bluetooth
specs
Android 4.0
specs
bone conduction
transducer
quick demo
( )
native GDK
vs
cloud Mirror API
https
https
content
https
content
actions
https
http(s)
content
actions
glassware
glassware
timeline
past, now, future
quick demo
( )
timeline
timeline items = card
timeline
card
code!
built-in menu items
share
navigate to
read aloud
delete
voice call
reply
toggle pin
view website
timeline
contextual events
geolocation
!
browser
invocation
google search
card's action
quick demo
( )
browser
interaction
scroll
point and click
browser
responsive web design
mobile user agent
width: 427px
pixel ratio: 1.5
browser
html5
video, audio
devicemotion
scroll and touch events
no geo, speech, camera yet
timeline
contextual events
geolocation
share
timeline
contextual events
geolocation
share
launch "ok glass" menu
glass
- understand the experience
- mirror api vs gdk vs browser
- Glassware cloud-based
- it's just the beginning
you can reach a good
experience
Pictures)from)freedigitalphotos.net)
thank you!
firtman@gmail.com
@firt
firt.mobi/pmw
Next Tuesday @ Tallin
Mobile HTML5
Workshop

topconf.com

More Related Content

What's hot

[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Web UI performance tuning
Web UI performance tuningWeb UI performance tuning
Web UI performance tuningAndy Pemberton
 
Responsive Videos, mehr oder weniger
Responsive Videos, mehr oder wenigerResponsive Videos, mehr oder weniger
Responsive Videos, mehr oder wenigerWalter Ebert
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
High Performance Images
High Performance ImagesHigh Performance Images
High Performance ImagesWalter Ebert
 
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014Christopher Schmitt
 
[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapiNoritada Shimizu
 
[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloHTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloRobert Nyman
 
[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessionsUdaAs PaNchi
 
Lecture8 php page control by okello erick
Lecture8 php page control by okello erickLecture8 php page control by okello erick
Lecture8 php page control by okello erickokelloerick
 
Ewd senchatouch classactivity_part_i
Ewd senchatouch classactivity_part_iEwd senchatouch classactivity_part_i
Ewd senchatouch classactivity_part_ivxVistA.org
 
Token Based Authentication Systems
Token Based Authentication SystemsToken Based Authentication Systems
Token Based Authentication SystemsHüseyin BABAL
 

What's hot (15)

[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design
 
Web UI performance tuning
Web UI performance tuningWeb UI performance tuning
Web UI performance tuning
 
Responsive Videos, mehr oder weniger
Responsive Videos, mehr oder wenigerResponsive Videos, mehr oder weniger
Responsive Videos, mehr oder weniger
 
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design[HEWEBAR 2012] Adaptive Images in Responsive Web Design
[HEWEBAR 2012] Adaptive Images in Responsive Web Design
 
High Performance Images
High Performance ImagesHigh Performance Images
High Performance Images
 
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
 
[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design
 
20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi20141030 html5j-firefox os-deviceapi
20141030 html5j-firefox os-deviceapi
 
[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design
 
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao PauloHTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
HTML5, The Open Web, and what it means for you - MDN Hack Day, Sao Paulo
 
[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design
 
Cookies and sessions
Cookies and sessionsCookies and sessions
Cookies and sessions
 
Lecture8 php page control by okello erick
Lecture8 php page control by okello erickLecture8 php page control by okello erick
Lecture8 php page control by okello erick
 
Ewd senchatouch classactivity_part_i
Ewd senchatouch classactivity_part_iEwd senchatouch classactivity_part_i
Ewd senchatouch classactivity_part_i
 
Token Based Authentication Systems
Token Based Authentication SystemsToken Based Authentication Systems
Token Based Authentication Systems
 

Viewers also liked

Processing a Arduino
Processing a ArduinoProcessing a Arduino
Processing a ArduinoJuraj Bednar
 
Adapted Rhino 3000 Online Rhino Academy Training E Uv2
Adapted  Rhino 3000 Online Rhino Academy Training E Uv2Adapted  Rhino 3000 Online Rhino Academy Training E Uv2
Adapted Rhino 3000 Online Rhino Academy Training E Uv2proxBert
 
JISC BCE: Evaluation Phase 1
JISC BCE: Evaluation Phase 1JISC BCE: Evaluation Phase 1
JISC BCE: Evaluation Phase 1JISC BCE
 
I DespréS De L’Eso, Què
I DespréS De L’Eso, QuèI DespréS De L’Eso, Què
I DespréS De L’Eso, QuèRut_ba
 
Phil Reeves Innov_ex 09
Phil Reeves Innov_ex 09Phil Reeves Innov_ex 09
Phil Reeves Innov_ex 09Mary Rose
 
Dannys Slides
Dannys SlidesDannys Slides
Dannys SlidesMary Rose
 
NYPA 2010 - Link Journalism
NYPA 2010 - Link JournalismNYPA 2010 - Link Journalism
NYPA 2010 - Link JournalismGreg Linch
 
Adapted Rhino 6000 Online Rhino Academy Training Eu
Adapted Rhino 6000 Online Rhino Academy Training EuAdapted Rhino 6000 Online Rhino Academy Training Eu
Adapted Rhino 6000 Online Rhino Academy Training EuproxBert
 
BSN Central FedBid Presentation
BSN Central FedBid Presentation BSN Central FedBid Presentation
BSN Central FedBid Presentation curtiswynn
 
CET Quiz Club Set #3
CET Quiz Club Set #3CET Quiz Club Set #3
CET Quiz Club Set #3Jithin Jacob
 
Saturn - Tcacenco Alina
Saturn - Tcacenco AlinaSaturn - Tcacenco Alina
Saturn - Tcacenco Alinaalexcurbet
 
Ultimate Hq Wallpapers
Ultimate Hq WallpapersUltimate Hq Wallpapers
Ultimate Hq Wallpapersfondas vakalis
 
Atjaunojamā EnerģIja
Atjaunojamā  EnerģIjaAtjaunojamā  EnerģIja
Atjaunojamā EnerģIjaUldis Pavuls
 
2011 Sales Deck
2011 Sales Deck2011 Sales Deck
2011 Sales Decktbrown09
 

Viewers also liked (20)

Processing a Arduino
Processing a ArduinoProcessing a Arduino
Processing a Arduino
 
Adapted Rhino 3000 Online Rhino Academy Training E Uv2
Adapted  Rhino 3000 Online Rhino Academy Training E Uv2Adapted  Rhino 3000 Online Rhino Academy Training E Uv2
Adapted Rhino 3000 Online Rhino Academy Training E Uv2
 
JISC BCE: Evaluation Phase 1
JISC BCE: Evaluation Phase 1JISC BCE: Evaluation Phase 1
JISC BCE: Evaluation Phase 1
 
Wensen
WensenWensen
Wensen
 
I DespréS De L’Eso, Què
I DespréS De L’Eso, QuèI DespréS De L’Eso, Què
I DespréS De L’Eso, Què
 
激 勵 Motivation
激 勵 Motivation激 勵 Motivation
激 勵 Motivation
 
Phil Reeves Innov_ex 09
Phil Reeves Innov_ex 09Phil Reeves Innov_ex 09
Phil Reeves Innov_ex 09
 
Dannys Slides
Dannys SlidesDannys Slides
Dannys Slides
 
NYPA 2010 - Link Journalism
NYPA 2010 - Link JournalismNYPA 2010 - Link Journalism
NYPA 2010 - Link Journalism
 
Adapted Rhino 6000 Online Rhino Academy Training Eu
Adapted Rhino 6000 Online Rhino Academy Training EuAdapted Rhino 6000 Online Rhino Academy Training Eu
Adapted Rhino 6000 Online Rhino Academy Training Eu
 
BSN Central FedBid Presentation
BSN Central FedBid Presentation BSN Central FedBid Presentation
BSN Central FedBid Presentation
 
CET Quiz Club Set #3
CET Quiz Club Set #3CET Quiz Club Set #3
CET Quiz Club Set #3
 
Wildlife
WildlifeWildlife
Wildlife
 
Saturn - Tcacenco Alina
Saturn - Tcacenco AlinaSaturn - Tcacenco Alina
Saturn - Tcacenco Alina
 
Beautiful Nature
Beautiful NatureBeautiful Nature
Beautiful Nature
 
Praveen Khanna
Praveen KhannaPraveen Khanna
Praveen Khanna
 
Ultimate Hq Wallpapers
Ultimate Hq WallpapersUltimate Hq Wallpapers
Ultimate Hq Wallpapers
 
Atjaunojamā EnerģIja
Atjaunojamā  EnerģIjaAtjaunojamā  EnerģIja
Atjaunojamā EnerģIja
 
Vendors Shop Earth
Vendors Shop EarthVendors Shop Earth
Vendors Shop Earth
 
2011 Sales Deck
2011 Sales Deck2011 Sales Deck
2011 Sales Deck
 

Similar to FINHTML5 - Breaking the mobile web

Breaking Limits on Mobile HTML5 - TopConf Tallinn
Breaking Limits on Mobile HTML5 - TopConf TallinnBreaking Limits on Mobile HTML5 - TopConf Tallinn
Breaking Limits on Mobile HTML5 - TopConf TallinnMaximiliano Firtman
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Web versus Native: round 1!
Web versus Native: round 1!Web versus Native: round 1!
Web versus Native: round 1!Chris Mills
 
Mozilla Web Apps - Super-VanJS
Mozilla Web Apps - Super-VanJSMozilla Web Apps - Super-VanJS
Mozilla Web Apps - Super-VanJSRobert Nyman
 
[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moiblemarkuskobler
 
Niels Leenheer - Weird browsers - code.talks 2015
Niels Leenheer - Weird browsers - code.talks 2015Niels Leenheer - Weird browsers - code.talks 2015
Niels Leenheer - Weird browsers - code.talks 2015AboutYouGmbH
 
openMIC barcamp 11.02.2010
openMIC barcamp 11.02.2010openMIC barcamp 11.02.2010
openMIC barcamp 11.02.2010Patrick Lauke
 
Intro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS featuresIntro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS featuresAndreas Bovens
 
Java script browser objects 2
Java script browser objects 2Java script browser objects 2
Java script browser objects 2H K
 
Progressive Web Apps. What, why and how
Progressive Web Apps. What, why and howProgressive Web Apps. What, why and how
Progressive Web Apps. What, why and howRiza Fahmi
 
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)Tech in Asia ID
 
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....Patrick Lauke
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make itJonathan Snook
 
Una web todos los dispositivos.
Una web todos los dispositivos.Una web todos los dispositivos.
Una web todos los dispositivos.philogb
 
Puppeteer - Headless Chrome Node API
Puppeteer - Headless Chrome Node APIPuppeteer - Headless Chrome Node API
Puppeteer - Headless Chrome Node APIWilson Su
 
Responsive Websites
Responsive WebsitesResponsive Websites
Responsive WebsitesJoe Seifi
 
Empowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsEmpowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsFITC
 
Empowering the Mobile Web - Mills
Empowering the Mobile Web - MillsEmpowering the Mobile Web - Mills
Empowering the Mobile Web - MillsCodemotion
 

Similar to FINHTML5 - Breaking the mobile web (20)

Breaking Limits on Mobile HTML5 - TopConf Tallinn
Breaking Limits on Mobile HTML5 - TopConf TallinnBreaking Limits on Mobile HTML5 - TopConf Tallinn
Breaking Limits on Mobile HTML5 - TopConf Tallinn
 
[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design[convergese] Adaptive Images in Responsive Web Design
[convergese] Adaptive Images in Responsive Web Design
 
Web versus Native: round 1!
Web versus Native: round 1!Web versus Native: round 1!
Web versus Native: round 1!
 
Mozilla Web Apps - Super-VanJS
Mozilla Web Apps - Super-VanJSMozilla Web Apps - Super-VanJS
Mozilla Web Apps - Super-VanJS
 
[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design[html5tx] Adaptive Images in Responsive Web Design
[html5tx] Adaptive Images in Responsive Web Design
 
Get Ahead with HTML5 on Moible
Get Ahead with HTML5 on MoibleGet Ahead with HTML5 on Moible
Get Ahead with HTML5 on Moible
 
Niels Leenheer - Weird browsers - code.talks 2015
Niels Leenheer - Weird browsers - code.talks 2015Niels Leenheer - Weird browsers - code.talks 2015
Niels Leenheer - Weird browsers - code.talks 2015
 
openMIC barcamp 11.02.2010
openMIC barcamp 11.02.2010openMIC barcamp 11.02.2010
openMIC barcamp 11.02.2010
 
Intro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS featuresIntro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS features
 
Java script browser objects 2
Java script browser objects 2Java script browser objects 2
Java script browser objects 2
 
Progressive Web Apps. What, why and how
Progressive Web Apps. What, why and howProgressive Web Apps. What, why and how
Progressive Web Apps. What, why and how
 
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)"Progressive Web Apps" by Riza Fahmi	(Hacktiv8)
"Progressive Web Apps" by Riza Fahmi (Hacktiv8)
 
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....
Handys und Tablets - Webentwicklung jenseits des Desktops - WebTech Mainz 12....
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make it
 
Una web todos los dispositivos.
Una web todos los dispositivos.Una web todos los dispositivos.
Una web todos los dispositivos.
 
Puppeteer - Headless Chrome Node API
Puppeteer - Headless Chrome Node APIPuppeteer - Headless Chrome Node API
Puppeteer - Headless Chrome Node API
 
Responsive Websites
Responsive WebsitesResponsive Websites
Responsive Websites
 
JavaScript on the Desktop
JavaScript on the DesktopJavaScript on the Desktop
JavaScript on the Desktop
 
Empowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris MillsEmpowering the “Mobile Web” with Chris Mills
Empowering the “Mobile Web” with Chris Mills
 
Empowering the Mobile Web - Mills
Empowering the Mobile Web - MillsEmpowering the Mobile Web - Mills
Empowering the Mobile Web - Mills
 

More from 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
 

More from 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
 

Recently uploaded

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 

Recently uploaded (20)

The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 

FINHTML5 - Breaking the mobile web