SlideShare a Scribd company logo
mobile

Giusepe Grasso
Notes Developer
Agenda
• Part A - Lotus on mobile
• Part B - Cool things you can do on mobile
  devices
  – Geolocation
  – Working Offline
  – Forms
Lotus on mobile
A long experience on “pervasive devices”
That’s way we have this flag
on design elements




                                         2008
                               around
                                2001
     1997
Lotus Traveler
• Bring push email on any major device:
  Nokia Symbian, Windows Mobile,
  Apple iPhone, iPod & iPad
  Android is coming… (q4 2010)
  get into the beta
Lotus Sametime
Native clients for        Browser based client for
• Blackberry              • Apple iPhone, iPod
• Nokia E series
• windows mobile
• Sony Ericsson – M600,
  P990i, P1i
Lotus Quickr
• SnappFiles for iPhone, iPod Touch (and soon,
  iPad)
• BlackBerry Client for IBM Lotus Quickr
• Accessing Lotus Quickr From Google Android
  (lotus quickr wiki article with app source)
Lotus Connections
• BlackBerry Client for IBM Lotus Connections
• Web client for iPhone, iPhone 3G(S), iPod
  Touch, and Nokia S60 3rd & 5th edition
  devices
• https://greenhouse.lotus.com/mobile/
Lotus Mobile Wiki
         • Avaliable now
Mobile Portal Accelerator
• http://lotus2010.com
Lotus on mobile:
other third parties
Other third party tools: MartinScott
WirelessMail: pure domino mail push solution for
 blackberry, iphone, windows mobile, palm treo:
 no BES, no Traveler, only your domino server



                              Just go and ask
                              Jamie Mcgee!!
Other third party tools: commontime
mNotes, mForms, mSuite,
 mDesign Studio…

Mail Applications &
 device managment
Other third party tools: Teamstudio
Teamstudio Unplugged:
an eclipse designer plugin
that enable you to
translates Notes
applications into native
blackberry apps with
offline support
Now for the developers part
But first…
Some basics to keep in mind:
• Mobile users can be with limited or no data
   connectivity (no plan, roaming, no
   coverage) and little bandwidth
• Do not overload the cpu, a charged battery
   makes an happy user!
• Ergonomics and usage patterns are way
   different from desktop
Basic markup you need to know
• Tell the device you’re a friend:
  <meta name="HandheldFriendly" content="True" />
• Avoid viewport zoom
  <meta name="viewport" content="width=device-
  width,minimum-scale=1.0,maximum-scale=1.0"/>
  or
  <meta name="viewport" content="width=device-width,initial-
  scale=1.0,user-scalable=no"/>
Cool things you can do on mobile devices
Detect mobile devices
• No simple answer
• Using http headers
• Css media query
WURFL
Wireless Universal Resource File: An opensource
  database/xml-file of mobile user-agent(s)
Helps you indentify mobile devices
And more important
                                       Wurfl is made in Italy by
Mobile devices features and capabilities Passani
                                       Luca

• Open source: http://wurfl.sourceforge.net/
• Lotus Notes version by Jason Hook
  http://weblog.jasonhookonline.com/jho/blog.nsf/d
  6plinks/JHOK-7MJCPB
WURFL
• Open source: http://wurfl.sourceforge.net/
• Lotus Notes version by Jason Hook
  http://weblog.jasonhookonline.com/jho/blo
  g.nsf/d6plinks/JHOK-7MJCPB
• I’ve made some updates to Jason database
  and you’ll find my version on DDive DVD
WURFL structure
WURFL device info


         You can try with your smartphone
         right now:
         http://bit.ly/DDiveDemoMDInfo
WURFL why bother?
If we know the device features, we can adapt
   and send resouces or features of the right
   size or kind to the right devices
Other http headers of interest
HTTP headers sent by mobile devices but not by
  desktop browser:
• x-wap-profile: links to UAProfile (standard by
  Open Mobile Alliance)
• X-OperaMini-Features: set by opera mini
  browser, gives CSV of phone features

We can use this http headers to “guess” that a
 device is mobile
