SlideShare a Scribd company logo
1 of 82
Fake It ‘til
You Make It
creating mobile apps that
feel like native apps
Fake It ‘til
You Make It
creating mobile apps that
feel like native apps
What I won’t be
talking about.
Who cares about
feature phones?
75% developing for
 iOS and Android
Mobile Safari
Mobile Safari
 Local Storage
Mobile Safari
 Local Storage
 CSS3 features like transforms, transitions and
 animations
Mobile Safari
 Local Storage
 CSS3 features like transforms, transitions and
 animations
 Geolocation
Mobile Safari
 Local Storage
 CSS3 features like transforms, transitions and
 animations
 Geolocation
 HTML5 forms support for search, number and
 email ïŹeld types.
Mobile Safari
 Local Storage
 CSS3 features like transforms, transitions and
 animations
 Geolocation
 HTML5 forms support for search, number and
 email ïŹeld types.
 SVG on the iPhone but not on Android or webOS
Mobile Safari
 Local Storage
 CSS3 features like transforms, transitions and
 animations
 Geolocation
 HTML5 forms support for search, number and
 email ïŹeld types.
 SVG on the iPhone but not on Android or webOS
 Access to some hardware acceleration
Why Web over Native?
Why Web over Native?
 don’t need access to device APIs
Why Web over Native?
 don’t need access to device APIs
  most apps don’t
Why Web over Native?
 don’t need access to device APIs
  most apps don’t
 need quick iteration without app store approval
 process
Could be a Web App
 Calculators (CalcBot)
 Twitter
 Things.app
 Epicurious
 Weather Apps
 UI Sketcher
37Signals: Chalk
37Signals: Chalk
http://chalk.37signals.com/
Could be a Web App
 Words With Friends/Scrabble
 Angry Birds
 Canabalt
 Bejeweled
 Ramp Champ
ConvertBot
Demo at
http://snook.ca/testing/convertbot/
Detecting within Browser
if(window.navigator.standalone)
{


//
run
code
in
“app”
mode
}
else
{


//
run
code
in
mobile
safari
mode
}
Home Screen Icon
<link
rel="apple‐touch‐icon"
href="images/
icon.png">
<link
rel="apple‐touch‐icon"
sizes="72x72"

href="touch‐icon‐ipad.png">
<link
rel="apple‐touch‐icon"
sizes="114x114"

href="touch‐icon‐iphone4.png">


rel="apple‐touch‐icon‐precomposed"
Start-up Image
<link
rel="apple‐touch‐startup‐image"
href="/
startup.png">
Start-up Image
 No apparent support for horizontal image
 When loading in landscape, the status bar
 creates a gap to one edge of the loading screen.
Going “Full screen”
<meta
name="apple‐mobile‐web‐app‐capable"

content="yes">
Status Bar
<meta
name="apple‐mobile‐web‐app‐status‐bar‐
style"
content="black">


default
black‐translucent
Viewport
<meta
name="viewport"
content="width=device‐
width">
<meta
name="viewport"
content="width=590">
<meta
name="viewport"
content="initial‐scale=

1.0">
<meta
name="viewport"
content="initial‐scale=

2.3,
user‐scalable=no">
Don’t Need a Framework!
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
 ConvertBot demo is 9k
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
 ConvertBot demo is 9k
  uncompressed.
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
 ConvertBot demo is 9k
  uncompressed.
  ungzipped.
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
 ConvertBot demo is 9k
  uncompressed.
  ungzipped.
  including CSS.
Don’t Need a Framework!
 DOM APIs in newer browsers quite capable
 ConvertBot demo is 9k
  uncompressed.
  ungzipped.
  including CSS.
  including JavaScript.
HTML Prototypes
HTMLElement.prototype.__defineSetter__("ontap
",
function(func){

});


document.getElementById('keypad').ontap
=