User-agent x-wap-profile & x-operamini-features
Look for:
• Common mobile patterns in user-agent
• Data in x-wap-profile or x-operamini-features
                          You can try with your smartphone
                          right now:
                          http://bit.ly/DDiveDemoMID
CSS media queries
@media handheld { ... }
@media only screen and (max-device-width: 700px) { ... }
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
 only screen and (min-device-pixel-ratio: 1.5) { ... }

• Brillant implementation at lessframework.com
CSS media queries
• Media queries poor's man implementation on
  dominopoint.it:




• With a screen width of less then 700px, we show a
  prominent link to the mobile version:
@media screen   { .mobile { display:none; }}
@media handheld { .mobile { display:block; }}
@media (max-width:700px) { .mobile { display:block;   } }
geolocation
Three way:
1. IP Based: I know where your gateway is (or
   I can use a service like ipinfodb.com)
2. Based on Gps, wifi (kown position of nearby
   access points) or cell tower (triangulation)
3. Ask the user
Geolocation: phone triangulation
Your phone is always connected with more
  than one tower and talk with the network
  about signal strenght (as in distance from the
  towers)



if you're on the run from authorities
   You Are here
is better to leave the mobile phone
at home
geolocation
 As usual, different ways of doing this
 • blackberry.location on FW >=4.1 <=5
 • Google gears geolocation api (deprecated)
 • New standard: W3C Geolocation API
There’s a nice open source geo location
  framework for mobile that supports iPhone,
  gears, old and new blackberries, nokia web
  runtime etc.: geo-location-javascript
Geolocation sample: HTML Head content
Geolocation sample: JS Header
Geolocation sample: callbacks
Geolocation sample: onload
Geolocation




       You can try with your smartphone
       later when you’re outside and can
       get a satellite fix:
       http://bit.ly/DDiveDemoGeo
forms
Some new HTML5 attributes helps a lot at making
  forms:
• more usable for the users
• faster and easier to develop
Mobile browser are ahead of desktop browser and
  already implemented these attributes

Take a typical,
  boring, form
Forms autofocus & placeholder
autofocus attribute will set the default focus on
  the field element
placeholder will set a text that disappear as
  soon as the field gets focus (just like the
  search box in your browser)
Forms type=email
Type=“email” for input fields
Forms date & time
type="date" min="1900-   type="time"
  01-01" max="1999-12-
  31“
Form numbers & range
• type="number"      • type="range" min="1"
                       max="5" step="1"
Work offline
Set a manifest attribute in your html tag pointing to
  the cache manifest file
  <html manifest="manifest.mf">
All resouces (scripts, css, images, html files etc.) needs
  to be into the manifest
Cache manifest allow your browser to know where
  wich resouces will need to be in the “AppCache”
  and be avalible in case of no connectivity
Your application can control the “AppCache” with the
  window.applicationCache object
Work offline: manifest file
Content-type: text/cache-manifest
First line: CACHE MANIFEST
One resource per row, separated in sections:

In NETWORK: list resources that must not be cached

In CACHE: list resources that must be cached

In FALLBACK: section list on each row an url pattern and an url
   to a resource that will be served if the matching pattern is
   not available (“/” matches everything)
widgets
An application developed with web
   technologies (html, css, javascript) that can
   be installed as a native application on the
   device and works online & offline.
Still an evolving area, with a W3C candidate
   reccomandation
   http://www.w3.org/TR/widgets/
It mostly involves an xml configuration file and
   a package format (ie .zip) for the resources
widgets
Widgets also usually offer some kind of
 persistent storage, like html5 storage or
 google gears
Widgets can get access to system features not
 available from web apps (exposed as
 javascript objects) ie filesystem, battery,
 signal, camera and native agenda, messaging
 and calendar services
widgets
Anyway, there’s a lot of fragmentation and still
 no adopted standard:
Nokia WRT, BlackBerry Widget SDK, Opera
 Widget Manager, Vodafone & Verizion JIL
 all are similar but all are different!
Questions?
Resources
As the mobile OS market fragments,
                 mobile browsers are consolidating
                            Modern Mobile Browsers
                                                               Engine             HTML5