function(){



alert('just
the
keypad');
};
HTML Prototypes
HTMLElement.prototype.switchClass
=

function(fromClass,
toClass){


if(this.className
==
fromClass)
{






this.className
=
toClass;


}
else
{






this.className
=
fromClass;


}
 

}


document.getElementById('spinner‐
shell').switchClass('collapsed',
'expanded');
querySelector(All)
document.querySelector('.active');
//
one
el
document.querySelectorAll('.active');
//
all
But I WANT jQUERY!
function
$(selector){


return
document.querySelector(selector);
}
Looping
[3,2,1].forEach(function(itm,
idx){
 

console.log(itm,
idx);
//
3,0
|
2,1
|
1,2
})
Demo at
http://snook.ca/testing/convertbot/demo/
Use CSS for UI
#units
div:nth‐child(2)
{
‐webkit‐transform:rotate(45deg);
}
#units
div:nth‐child(3)
{
‐webkit‐transform:rotate(90deg);
}
#units
div:nth‐child(4)
{
‐webkit‐transform:rotate(135deg);
}
#units
div:nth‐child(5)
{
‐webkit‐transform:rotate(180deg);
}
#units
div:nth‐child(6)
{
‐webkit‐transform:rotate(225deg);
}
#units
div:nth‐child(7)
{
‐webkit‐transform:rotate(270deg);
}
#units
div:nth‐child(8)
{
‐webkit‐transform:rotate(315deg);
}
Use Transitions
‐webkit‐transition‐property:
‐webkit‐transform;

‐webkit‐transition‐duration:
.5s;


el.style.webkitTransform
=
'rotate('+pos+'deg)';
Webkit Animations
@‐webkit‐keyframes
{


0%
{
background‐position‐y:
0;
}


100%
{
background‐position‐y:
‐100%;
}
}


body
{


background‐image:url("canvas‐crumpled.jpeg");


‐webkit‐animation:
bg
3s
linear
infinite;
}
Touch vs Click
 Using touch events can make the app feel faster
 than click events.
 You can customize tap hightlight colour
Touch vs Click
‐webkit‐tap‐highlight‐color:rgba(200,0,0,0.4);
Input Features
<input
autocorrect="on">
<!‐‐
or
“off”
‐‐>
<input
placeholder="Example
Text">
<input
type="email">
<input
type="url">
<input
type="number">
<input
type="search">
Locking Orientation
window.addEventListener('orientationchange',
function(){


if(window.orientation
==
‐90)
{




document.getElementById('orient').className
=
'orientright';


}


if(window.orientation
==
90)
{




document.getElementById('orient').className
=
'orientleft';


}


if(window.orientation
==
0)
{




document.getElementById('orient').className
=
'';


}
},
true);
Locking Orientation
.orientleft
#shell
{

‐webkit‐transform:
rotate(‐90deg);


‐webkit‐transform‐origin:160px
160px;

}


.orientright
#shell
{


‐webkit‐transform:
rotate(90deg);


‐webkit‐transform‐origin:230px
230px;

}



Locking Orientation
Performance
 Use CSS instead of JavaScript for Animations
  use CSS Transitions
  use CSS Animations
  use 2D and 3D transforms to force hardware
  acceleration
Hardware Acceleration
 2D and 3D transforms may be hardware
 accelerated
 use translateX/Y instead of top/left
 use rotateX(0) to push items with heavy CSS to
 use hardware acceleration
   (it’s like IE’s zoom:1 to force hasLayout)
Wait, what about Android
       and webOS?
Testing Environments
Testing Environments
 Android emulator is slow
Testing Environments
 Android emulator is slow
 webOS runs on Virtual Box
Testing Environments
 Android emulator is slow
 webOS runs on Virtual Box
Testing Environments
 Android emulator is slow
 webOS runs on Virtual Box


 Best to test on device
Testing Environments
 Android emulator is slow
 webOS runs on Virtual Box


 Best to test on device
 For multi-touch testing, must do on the device.
Testing Environments
 Android emulator is slow
 webOS runs on Virtual Box


 Best to test on device
 For multi-touch testing, must do on the device.
   pinch/zoom, rotate possible in iOS simulator
webOS 2.1
 No support for touch events
 has “2-ïŹnger” gesture support such as pinch/
 zoom
 rendering issues
Mobile Web Frameworks
Mobile Web Frameworks
 jQTouch
 jQuery Mobile
 Sencha Touch
jQTouch
 Targetted for iOS
 Makes web app feel like native app with controls
 and list views
 http://jqtouch.com/
The Two Hour App
 Frameworks allow for rapid development
Demo at
http://pushups.snook.ca/
Local Storage
JSON.parse(localStorage.getItem('pdata'));
localStorage.setItem('pdata',

JSON.stringify(items));
jQuery Mobile
 Designed for iPhone, Android, webOS
  plus bada, Meego, Windows Mobile and more
 Includes touch and gesture support
 http://jquerymobile.com/
Sencha Touch
 Designed for iPhone and Android
 Includes enhanced touch events
 Allows for rapid development
 http://www.sencha.com/products/touch/
Going Native
Why Native over Web?
 Access to native hardware and other applications
 Camera, Address Book, Filesystem
 Streamlined Revenue Process
Meet in the middle
 Many apps take advantage of native WebView to
 load application components from remote server
  allows for iteration of some app components
  without requiring complete approval process
  from app store
PhoneGap and Titanium
 Titanium Mobile targets iPhone and Android
 PhoneGap targets iPhone, Android, Palm,
 Symbian and Blackberry.
 http://www.appcelerator.com/
 http://www.phonegap.com/
“I really like my work and
     I try really hard.”
@snookca
http://snook.ca

More Related Content

What's hot

hacking with node.JS
hacking with node.JShacking with node.JS
hacking with node.JSHarsha Vashisht
 
Basic Introduction to Web Development
Basic Introduction to Web DevelopmentBasic Introduction to Web Development
Basic Introduction to Web DevelopmentBurhan Khalid
 
ì• ìžìŒíšŒêł _ver.0.1
ì• ìžìŒíšŒêł _ver.0.1ì• ìžìŒíšŒêł _ver.0.1
ì• ìžìŒíšŒêł _ver.0.1정원 읎
 
Web Design & Development - Session 1
Web Design & Development - Session 1Web Design & Development - Session 1
Web Design & Development - Session 1Shahrzad Peyman
 
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14ìž„í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임SukYun Yoon
 
Android internals 07 - Android graphics (rev_1.1)
Android internals 07 - Android graphics (rev_1.1)Android internals 07 - Android graphics (rev_1.1)
Android internals 07 - Android graphics (rev_1.1)Egor Elizarov
 
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)Dong Chan Shin
 