Mobile Safari                                        Webkit                Yes
Android                                              Webkit                Yes
Blackberry 6 Browser                                 Webkit                Yes
Symbian^3                                            Webkit                Yes
MeeGo                                                Webkit (Chromium)     Yes
Internet Explorer                                    Internet Explorer 7   No
WebOS Browser                                        Webkit                Yes
Bada OS Browser                                      Webkit                Yes?
Opera Mobile                                         Opera Presto 2.2      Yes
Opera Mini                                           Opera Presto 2.2      Yes
Fennec                                               Firefox               Yes
Myriad (former Openwave)                             Webkit                No
BOLT browser                                         Webkit                ?


• http://radar.oreilly.com/2010/05/mobile-operating-systems-and-b.html
Mobile data traffic surpasses voice
•   http://www.ericsson.com/th
    ecompany/press/releases/20
    10/03/1396928
•   http://www.tgdaily.com/mo
    bility-brief/49044-mobile-
    data-surpasses-voice-traffic
•   http://gigaom.com/2010/03
    /24/mobile-milestone-data-
    surpasses-voice-traffic/
•   http://gigaom.com/2010/02
    /09/cisco-the-
    mobilpocalypse-is-coming/
•   http://www.cisco.com/en/U
    S/solutions/collateral/ns341
    /ns525/ns537/ns705/ns827/
    white_paper_c11-
    520862.html
Mobile cache file sizes
• http://www.stevesouders.com/blog/2010/0
  7/12/mobile-cache-file-sizes/

More Related Content

What's hot

WebRTC and Web Design
WebRTC and Web DesignWebRTC and Web Design
WebRTC and Web Design
Christina Inge
 
HTML5 and the Mobile Web
HTML5 and the Mobile WebHTML5 and the Mobile Web
HTML5 and the Mobile Web
MrJ1971
 
Introduction of Mobile applications
Introduction of Mobile applicationsIntroduction of Mobile applications
Introduction of Mobile applications
Akib B. Momin
 
Exploring the physical web
Exploring the physical webExploring the physical web
Exploring the physical web
yiibu
 
The Mobile Ecosystem
The Mobile EcosystemThe Mobile Ecosystem
The Mobile Ecosystem
Ivano Malavolta
 
Building Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGapBuilding Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGap
Simon MacDonald
 
Html5 investigation
Html5 investigationHtml5 investigation
Html5 investigation
oppokui
 
Overview of IBM Mobility Portfolio
Overview of IBM Mobility PortfolioOverview of IBM Mobility Portfolio
Overview of IBM Mobility Portfolio
IQVIA
 
The Phonegap Architecture
The Phonegap ArchitectureThe Phonegap Architecture
The Phonegap Architecture
Frank Gielen
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Apperian
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
davyjones
 
Usability In Mobile Applications
Usability In Mobile ApplicationsUsability In Mobile Applications
Usability In Mobile Applications
Bruno Figueiredo
 
Mobile applications chapter 4
Mobile applications chapter 4Mobile applications chapter 4
Mobile applications chapter 4
Akib B. Momin
 
Fixing the mobile web - Internet World Romania
Fixing the mobile web - Internet World RomaniaFixing the mobile web - Internet World Romania
Fixing the mobile web - Internet World Romania
Christian Heilmann
 
Michael Hoffmann zu Mobility
Michael Hoffmann zu MobilityMichael Hoffmann zu Mobility
Michael Hoffmann zu Mobility
IBM Lotus
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and Why
DMI
 
Native vs Hybrid vs Web
Native vs Hybrid vs WebNative vs Hybrid vs Web
Native vs Hybrid vs Web
Ruckit
 
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Simon Guest
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Nick Landry
 
Dnx Mobile Marketing Golden Rules
Dnx Mobile Marketing Golden RulesDnx Mobile Marketing Golden Rules
Dnx Mobile Marketing Golden Rules
Adam Troman
 

What's hot (20)

WebRTC and Web Design
WebRTC and Web DesignWebRTC and Web Design
WebRTC and Web Design
 
HTML5 and the Mobile Web
HTML5 and the Mobile WebHTML5 and the Mobile Web
HTML5 and the Mobile Web
 
Introduction of Mobile applications
Introduction of Mobile applicationsIntroduction of Mobile applications
Introduction of Mobile applications
 
Exploring the physical web
Exploring the physical webExploring the physical web
Exploring the physical web
 
The Mobile Ecosystem
The Mobile EcosystemThe Mobile Ecosystem
The Mobile Ecosystem
 
Building Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGapBuilding Native Mobile Applications with PhoneGap
Building Native Mobile Applications with PhoneGap
 
Html5 investigation
Html5 investigationHtml5 investigation
Html5 investigation
 
Overview of IBM Mobility Portfolio
Overview of IBM Mobility PortfolioOverview of IBM Mobility Portfolio
Overview of IBM Mobility Portfolio
 
The Phonegap Architecture
The Phonegap ArchitectureThe Phonegap Architecture
The Phonegap Architecture
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
 
Usability In Mobile Applications
Usability In Mobile ApplicationsUsability In Mobile Applications
Usability In Mobile Applications
 
Mobile applications chapter 4
Mobile applications chapter 4Mobile applications chapter 4
Mobile applications chapter 4
 
Fixing the mobile web - Internet World Romania
Fixing the mobile web - Internet World RomaniaFixing the mobile web - Internet World Romania
Fixing the mobile web - Internet World Romania
 
Michael Hoffmann zu Mobility
Michael Hoffmann zu MobilityMichael Hoffmann zu Mobility
Michael Hoffmann zu Mobility
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and Why
 
Native vs Hybrid vs Web
Native vs Hybrid vs WebNative vs Hybrid vs Web
Native vs Hybrid vs Web
 
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
 
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGapBuilding Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
Building Mobile Cross-Platform Apps with HTML5, jQuery Mobile & PhoneGap
 
Dnx Mobile Marketing Golden Rules
Dnx Mobile Marketing Golden RulesDnx Mobile Marketing Golden Rules
Dnx Mobile Marketing Golden Rules
 

Similar to DDive- Giuseppe Grasso - mobile su Lotus

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
Peter-Paul Koch
 
Samsung
SamsungSamsung
Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010
Tom Deryckere
 
Open Source to the Rescue of Mobile App and Mobile Web Fragmentation
Open Source to the Rescue of Mobile App and Mobile Web FragmentationOpen Source to the Rescue of Mobile App and Mobile Web Fragmentation
Open Source to the Rescue of Mobile App and Mobile Web Fragmentation
Tom Deryckere
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile App
St. Petersburg College
 
Mobile Web High Performance
Mobile Web High PerformanceMobile Web High Performance
Mobile Web High Performance
Amjad Rafique
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
Reto Meier
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
davyjones
 
IBM Lotus Mobile Strategy
IBM Lotus Mobile StrategyIBM Lotus Mobile Strategy
IBM Lotus Mobile Strategy
Dvir Reznik
 
Best practices for delivering quality web experiences
Best practices for delivering quality web experiencesBest practices for delivering quality web experiences
Best practices for delivering quality web experiences
Ben Mantooth
 
chapter2
chapter2chapter2
chapter2
Pon Tovave
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
Nathan Smith
 
IBM Mobile portal experience
IBM Mobile portal experienceIBM Mobile portal experience
IBM Mobile portal experience
Vincent Perrin
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with Joomla
Tom Deryckere
 
Mobile Web
Mobile WebMobile Web
Mobile Web
Ankit Maheshwari
 
Mobile browser testing v1.0
Mobile browser testing v1.0Mobile browser testing v1.0
Mobile browser testing v1.0
Ravindran Antonysamy
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
Chris Morrell
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonny
Lama K Banna
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .net
Chris Love
 

Similar to DDive- Giuseppe Grasso - mobile su Lotus (20)

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
 
Samsung
SamsungSamsung
Samsung
 
Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010
 
Open Source to the Rescue of Mobile App and Mobile Web Fragmentation
Open Source to the Rescue of Mobile App and Mobile Web FragmentationOpen Source to the Rescue of Mobile App and Mobile Web Fragmentation
Open Source to the Rescue of Mobile App and Mobile Web Fragmentation
 
Best Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile AppBest Practices in Mobile Development: Building Your First jQuery Mobile App
Best Practices in Mobile Development: Building Your First jQuery Mobile App
 