An Introduction of Node Package Manager (NPM)
An Introduction of Node Package Manager (NPM)An Introduction of Node Package Manager (NPM)
An Introduction of Node Package Manager (NPM)iFour Technolab Pvt. Ltd.
 
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°ă€Žá„€á…Šá„‹á…”á†· ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°ëł”ì—° 읎
 
Introduction to React native
Introduction to React nativeIntroduction to React native
Introduction to React nativeDhaval Barot
 
Web Programming Assignment
Web Programming AssignmentWeb Programming Assignment
Web Programming AssignmentVijayananda Mohire
 
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013devCAT Studio, NEXON
 
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”á„‰á…łá„á…Ąá„á…łá„‹á…„á†žá„Žá…„á„…á…„á†· á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”Sunyoung Shin
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPSeungmo Koo
 
Angular performance slides
Angular performance slidesAngular performance slides
Angular performance slidesDavid Barreto
 
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 ì‹œìŠ€í…œí…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템QooJuice
 
Web development | Derin Dolen
Web development | Derin Dolen Web development | Derin Dolen
Web development | Derin Dolen Derin Dolen
 

What's hot (20)

hacking with node.JS
hacking with node.JShacking with node.JS
hacking with node.JS
 
Basic Introduction to Web Development
Basic Introduction to Web DevelopmentBasic Introduction to Web Development
Basic Introduction to Web Development
 
ì• ìžìŒíšŒêł _ver.0.1
ì• ìžìŒíšŒêł _ver.0.1ì• ìžìŒíšŒêł _ver.0.1
ì• ìžìŒíšŒêł _ver.0.1
 
web development
web developmentweb development
web development
 
Web Design & Development - Session 1
Web Design & Development - Session 1Web Design & Development - Session 1
Web Design & Development - Session 1
 
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14ìž„í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임
í”„ëĄœê·žëž˜ëšžê°€ ëȘ°ëžë˜ 멀티윔얎 CPU 읎알Ʞ 13, 14임
 
Android internals 07 - Android graphics (rev_1.1)
Android internals 07 - Android graphics (rev_1.1)Android internals 07 - Android graphics (rev_1.1)
Android internals 07 - Android graphics (rev_1.1)
 
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)
C# / .NET Framework로 믾래 밄귞늇을 챙êČšëłŽìž (Basic)
 
An Introduction of Node Package Manager (NPM)
An Introduction of Node Package Manager (NPM)An Introduction of Node Package Manager (NPM)
An Introduction of Node Package Manager (NPM)
 
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°ă€Žá„€á…Šá„‹á…”á†· ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°
『ᄀᅊᄋᅔᆷ ᄆᅹᄂᅔ어ᆚ스 ᄋᅹᆚ션 ᄀᅊᄋᅔᆷ á„‹á…Ąá†Żá„€á…©á„…á…”á„Œá…łá†·ă€ - ëŻžëŠŹëłŽêž°
 
Introduction to React native
Introduction to React nativeIntroduction to React native
Introduction to React native
 
NodeJS for Beginner
NodeJS for BeginnerNodeJS for Beginner
NodeJS for Beginner
 
enterprise-angular-v5.pdf
enterprise-angular-v5.pdfenterprise-angular-v5.pdf
enterprise-angular-v5.pdf
 
Web Programming Assignment
Web Programming AssignmentWeb Programming Assignment
Web Programming Assignment
 
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013
임태현, êČŒìž„ 서ëȄ 디자읞 가읎드, NDC2013
 
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”á„‰á…łá„á…Ąá„á…łá„‹á…„á†žá„Žá…„á„…á…„á†· á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”
스터트ᄋᅄᆞᄎᅄᄅᅄᆷ á„á…©á„‹á…”á„‘á…łá„…á…©á„Œá…Šá†šá„á…łá„’á…Ąá„€á…”
 
Windows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCPWindows Registered I/O (RIO) vs IOCP
Windows Registered I/O (RIO) vs IOCP
 
Angular performance slides
Angular performance slidesAngular performance slides
Angular performance slides
 
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 ì‹œìŠ€í…œí…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템
í…ŒëŒëĄœ ì‚ŽíŽŽëłž MMORPG의 녌타êȟ팅 시슀템
 
Web development | Derin Dolen
Web development | Derin Dolen Web development | Derin Dolen
Web development | Derin Dolen
 

Viewers also liked

Rating Butler
Rating ButlerRating Butler
Rating ButlerTommy Chan
 
Responsive Images and Video
Responsive Images and VideoResponsive Images and Video
Responsive Images and VideoJason Grigsby
 
Romania Timisoara
Romania   TimisoaraRomania   Timisoara
Romania Timisoaralumik
 
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...Garazi_Az
 
Populis - NOAH13 London
Populis - NOAH13 LondonPopulis - NOAH13 London
Populis - NOAH13 LondonNOAH Advisors
 
Estetica
EsteticaEstetica
Esteticastylework
 