Mobile Web High Performance
Mobile Web High PerformanceMobile Web High Performance
Mobile Web High Performance
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
IBM Lotus Mobile Strategy
IBM Lotus Mobile StrategyIBM Lotus Mobile Strategy
IBM Lotus Mobile Strategy
 
Best practices for delivering quality web experiences
Best practices for delivering quality web experiencesBest practices for delivering quality web experiences
Best practices for delivering quality web experiences
 
chapter2
chapter2chapter2
chapter2
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
IBM Mobile portal experience
IBM Mobile portal experienceIBM Mobile portal experience
IBM Mobile portal experience
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
Building Mobile Websites with Joomla
Building Mobile Websites with JoomlaBuilding Mobile Websites with Joomla
Building Mobile Websites with Joomla
 
Mobile Web
Mobile WebMobile Web
Mobile Web
 
Mobile browser testing v1.0
Mobile browser testing v1.0Mobile browser testing v1.0
Mobile browser testing v1.0
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonny
 
I like i phone and android but know .net
I like i phone and android but know .netI like i phone and android but know .net
I like i phone and android but know .net
 

More from Dominopoint - Italian Lotus User Group

TOTP - Time-Based One Time password in Domino
TOTP - Time-Based One Time password in DominoTOTP - Time-Based One Time password in Domino
TOTP - Time-Based One Time password in Domino
Dominopoint - Italian Lotus User Group
 
Domino Backup V12 - Un nuovo Task
Domino Backup V12 - Un nuovo TaskDomino Backup V12 - Un nuovo Task
Domino Backup V12 - Un nuovo Task
Dominopoint - Italian Lotus User Group
 
Mail Client from Traveler to Verse On-Premises
Mail Client from Traveler to Verse On-PremisesMail Client from Traveler to Verse On-Premises
Mail Client from Traveler to Verse On-Premises
Dominopoint - Italian Lotus User Group
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
Dominopoint - Italian Lotus User Group
 
Microsoft Outlook for Domino (IMSMO)
Microsoft Outlook for Domino (IMSMO)Microsoft Outlook for Domino (IMSMO)
Microsoft Outlook for Domino (IMSMO)
Dominopoint - Italian Lotus User Group
 
Riding the Enterprise Integration train
Riding the Enterprise Integration trainRiding the Enterprise Integration train
Riding the Enterprise Integration train
Dominopoint - Italian Lotus User Group
 
Ortocloud l'applicazione per fare orto su Bluemix
Ortocloud l'applicazione per fare orto su BluemixOrtocloud l'applicazione per fare orto su Bluemix
Ortocloud l'applicazione per fare orto su Bluemix
Dominopoint - Italian Lotus User Group
 
Meetit16 KeyNote di Apertura
Meetit16 KeyNote di AperturaMeetit16 KeyNote di Apertura
Meetit16 KeyNote di Apertura
Dominopoint - Italian Lotus User Group
 
IBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with AngularjsIBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with Angularjs
Dominopoint - Italian Lotus User Group
 
IBM Connections How to use existing data to increase adoption success with IB...
IBM Connections How to use existing data to increase adoption success with IB...IBM Connections How to use existing data to increase adoption success with IB...
IBM Connections How to use existing data to increase adoption success with IB...
Dominopoint - Italian Lotus User Group
 
Cloudant e XPages
Cloudant e XPagesCloudant e XPages
IBM Bluemix
IBM BluemixIBM Bluemix
IBM Connections 10 things every user should know
IBM Connections 10 things every user should knowIBM Connections 10 things every user should know
IBM Connections 10 things every user should know
Dominopoint - Italian Lotus User Group
 
IBM Verse New Way To Work
IBM Verse New Way To WorkIBM Verse New Way To Work
IBM Verse New Way To Work
Dominopoint - Italian Lotus User Group
 
Crossware MailSignature
Crossware MailSignatureCrossware MailSignature
Cooperteam soluzioni
Cooperteam soluzioniCooperteam soluzioni
Notes and Domino Roadmap
Notes and Domino RoadmapNotes and Domino Roadmap
Notes and Domino Roadmap
Dominopoint - Italian Lotus User Group
 