Open Source Everything manifesto @ Liberation Technology NYC
Open Source Everything manifesto @ Liberation Technology NYCOpen Source Everything manifesto @ Liberation Technology NYC
Open Source Everything manifesto @ Liberation Technology NYCRobert David Steele Vivas
 
eFaber en 5 minutos
eFaber en 5 minutoseFaber en 5 minutos
eFaber en 5 minutosSvet Ivantchev
 
EXCON 2-6.10.2012 Fira a PerĂș
EXCON 2-6.10.2012 Fira a PerĂșEXCON 2-6.10.2012 Fira a PerĂș
EXCON 2-6.10.2012 Fira a PerĂșcoacnet
 
El Proyecto Matriz #80. ECHELON. FELIZ 1984
El Proyecto Matriz #80. ECHELON. FELIZ 1984El Proyecto Matriz #80. ECHELON. FELIZ 1984
El Proyecto Matriz #80. ECHELON. FELIZ 1984Proyecto Matriz
 
Industria contenidos digitales. Crowdsourcing. SELA 2012
Industria contenidos digitales. Crowdsourcing. SELA 2012Industria contenidos digitales. Crowdsourcing. SELA 2012
Industria contenidos digitales. Crowdsourcing. SELA 2012Sybil Caballero
 
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion Turismo
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion TurismoTurismo MU Iñaki Lakarra Reputacion Online Como Innovacion Turismo
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion TurismoIñaki Lakarra
 
Portafolio de evaluacion (lorenia cantu)
Portafolio de evaluacion (lorenia cantu)Portafolio de evaluacion (lorenia cantu)
Portafolio de evaluacion (lorenia cantu)Lorenia Cantu
 
0191_MadisonNeighbors_OCT16
0191_MadisonNeighbors_OCT160191_MadisonNeighbors_OCT16
0191_MadisonNeighbors_OCT16Briana Benn-Mirandi
 
TelevisiĂłn de alta definiciĂłn
TelevisiĂłn de alta definiciĂłnTelevisiĂłn de alta definiciĂłn
TelevisiĂłn de alta definiciĂłnYesica Ferro
 
Hayedo de Montejo de la Sierra
Hayedo de Montejo de la SierraHayedo de Montejo de la Sierra
Hayedo de Montejo de la Sierraqomolangmanu
 
Liquidity planner mundo sap
Liquidity planner mundo sapLiquidity planner mundo sap
Liquidity planner mundo sapIvĂĄn Cosco Ashtu
 

Viewers also liked (20)

Rating Butler
Rating ButlerRating Butler
Rating Butler
 
Responsive Images and Video
Responsive Images and VideoResponsive Images and Video
Responsive Images and Video
 
Romania Timisoara
Romania   TimisoaraRomania   Timisoara
Romania Timisoara
 
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...
DeustoSTART: de la teorĂ­a a la prĂĄctica. CĂłmo ayudar a la persona emprendedor...
 
Populis - NOAH13 London
Populis - NOAH13 LondonPopulis - NOAH13 London
Populis - NOAH13 London
 
Estetica
EsteticaEstetica
Estetica
 
Open Source Everything manifesto @ Liberation Technology NYC
Open Source Everything manifesto @ Liberation Technology NYCOpen Source Everything manifesto @ Liberation Technology NYC
Open Source Everything manifesto @ Liberation Technology NYC
 
eFaber en 5 minutos
eFaber en 5 minutoseFaber en 5 minutos
eFaber en 5 minutos
 
Igualdad
Igualdad Igualdad
Igualdad
 
EXCON 2-6.10.2012 Fira a PerĂș
EXCON 2-6.10.2012 Fira a PerĂșEXCON 2-6.10.2012 Fira a PerĂș
EXCON 2-6.10.2012 Fira a PerĂș
 