La Collaborazione Europea
La Collaborazione EuropeaLa Collaborazione Europea
La Collaborazione Europea
Dominopoint - Italian Lotus User Group
 
the future of work
the future of workthe future of work
Dominopoint meet the experts 2015 - XPages
Dominopoint   meet the experts 2015 - XPagesDominopoint   meet the experts 2015 - XPages
Dominopoint meet the experts 2015 - XPages
Dominopoint - Italian Lotus User Group
 

More from Dominopoint - Italian Lotus User Group (20)

TOTP - Time-Based One Time password in Domino
TOTP - Time-Based One Time password in DominoTOTP - Time-Based One Time password in Domino
TOTP - Time-Based One Time password in Domino
 
Domino Backup V12 - Un nuovo Task
Domino Backup V12 - Un nuovo TaskDomino Backup V12 - Un nuovo Task
Domino Backup V12 - Un nuovo Task
 
Mail Client from Traveler to Verse On-Premises
Mail Client from Traveler to Verse On-PremisesMail Client from Traveler to Verse On-Premises
Mail Client from Traveler to Verse On-Premises
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
 
Microsoft Outlook for Domino (IMSMO)
Microsoft Outlook for Domino (IMSMO)Microsoft Outlook for Domino (IMSMO)
Microsoft Outlook for Domino (IMSMO)
 
Riding the Enterprise Integration train
Riding the Enterprise Integration trainRiding the Enterprise Integration train
Riding the Enterprise Integration train
 
Ortocloud l'applicazione per fare orto su Bluemix
Ortocloud l'applicazione per fare orto su BluemixOrtocloud l'applicazione per fare orto su Bluemix
Ortocloud l'applicazione per fare orto su Bluemix
 
Meetit16 KeyNote di Apertura
Meetit16 KeyNote di AperturaMeetit16 KeyNote di Apertura
Meetit16 KeyNote di Apertura
 
IBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with AngularjsIBM Domino Modernizing apps with Angularjs
IBM Domino Modernizing apps with Angularjs
 
IBM Connections How to use existing data to increase adoption success with IB...
IBM Connections How to use existing data to increase adoption success with IB...IBM Connections How to use existing data to increase adoption success with IB...
IBM Connections How to use existing data to increase adoption success with IB...
 
Cloudant e XPages
Cloudant e XPagesCloudant e XPages
Cloudant e XPages
 
IBM Bluemix
IBM BluemixIBM Bluemix
IBM Bluemix
 
IBM Connections 10 things every user should know
IBM Connections 10 things every user should knowIBM Connections 10 things every user should know
IBM Connections 10 things every user should know
 
IBM Verse New Way To Work
IBM Verse New Way To WorkIBM Verse New Way To Work
IBM Verse New Way To Work
 
Crossware MailSignature
Crossware MailSignatureCrossware MailSignature
Crossware MailSignature
 
Cooperteam soluzioni
Cooperteam soluzioniCooperteam soluzioni
Cooperteam soluzioni
 
Notes and Domino Roadmap
Notes and Domino RoadmapNotes and Domino Roadmap
Notes and Domino Roadmap
 
La Collaborazione Europea
La Collaborazione EuropeaLa Collaborazione Europea
La Collaborazione Europea
 
the future of work
the future of workthe future of work
the future of work
 
Dominopoint meet the experts 2015 - XPages
Dominopoint   meet the experts 2015 - XPagesDominopoint   meet the experts 2015 - XPages
Dominopoint meet the experts 2015 - XPages
 