Bericht+e demokratie+5+fr
Bericht+e demokratie+5+frBericht+e demokratie+5+fr
Bericht+e demokratie+5+fr
 
El Proyecto Matriz #80. ECHELON. FELIZ 1984
El Proyecto Matriz #80. ECHELON. FELIZ 1984El Proyecto Matriz #80. ECHELON. FELIZ 1984
El Proyecto Matriz #80. ECHELON. FELIZ 1984
 
Industria contenidos digitales. Crowdsourcing. SELA 2012
Industria contenidos digitales. Crowdsourcing. SELA 2012Industria contenidos digitales. Crowdsourcing. SELA 2012
Industria contenidos digitales. Crowdsourcing. SELA 2012
 
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion Turismo
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion TurismoTurismo MU Iñaki Lakarra Reputacion Online Como Innovacion Turismo
Turismo MU Iñaki Lakarra Reputacion Online Como Innovacion Turismo
 
Portafolio de evaluacion (lorenia cantu)
Portafolio de evaluacion (lorenia cantu)Portafolio de evaluacion (lorenia cantu)
Portafolio de evaluacion (lorenia cantu)
 
0191_MadisonNeighbors_OCT16
0191_MadisonNeighbors_OCT160191_MadisonNeighbors_OCT16
0191_MadisonNeighbors_OCT16
 
TelevisiĂłn de alta definiciĂłn
TelevisiĂłn de alta definiciĂłnTelevisiĂłn de alta definiciĂłn
TelevisiĂłn de alta definiciĂłn
 
Johana llorente
Johana llorenteJohana llorente
Johana llorente
 
Hayedo de Montejo de la Sierra
Hayedo de Montejo de la SierraHayedo de Montejo de la Sierra
Hayedo de Montejo de la Sierra
 
Liquidity planner mundo sap
Liquidity planner mundo sapLiquidity planner mundo sap
Liquidity planner mundo sap
 

Similar to Mobile Apps That Feel Native

Mobile Java with GWT: Still "Write Once, Run Everywhere"
Mobile Java with GWT: Still "Write Once, Run Everywhere"Mobile Java with GWT: Still "Write Once, Run Everywhere"
Mobile Java with GWT: Still "Write Once, Run Everywhere"Alex Theedom
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and moreYan Shi
 
Web app and more
Web app and moreWeb app and more
Web app and morefaming su
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5Ron Reiter
 
Mobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileMobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileTerry Ryan
 
Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)Adam Lu
 
Responsive web design & mobile web development - a technical and business app...
Responsive web design & mobile web development - a technical and business app...Responsive web design & mobile web development - a technical and business app...
Responsive web design & mobile web development - a technical and business app...Atos_Worldline
 
Skill Session - Web Multi Device
Skill Session - Web Multi DeviceSkill Session - Web Multi Device
Skill Session - Web Multi Devicefilirom1
 
Creating Rajanikant Powered Site
Creating Rajanikant Powered SiteCreating Rajanikant Powered Site
Creating Rajanikant Powered Sitemarkandey
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDee Sadler
 
Adobe & HTML5
Adobe & HTML5Adobe & HTML5
Adobe & HTML5Terry Ryan
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 
Intro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildIntro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildChris Griffith
 
phonegap with angular js for freshers
phonegap with angular js for freshers    phonegap with angular js for freshers
phonegap with angular js for freshers dssprakash
 
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010Heiko Behrens
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on MobileAdam Lu
 
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkBuilding a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkSt. Petersburg College
 

Similar to Mobile Apps That Feel Native (20)

Mobile Java with GWT: Still "Write Once, Run Everywhere"
Mobile Java with GWT: Still "Write Once, Run Everywhere"Mobile Java with GWT: Still "Write Once, Run Everywhere"
Mobile Java with GWT: Still "Write Once, Run Everywhere"
 
Web Apps and more
Web Apps and moreWeb Apps and more
Web Apps and more
 
Web app and more
Web app and moreWeb app and more
Web app and more
 
Web app
Web appWeb app
Web app
 
Multi screen HTML5
Multi screen HTML5Multi screen HTML5
Multi screen HTML5
 
Web app
Web appWeb app
Web app
 
Mobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery MobileMobile Apps with PhoneGap and jQuery Mobile
Mobile Apps with PhoneGap and jQuery Mobile
 
Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)Html5 on Mobile(For Developer)
Html5 on Mobile(For Developer)
 
Responsive web design & mobile web development - a technical and business app...
Responsive web design & mobile web development - a technical and business app...Responsive web design & mobile web development - a technical and business app...
Responsive web design & mobile web development - a technical and business app...
 
Skill Session - Web Multi Device
Skill Session - Web Multi DeviceSkill Session - Web Multi Device
Skill Session - Web Multi Device
 
Creating Rajanikant Powered Site
Creating Rajanikant Powered SiteCreating Rajanikant Powered Site
Creating Rajanikant Powered Site
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile design
 
Adobe & HTML5
Adobe & HTML5Adobe & HTML5
Adobe & HTML5
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Intro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildIntro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap Build
 
phonegap with angular js for freshers
phonegap with angular js for freshers    phonegap with angular js for freshers
phonegap with angular js for freshers
 
Mobile for web developers
Mobile for web developersMobile for web developers
Mobile for web developers
 
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
PlattformĂŒbergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
 
HTML5 on Mobile
HTML5 on MobileHTML5 on Mobile
HTML5 on Mobile
 
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile FrameworkBuilding a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
Building a Simple Mobile-optimized Web App Using the jQuery Mobile Framework
 

More from Jonathan Snook

CSS3 Takes on the World
CSS3 Takes on the WorldCSS3 Takes on the World
CSS3 Takes on the WorldJonathan Snook
 
Mobile Web Development
Mobile Web DevelopmentMobile Web Development
Mobile Web DevelopmentJonathan Snook
 
Mix10 final snook_ds15
Mix10 final snook_ds15Mix10 final snook_ds15
Mix10 final snook_ds15Jonathan Snook
 
The Type We Want (MIX10)
The Type We Want (MIX10)The Type We Want (MIX10)
The Type We Want (MIX10)Jonathan Snook
 
Presentation on Presentations
Presentation on PresentationsPresentation on Presentations
Presentation on PresentationsJonathan Snook
 
The Type We Want
The Type We WantThe Type We Want
The Type We WantJonathan Snook
 
Building On The Shoulders
Building On The ShouldersBuilding On The Shoulders
Building On The ShouldersJonathan Snook
 
Working With Ajax Frameworks
Working With Ajax FrameworksWorking With Ajax Frameworks
Working With Ajax FrameworksJonathan Snook
 

More from Jonathan Snook (9)

CSS3 Takes on the World
CSS3 Takes on the WorldCSS3 Takes on the World
CSS3 Takes on the World
 
Mobile Web Development
Mobile Web DevelopmentMobile Web Development
Mobile Web Development
 
Mix10 final snook_ds15
Mix10 final snook_ds15Mix10 final snook_ds15
Mix10 final snook_ds15
 
The Type We Want (MIX10)
The Type We Want (MIX10)The Type We Want (MIX10)
The Type We Want (MIX10)
 
Presentation on Presentations
Presentation on PresentationsPresentation on Presentations
Presentation on Presentations
 
RIAs
RIAsRIAs
RIAs
 
The Type We Want
The Type We WantThe Type We Want
The Type We Want
 
Building On The Shoulders
Building On The ShouldersBuilding On The Shoulders
Building On The Shoulders
 
Working With Ajax Frameworks
Working With Ajax FrameworksWorking With Ajax Frameworks
Working With Ajax Frameworks
 

Recently uploaded

FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Recently uploaded (20)

FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Mobile Apps That Feel Native

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n