DDive- Giuseppe Grasso - mobile su Lotus

  • 2.
  • 3. Agenda • Part A - Lotus on mobile • Part B - Cool things you can do on mobile devices – Geolocation – Working Offline – Forms
  • 5. A long experience on “pervasive devices” That’s way we have this flag on design elements 2008 around 2001 1997
  • 6. Lotus Traveler • Bring push email on any major device: Nokia Symbian, Windows Mobile, Apple iPhone, iPod & iPad Android is coming… (q4 2010) get into the beta
  • 7. Lotus Sametime Native clients for Browser based client for • Blackberry • Apple iPhone, iPod • Nokia E series • windows mobile • Sony Ericsson – M600, P990i, P1i
  • 8. Lotus Quickr • SnappFiles for iPhone, iPod Touch (and soon, iPad) • BlackBerry Client for IBM Lotus Quickr • Accessing Lotus Quickr From Google Android (lotus quickr wiki article with app source)
  • 9. Lotus Connections • BlackBerry Client for IBM Lotus Connections • Web client for iPhone, iPhone 3G(S), iPod Touch, and Nokia S60 3rd & 5th edition devices • https://greenhouse.lotus.com/mobile/
  • 10. Lotus Mobile Wiki • Avaliable now
  • 11. Mobile Portal Accelerator • http://lotus2010.com
  • 12. Lotus on mobile: other third parties
  • 13. Other third party tools: MartinScott WirelessMail: pure domino mail push solution for blackberry, iphone, windows mobile, palm treo: no BES, no Traveler, only your domino server Just go and ask Jamie Mcgee!!
  • 14. Other third party tools: commontime mNotes, mForms, mSuite, mDesign Studio… Mail Applications & device managment
  • 15. Other third party tools: Teamstudio Teamstudio Unplugged: an eclipse designer plugin that enable you to translates Notes applications into native blackberry apps with offline support
  • 16. Now for the developers part
  • 17. But first… Some basics to keep in mind: • Mobile users can be with limited or no data connectivity (no plan, roaming, no coverage) and little bandwidth • Do not overload the cpu, a charged battery makes an happy user! • Ergonomics and usage patterns are way different from desktop
  • 18. Basic markup you need to know • Tell the device you’re a friend: <meta name="HandheldFriendly" content="True" /> • Avoid viewport zoom <meta name="viewport" content="width=device- width,minimum-scale=1.0,maximum-scale=1.0"/> or <meta name="viewport" content="width=device-width,initial- scale=1.0,user-scalable=no"/>
  • 19. Cool things you can do on mobile devices
  • 20. Detect mobile devices • No simple answer • Using http headers • Css media query
  • 21. WURFL Wireless Universal Resource File: An opensource database/xml-file of mobile user-agent(s) Helps you indentify mobile devices And more important Wurfl is made in Italy by Mobile devices features and capabilities Passani Luca • Open source: http://wurfl.sourceforge.net/ • Lotus Notes version by Jason Hook http://weblog.jasonhookonline.com/jho/blog.nsf/d 6plinks/JHOK-7MJCPB
  • 22. WURFL • Open source: http://wurfl.sourceforge.net/ • Lotus Notes version by Jason Hook http://weblog.jasonhookonline.com/jho/blo g.nsf/d6plinks/JHOK-7MJCPB • I’ve made some updates to Jason database and you’ll find my version on DDive DVD
  • 24. WURFL device info You can try with your smartphone right now: http://bit.ly/DDiveDemoMDInfo
  • 25. WURFL why bother? If we know the device features, we can adapt and send resouces or features of the right size or kind to the right devices
  • 26. Other http headers of interest HTTP headers sent by mobile devices but not by desktop browser: • x-wap-profile: links to UAProfile (standard by Open Mobile Alliance) • X-OperaMini-Features: set by opera mini browser, gives CSV of phone features We can use this http headers to “guess” that a device is mobile
  • 27. User-agent x-wap-profile & x-operamini-features Look for: • Common mobile patterns in user-agent • Data in x-wap-profile or x-operamini-features You can try with your smartphone right now: http://bit.ly/DDiveDemoMID
  • 28. CSS media queries @media handheld { ... } @media only screen and (max-device-width: 700px) { ... } @media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) { ... } • Brillant implementation at lessframework.com
  • 29. CSS media queries • Media queries poor's man implementation on dominopoint.it: • With a screen width of less then 700px, we show a prominent link to the mobile version: @media screen { .mobile { display:none; }} @media handheld { .mobile { display:block; }} @media (max-width:700px) { .mobile { display:block; } }
  • 30. geolocation Three way: 1. IP Based: I know where your gateway is (or I can use a service like ipinfodb.com) 2. Based on Gps, wifi (kown position of nearby access points) or cell tower (triangulation) 3. Ask the user
  • 31. Geolocation: phone triangulation Your phone is always connected with more than one tower and talk with the network about signal strenght (as in distance from the towers) if you're on the run from authorities You Are here is better to leave the mobile phone at home
  • 32. geolocation As usual, different ways of doing this • blackberry.location on FW >=4.1 <=5 • Google gears geolocation api (deprecated) • New standard: W3C Geolocation API There’s a nice open source geo location framework for mobile that supports iPhone, gears, old and new blackberries, nokia web runtime etc.: geo-location-javascript
  • 33. Geolocation sample: HTML Head content
  • 37. Geolocation You can try with your smartphone later when you’re outside and can get a satellite fix: http://bit.ly/DDiveDemoGeo
  • 38. forms Some new HTML5 attributes helps a lot at making forms: • more usable for the users • faster and easier to develop Mobile browser are ahead of desktop browser and already implemented these attributes Take a typical, boring, form
  • 39. Forms autofocus & placeholder autofocus attribute will set the default focus on the field element placeholder will set a text that disappear as soon as the field gets focus (just like the search box in your browser)
  • 41. Forms date & time type="date" min="1900- type="time" 01-01" max="1999-12- 31“
  • 42. Form numbers & range • type="number" • type="range" min="1" max="5" step="1"
  • 43. Work offline Set a manifest attribute in your html tag pointing to the cache manifest file <html manifest="manifest.mf"> All resouces (scripts, css, images, html files etc.) needs to be into the manifest Cache manifest allow your browser to know where wich resouces will need to be in the “AppCache” and be avalible in case of no connectivity Your application can control the “AppCache” with the window.applicationCache object
  • 44. Work offline: manifest file Content-type: text/cache-manifest First line: CACHE MANIFEST One resource per row, separated in sections: In NETWORK: list resources that must not be cached In CACHE: list resources that must be cached In FALLBACK: section list on each row an url pattern and an url to a resource that will be served if the matching pattern is not available (“/” matches everything)
  • 45. widgets An application developed with web technologies (html, css, javascript) that can be installed as a native application on the device and works online & offline. Still an evolving area, with a W3C candidate reccomandation http://www.w3.org/TR/widgets/ It mostly involves an xml configuration file and a package format (ie .zip) for the resources
  • 46. widgets Widgets also usually offer some kind of persistent storage, like html5 storage or google gears Widgets can get access to system features not available from web apps (exposed as javascript objects) ie filesystem, battery, signal, camera and native agenda, messaging and calendar services
  • 47. widgets Anyway, there’s a lot of fragmentation and still no adopted standard: Nokia WRT, BlackBerry Widget SDK, Opera Widget Manager, Vodafone & Verizion JIL all are similar but all are different!
  • 50. As the mobile OS market fragments, mobile browsers are consolidating Modern Mobile Browsers Engine HTML5 Mobile Safari Webkit Yes Android Webkit Yes Blackberry 6 Browser Webkit Yes Symbian^3 Webkit Yes MeeGo Webkit (Chromium) Yes Internet Explorer Internet Explorer 7 No WebOS Browser Webkit Yes Bada OS Browser Webkit Yes? Opera Mobile Opera Presto 2.2 Yes Opera Mini Opera Presto 2.2 Yes Fennec Firefox Yes Myriad (former Openwave) Webkit No BOLT browser Webkit ? • http://radar.oreilly.com/2010/05/mobile-operating-systems-and-b.html
  • 51. Mobile data traffic surpasses voice • http://www.ericsson.com/th ecompany/press/releases/20 10/03/1396928 • http://www.tgdaily.com/mo bility-brief/49044-mobile- data-surpasses-voice-traffic • http://gigaom.com/2010/03 /24/mobile-milestone-data- surpasses-voice-traffic/ • http://gigaom.com/2010/02 /09/cisco-the- mobilpocalypse-is-coming/ • http://www.cisco.com/en/U S/solutions/collateral/ns341 /ns525/ns537/ns705/ns827/ white_paper_c11- 520862.html
  • 52. Mobile cache file sizes • http://www.stevesouders.com/blog/2010/0 7/12/mobile-cache-file-sizes/