SlideShare une entreprise Scribd logo
1  sur  29
Télécharger pour lire hors ligne
Getting Started with Mobile
Development
Who are we?
  Matt White
–  Domino web developer since 1996
–  XPages developer since 2008
–  Consultant with London Developer Co-op
  Rich Sharpe
–  Developer/Manager since 1998
–  Originally Java, More recently focused on
mobile web development using XPages
–  Worked on Mobile Apps/Architecture on
and off since 2000

2
What’s the point of Wireless
Wednesdays?
  Mobile is coming fast
–  Web or native
  We want to talk about the options from the point of view of
the Domino developer
–  What frameworks can we use?
–  What are the pros and cons of different frameworks
  Talk about mobile development in more detail
–  Based on our “real world” experience
–  Learn from our mistakes!
3
What will we be covering?
  January / February
–  At IBM Connect, Rich and Matt will be presenting a session
about the Unplugged Mobile Controls.
–  BP201- Tuesday 28th January - 3pm
  March
–  Deep dive into Dojo Mobile Controls
  April
–  Deep dive into jQuery Mobile
  May
–  Deep dive into Unplugged Mobile Controls

4
Agenda
1 Why mobilize your application?
2 Mobile development options for Domino developers
3 The basics of mobile app performance tuning
4 6 tips for a successful mobile business app

5
Why mobilize your application?
  Increased user base
–  Often users use their mobile device before their PC
–  Users aren’t tied to the office
  Extend the life of your application
–  A chance to re-invigorate your application
–  If it can be used in more places will it get more use?
  Extend the potential uses for your application
–  Offline mobile support?

6
Why mobilize your application?
  Your application will be
competing with 1m apps from
the app store
  If you do mobilize your
application you must…
–  Make it easy to use
–  Pay significant attention to
user interface design

7
Mobile development options for
Domino developers
  Dojo Mobile Controls
–  Ships with Domino
  jQuery Mobile
–  The populist choice
  Other popular options:
–  Sencha Touch
–  Kendo UI
  Unplugged Controls
–  The mystery third option 
8
Dojo Mobile Controls
  Integrated into XPages
  Started out as an OpenNTF project in 2010
  Fed back into the main Domino product in 8.5.3
–  as part of the Extension Library
–  or via Upgrade Pack 1
  Supported by IBM and no extra install required
–  In 9.0.1 we use Dojo 1.8.3
  Tries to provide a “native” UI for each mobile device
9
Dojo Mobile Controls

10
Dojo Mobile Controls
  Built into Domino
–  no approvals or installation required so your admins are
happy!
–  Very little coding required, just drag and drop controls
  Very quick to develop a basic application
  Is being worked on actively by both IBM and Dojo

11
Dojo Mobile Controls
  Poor user experience on tablets
–  Targeting phones and tablets can be quite challenging to get
a nice looking result
  iOS UI is still iOS 6
–  Though you can style this yourself
  Gets much more difficult quite quickly
–  If you want to support editing
–  If you go below 3 levels of breadcrumb history
  Performance not the best
12
jQuery Mobile
  One of the most popular mobile web frameworks
  Very simple to change theme to match your corporate style
  Creating more complex applications is easier than Dojo
Mobile Controls
–  It’s more like creating a multi page XPages application

13
jQuery Mobile

14
jQuery Mobile
  You get the choice of single page app (like Dojo Mobile
Controls) or to load full pages for complex functions
–  Single page app == speed
–  Multi page app == complexity
  Can be used in Mobile Web or offline with Teamstudio
Unplugged
  Huge developer community so lots of resources, plugins etc
  Very easy to pick up and get started with

15
jQuery Mobile
  Potentially slow performance over 3g networks
–  860kb for jQuery Mobile vs 150k for Dojo for same page
functionality
  Very JavaScript heavy, every element needs to be processed
once downloaded
–  For older phones this slows things down
–  Becoming less of an issue with iPhone 5S for example
  Harder to integrate into Domino from v1.3 and later
–  http://notesin9.com/index.php/2013/04/20/jquery-mobileseems-incompatible-with-xpages-in-domino-9-0/
16
Unplugged Controls
  Created by us specifically for XPages developers
  A suite of 18 Custom Controls which allow you to quickly
create a simple application
–  And also allow the creation of more complex apps as well
  Easy to change the UI using our Restyler website
–  http://restyler.teamstudio.com
  Under active development for XPages developers
  Designed to work well with tablets and phones

17
Unplugged Controls

18
Unplugged Controls
  We’re aiming to offer the best of both Dojo Mobile Controls
and jQuery Mobile worlds
–  Easy to create XPages applications of both simple and
complex varieties
–  Easy to change UI
–  Performs well
–  High quality tablet and phone user experience
–  Easy to add offline capability
•  With Teamstudio Unplugged
19
Unplugged Controls
  Framework has to be added manually to Domino Designer
  Small development team and community compared to other
frameworks
  At the moment requires use of XPages rather than other
more modern server technologies

20
Mobile App Performance Tuning
  Best solution for good performance is good design
  Know your audience
–  Which devices
•  Phones or tablets / iOS or Android / both or all?
–  Which use cases
•  Online or offline?
  Know your application
–  Identify key features
–  Reduce screen sizes
–  Progressive disclosure

21
Mobile App Performance Tuning
  Make a decision about the balance between initial page load
times and in app performance
  If you can load a page via Ajax do it
–  Even if it’s not faster you can provide feedback to the user
  Optimize your code
–  Minify JS and CSS
–  Do you really need to use graphics?
•  Maybe use font icons instead?
–  We use Font Awesome in Unplugged Controls
  Write good code!
–  Code reviews are a wonderful (if scary) thing

22
Mobile App Performance Tuning
  Understand from the outset what your targets are:
–  Page load times need specifics
•  Which device(s)
–  Latest iOS devices are significantly faster than even the
previous generation
•  Amount of data
–  For initial page load vs. subsequent pages
•  Network conditions
–  Wi-Fi vs. 3G or 4G
–  Network Latency

23
6 tips for a successful mobile app
  Developing applications for mobile users is a different
experience for us as developers than with the desktop which
we’re used to, so here are some tips we have picked up…
1.  Be selective in project scope
Pick the most important functions of your application to
mobilize. Not everything is needed by people away from
their desktop
2.  Less is more
Screens on mobile devices are smaller than the desktop,
reduce the amount of data you expect users to input to the
base minimum

24
6 tips for a successful mobile app
3.  Imitation is the sincerest form of flattery
Your users all use other mobile apps on a daily basis. Don’t
try to reinvent the wheel. Make use of common design
patterns.
4.  Get a second opinion
We’re developers not designers (well most of us). Design is
a skill and it’s worth getting an expert in to help with your
UI.

25
6 tips for a successful mobile app
5.  Keep ‘em separated
Mobile and desktop are not the same. Generally you will
want to implement different interfaces for each one.
Merged designs will be compromised on one or both
environments.
6.  Ask, Listen, Edit, Repeat
Make sure your users are involved from day 1 of the
project, it will give them ownership but also head off any
last minute “could you just…” moments
26
Further Resources
  Dojo Mobile Controls
–  http://dojotoolkit.org/features/mobile
  jQuery Mobile
–  http://jquerymobile.com
  Unplugged Controls
–  http://unplugged.openntf.org
–  http://restyler.teamstudio.com

27
IBM Connect Sessions
  BP201 - Creating a Mobile Application Framework with XPages
–  Tuesday 28th Jan 3pm
–  If you create a lot of mobile web applications, you may notice other
frameworks such as JQuery Mobile and the XPages Mobile Controls just don't
do exactly what you need. So we created our own, specifically designed for
XPages. In this session you'll learn about the open source framework that's
been have created. We'll show how it allows you to quickly drag and drop
standard custom controls into an XPage to create a mobile application. We'll
also talk about the process of creating an open source project and future plans.
  BOF - Creating an Unplugged Controls Virtual User Group
–  Please come along!

28
29

Contenu connexe

Tendances

Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...Bala Subra
 
Mobile product - "Build great apps!" at ProductTank Paris #17
Mobile product - "Build great apps!" at ProductTank Paris #17Mobile product - "Build great apps!" at ProductTank Paris #17
Mobile product - "Build great apps!" at ProductTank Paris #17Alexandre Jubien
 
Mobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersMobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersJohn Jardin
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting SmallAndrew Smith
 
The Fine Print of iOS Development
The Fine Print of iOS DevelopmentThe Fine Print of iOS Development
The Fine Print of iOS DevelopmentCory Wiles
 
Day: 1 Introduction to Mobile Application Development (in Android)
Day: 1 Introduction to Mobile Application Development (in Android)Day: 1 Introduction to Mobile Application Development (in Android)
Day: 1 Introduction to Mobile Application Development (in Android)Ahsanul Karim
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5Muhamad Arief
 
Appcelerator mobile. the doppelgänger to XPages
Appcelerator mobile. the doppelgänger to XPagesAppcelerator mobile. the doppelgänger to XPages
Appcelerator mobile. the doppelgänger to XPagesJohn Jardin
 
Planning your Dream Mobile App
Planning your Dream Mobile AppPlanning your Dream Mobile App
Planning your Dream Mobile AppSean Katz
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioEmily Chong
 
App Development Smart Guide
App Development Smart GuideApp Development Smart Guide
App Development Smart GuideEmma Mitchell
 
A smart guide to app development
A smart guide to app developmentA smart guide to app development
A smart guide to app developmentEmma Mitchell
 
presentation vizzywig
presentation vizzywigpresentation vizzywig
presentation vizzywigSonimar Ortiz
 
Trip advsiorhybridpresentation
Trip advsiorhybridpresentationTrip advsiorhybridpresentation
Trip advsiorhybridpresentationElanaBoehm
 
Mobile applications chapter 2
Mobile applications chapter 2Mobile applications chapter 2
Mobile applications chapter 2Akib B. Momin
 
Journey to the center of the software industry world
Journey to the center of the software industry worldJourney to the center of the software industry world
Journey to the center of the software industry worldAmr Salah
 
The Internet is Dead, Long Live Mobile
The Internet is Dead,  Long Live MobileThe Internet is Dead,  Long Live Mobile
The Internet is Dead, Long Live MobileGlenn McKnight
 
Mobile Usability Evaluation
Mobile Usability EvaluationMobile Usability Evaluation
Mobile Usability EvaluationGarrett Stettler
 

Tendances (20)

"We want an APP!"
"We want an APP!""We want an APP!"
"We want an APP!"
 
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
 
Mobile product - "Build great apps!" at ProductTank Paris #17
Mobile product - "Build great apps!" at ProductTank Paris #17Mobile product - "Build great apps!" at ProductTank Paris #17
Mobile product - "Build great apps!" at ProductTank Paris #17
 
Mobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersMobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developers
 
Native Application Development Company
Native Application Development CompanyNative Application Development Company
Native Application Development Company
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting Small
 
The Fine Print of iOS Development
The Fine Print of iOS DevelopmentThe Fine Print of iOS Development
The Fine Print of iOS Development
 
Day: 1 Introduction to Mobile Application Development (in Android)
Day: 1 Introduction to Mobile Application Development (in Android)Day: 1 Introduction to Mobile Application Development (in Android)
Day: 1 Introduction to Mobile Application Development (in Android)
 
Nonintrusive semantic html5
Nonintrusive semantic html5Nonintrusive semantic html5
Nonintrusive semantic html5
 
Appcelerator mobile. the doppelgänger to XPages
Appcelerator mobile. the doppelgänger to XPagesAppcelerator mobile. the doppelgänger to XPages
Appcelerator mobile. the doppelgänger to XPages
 
Planning your Dream Mobile App
Planning your Dream Mobile AppPlanning your Dream Mobile App
Planning your Dream Mobile App
 
Designing Software With the User in Mind - Symbio
Designing Software With the User in Mind - SymbioDesigning Software With the User in Mind - Symbio
Designing Software With the User in Mind - Symbio
 
App Development Smart Guide
App Development Smart GuideApp Development Smart Guide
App Development Smart Guide
 
A smart guide to app development
A smart guide to app developmentA smart guide to app development
A smart guide to app development
 
presentation vizzywig
presentation vizzywigpresentation vizzywig
presentation vizzywig
 
Trip advsiorhybridpresentation
Trip advsiorhybridpresentationTrip advsiorhybridpresentation
Trip advsiorhybridpresentation
 
Mobile applications chapter 2
Mobile applications chapter 2Mobile applications chapter 2
Mobile applications chapter 2
 
Journey to the center of the software industry world
Journey to the center of the software industry worldJourney to the center of the software industry world
Journey to the center of the software industry world
 
The Internet is Dead, Long Live Mobile
The Internet is Dead,  Long Live MobileThe Internet is Dead,  Long Live Mobile
The Internet is Dead, Long Live Mobile
 
Mobile Usability Evaluation
Mobile Usability EvaluationMobile Usability Evaluation
Mobile Usability Evaluation
 

En vedette

Образование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, ЛондонОбразование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, ЛондонИННА ТУР
 
Hai un elefante rosa no salón
Hai un elefante rosa no salónHai un elefante rosa no salón
Hai un elefante rosa no salónmarcendon
 
Chocolate recipes
Chocolate recipesChocolate recipes
Chocolate recipesJessica161
 
Tarmo hankkeen esittely_valimaki
Tarmo hankkeen esittely_valimakiTarmo hankkeen esittely_valimaki
Tarmo hankkeen esittely_valimakiEmilia Olkanen
 
Manusia, keragaman, dan kesetaraan
Manusia, keragaman, dan kesetaraan Manusia, keragaman, dan kesetaraan
Manusia, keragaman, dan kesetaraan Vanny Febian
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorTeamstudio
 
160828 - The Gloucestershire Business Games 2017
160828 - The Gloucestershire Business Games 2017160828 - The Gloucestershire Business Games 2017
160828 - The Gloucestershire Business Games 2017Peter Allison
 
A situación de mulleres e homes na u vigo
A situación de mulleres e homes na u vigoA situación de mulleres e homes na u vigo
A situación de mulleres e homes na u vigomarcendon
 
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)UNIVERSIDAD DE LOS LLANOS
 
10 sneaky tips
10 sneaky tips10 sneaky tips
10 sneaky tipssales001
 

En vedette (17)

Образование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, ЛондонОбразование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, Лондон
 
Hai un elefante rosa no salón
Hai un elefante rosa no salónHai un elefante rosa no salón
Hai un elefante rosa no salón
 
Basic concepts in_matlab
Basic concepts in_matlabBasic concepts in_matlab
Basic concepts in_matlab
 
Chocolate recipes
Chocolate recipesChocolate recipes
Chocolate recipes
 
Tarmo hankkeen esittely_valimaki
Tarmo hankkeen esittely_valimakiTarmo hankkeen esittely_valimaki
Tarmo hankkeen esittely_valimaki
 
Giao an 3
Giao an   3Giao an   3
Giao an 3
 
Info1
Info1Info1
Info1
 
Manusia, keragaman, dan kesetaraan
Manusia, keragaman, dan kesetaraan Manusia, keragaman, dan kesetaraan
Manusia, keragaman, dan kesetaraan
 
Understand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage AuditorUnderstand the True Business Usage of Notes Applications with Usage Auditor
Understand the True Business Usage of Notes Applications with Usage Auditor
 
Jinal desai .net
Jinal desai .netJinal desai .net
Jinal desai .net
 
Mens wovens
Mens wovensMens wovens
Mens wovens
 
160828 - The Gloucestershire Business Games 2017
160828 - The Gloucestershire Business Games 2017160828 - The Gloucestershire Business Games 2017
160828 - The Gloucestershire Business Games 2017
 
A situación de mulleres e homes na u vigo
A situación de mulleres e homes na u vigoA situación de mulleres e homes na u vigo
A situación de mulleres e homes na u vigo
 
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)
Revolución Industrial, Mexicana, Comunismo, Capitulismo (Oligarquía)
 
Orbis
OrbisOrbis
Orbis
 
Cornfields trust
Cornfields trustCornfields trust
Cornfields trust
 
10 sneaky tips
10 sneaky tips10 sneaky tips
10 sneaky tips
 

Similaire à Wireless Wednesdays: Part 1

Wireless Wednesdays: Part 2
Wireless Wednesdays: Part 2Wireless Wednesdays: Part 2
Wireless Wednesdays: Part 2Teamstudio
 
Define & design apps for success en
Define & design apps for success enDefine & design apps for success en
Define & design apps for success enAcrmnet s.r.l.
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...Paul Della-Nebbia
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsMark Roden
 
Mobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarMobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarXBOSoft
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
Putting Mobile FirstPrecedent
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile FirstPrecedent
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMukteswar Patnaik
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learninggeoff stead
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...marjoramg
 
Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Teamstudio
 
Enough_Software_Guide_16thEdition_Web
Enough_Software_Guide_16thEdition_WebEnough_Software_Guide_16thEdition_Web
Enough_Software_Guide_16thEdition_WebMarco Tabor
 
Essential Skills Your Next App Development Company Must Have.pdf
Essential Skills Your Next App Development Company Must Have.pdfEssential Skills Your Next App Development Company Must Have.pdf
Essential Skills Your Next App Development Company Must Have.pdfQServices Inc.
 
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Shane Church
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Effective
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondTony McGuckin
 
Why Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptxWhy Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptxExpert App Devs
 

Similaire à Wireless Wednesdays: Part 1 (20)

Wireless Wednesdays: Part 2
Wireless Wednesdays: Part 2Wireless Wednesdays: Part 2
Wireless Wednesdays: Part 2
 
Define & design apps for success en
Define & design apps for success enDefine & design apps for success en
Define & design apps for success en
 
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...Get the Jump on Mobilizing your Notes and Domino Applications Today!  (JMP103...
Get the Jump on Mobilizing your Notes and Domino Applications Today! (JMP103...
 
Ibm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applicationsIbm worklight - going from xpages mobile to native mobile applications
Ibm worklight - going from xpages mobile to native mobile applications
 
Mobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft WebinarMobile Testing Challenges and Solutions XBOSoft Webinar
Mobile Testing Challenges and Solutions XBOSoft Webinar
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
Putting Mobile First
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile First
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
 
Tools and Techniques for mobile learning
Tools and Techniques for mobile learningTools and Techniques for mobile learning
Tools and Techniques for mobile learning
 
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
Connect 2014 AD209 - Making Your Development Team More Productive With IBM Do...
 
Web Applications: Dominance and Drawbacks
Web Applications: Dominance and DrawbacksWeb Applications: Dominance and Drawbacks
Web Applications: Dominance and Drawbacks
 
Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3Wireless Wednesdays: Part 3
Wireless Wednesdays: Part 3
 
[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh
 
Enough_Software_Guide_16thEdition_Web
Enough_Software_Guide_16thEdition_WebEnough_Software_Guide_16thEdition_Web
Enough_Software_Guide_16thEdition_Web
 
Essential Skills Your Next App Development Company Must Have.pdf
Essential Skills Your Next App Development Company Must Have.pdfEssential Skills Your Next App Development Company Must Have.pdf
Essential Skills Your Next App Development Company Must Have.pdf
 
Computer project work
Computer project workComputer project work
Computer project work
 
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?
 
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and BeyondAD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
AD503: XPages Mobile Development in IBM Domino 9.0.1 and Beyond
 
Why Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptxWhy Choose Flutter for IoT_.pptx
Why Choose Flutter for IoT_.pptx
 

Plus de Teamstudio

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingTeamstudio
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!Teamstudio
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerTeamstudio
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationTeamstudio
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8Teamstudio
 
Marty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyMarty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyTeamstudio
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapTeamstudio
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...Teamstudio
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Teamstudio
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityTeamstudio
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveTeamstudio
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APITeamstudio
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesTeamstudio
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPagesTeamstudio
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsTeamstudio
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages ExpertsTeamstudio
 
Everything XControls
Everything XControlsEverything XControls
Everything XControlsTeamstudio
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneTeamstudio
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternTeamstudio
 
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Teamstudio
 

Plus de Teamstudio (20)

Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or MigratingSearch Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
Search Terms and Design Complexity: A Tutorial Before Modernizing or Migrating
 
SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!SmartNSF - 100% Smart - and in Color!
SmartNSF - 100% Smart - and in Color!
 
Back from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good ServerBack from the Dead: When Bad Code Kills a Good Server
Back from the Dead: When Bad Code Kills a Good Server
 
Understand Usage with Detailed Access Information
Understand Usage with Detailed Access InformationUnderstand Usage with Detailed Access Information
Understand Usage with Detailed Access Information
 
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
IBM Presents the Notes Domino Roadmap and a Deep Dive into Feature Pack 8
 
Marty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth DimensionallyMarty, You're Just Not Thinking Fourth Dimensionally
Marty, You're Just Not Thinking Fourth Dimensionally
 
IBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino RoadmapIBM Presents the IBM Notes and Domino Roadmap
IBM Presents the IBM Notes and Domino Roadmap
 
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
XPages and jQuery DataTables: Simplifying View Creation while Maximizing Func...
 
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
Take a Trip Into the Forest: A Java Primer on Maps, Trees, and Collections
 
Expanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate UsabilityExpanding XPages with Bootstrap Plugins for Ultimate Usability
Expanding XPages with Bootstrap Plugins for Ultimate Usability
 
Optimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep DiveOptimus XPages Part 2: The Deep Dive
Optimus XPages Part 2: The Deep Dive
 
Getting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino APIGetting Started with the OpenNTF Domino API
Getting Started with the OpenNTF Domino API
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
 
Building Responsive Applications Using XPages
Building Responsive Applications Using XPagesBuilding Responsive Applications Using XPages
Building Responsive Applications Using XPages
 
Using Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino AppsUsing Cool New Frameworks in (Mobile) Domino Apps
Using Cool New Frameworks in (Mobile) Domino Apps
 
Ask the XPages Experts
Ask the XPages ExpertsAsk the XPages Experts
Ask the XPages Experts
 
Everything XControls
Everything XControlsEverything XControls
Everything XControls
 
Move Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast LaneMove Your XPages Applications to the Fast Lane
Move Your XPages Applications to the Fast Lane
 
An Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller PatternAn Introduction to the Model-View-Controller Pattern
An Introduction to the Model-View-Controller Pattern
 
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
Mobilisez vos Applications IBM Notes avec Teamstudio Unplugged ! (French Lang...
 

Dernier

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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
 
[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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Dernier (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 
[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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
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
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Wireless Wednesdays: Part 1

  • 1. Getting Started with Mobile Development
  • 2. Who are we?   Matt White –  Domino web developer since 1996 –  XPages developer since 2008 –  Consultant with London Developer Co-op   Rich Sharpe –  Developer/Manager since 1998 –  Originally Java, More recently focused on mobile web development using XPages –  Worked on Mobile Apps/Architecture on and off since 2000 2
  • 3. What’s the point of Wireless Wednesdays?   Mobile is coming fast –  Web or native   We want to talk about the options from the point of view of the Domino developer –  What frameworks can we use? –  What are the pros and cons of different frameworks   Talk about mobile development in more detail –  Based on our “real world” experience –  Learn from our mistakes! 3
  • 4. What will we be covering?   January / February –  At IBM Connect, Rich and Matt will be presenting a session about the Unplugged Mobile Controls. –  BP201- Tuesday 28th January - 3pm   March –  Deep dive into Dojo Mobile Controls   April –  Deep dive into jQuery Mobile   May –  Deep dive into Unplugged Mobile Controls 4
  • 5. Agenda 1 Why mobilize your application? 2 Mobile development options for Domino developers 3 The basics of mobile app performance tuning 4 6 tips for a successful mobile business app 5
  • 6. Why mobilize your application?   Increased user base –  Often users use their mobile device before their PC –  Users aren’t tied to the office   Extend the life of your application –  A chance to re-invigorate your application –  If it can be used in more places will it get more use?   Extend the potential uses for your application –  Offline mobile support? 6
  • 7. Why mobilize your application?   Your application will be competing with 1m apps from the app store   If you do mobilize your application you must… –  Make it easy to use –  Pay significant attention to user interface design 7
  • 8. Mobile development options for Domino developers   Dojo Mobile Controls –  Ships with Domino   jQuery Mobile –  The populist choice   Other popular options: –  Sencha Touch –  Kendo UI   Unplugged Controls –  The mystery third option  8
  • 9. Dojo Mobile Controls   Integrated into XPages   Started out as an OpenNTF project in 2010   Fed back into the main Domino product in 8.5.3 –  as part of the Extension Library –  or via Upgrade Pack 1   Supported by IBM and no extra install required –  In 9.0.1 we use Dojo 1.8.3   Tries to provide a “native” UI for each mobile device 9
  • 11. Dojo Mobile Controls   Built into Domino –  no approvals or installation required so your admins are happy! –  Very little coding required, just drag and drop controls   Very quick to develop a basic application   Is being worked on actively by both IBM and Dojo 11
  • 12. Dojo Mobile Controls   Poor user experience on tablets –  Targeting phones and tablets can be quite challenging to get a nice looking result   iOS UI is still iOS 6 –  Though you can style this yourself   Gets much more difficult quite quickly –  If you want to support editing –  If you go below 3 levels of breadcrumb history   Performance not the best 12
  • 13. jQuery Mobile   One of the most popular mobile web frameworks   Very simple to change theme to match your corporate style   Creating more complex applications is easier than Dojo Mobile Controls –  It’s more like creating a multi page XPages application 13
  • 15. jQuery Mobile   You get the choice of single page app (like Dojo Mobile Controls) or to load full pages for complex functions –  Single page app == speed –  Multi page app == complexity   Can be used in Mobile Web or offline with Teamstudio Unplugged   Huge developer community so lots of resources, plugins etc   Very easy to pick up and get started with 15
  • 16. jQuery Mobile   Potentially slow performance over 3g networks –  860kb for jQuery Mobile vs 150k for Dojo for same page functionality   Very JavaScript heavy, every element needs to be processed once downloaded –  For older phones this slows things down –  Becoming less of an issue with iPhone 5S for example   Harder to integrate into Domino from v1.3 and later –  http://notesin9.com/index.php/2013/04/20/jquery-mobileseems-incompatible-with-xpages-in-domino-9-0/ 16
  • 17. Unplugged Controls   Created by us specifically for XPages developers   A suite of 18 Custom Controls which allow you to quickly create a simple application –  And also allow the creation of more complex apps as well   Easy to change the UI using our Restyler website –  http://restyler.teamstudio.com   Under active development for XPages developers   Designed to work well with tablets and phones 17
  • 19. Unplugged Controls   We’re aiming to offer the best of both Dojo Mobile Controls and jQuery Mobile worlds –  Easy to create XPages applications of both simple and complex varieties –  Easy to change UI –  Performs well –  High quality tablet and phone user experience –  Easy to add offline capability •  With Teamstudio Unplugged 19
  • 20. Unplugged Controls   Framework has to be added manually to Domino Designer   Small development team and community compared to other frameworks   At the moment requires use of XPages rather than other more modern server technologies 20
  • 21. Mobile App Performance Tuning   Best solution for good performance is good design   Know your audience –  Which devices •  Phones or tablets / iOS or Android / both or all? –  Which use cases •  Online or offline?   Know your application –  Identify key features –  Reduce screen sizes –  Progressive disclosure 21
  • 22. Mobile App Performance Tuning   Make a decision about the balance between initial page load times and in app performance   If you can load a page via Ajax do it –  Even if it’s not faster you can provide feedback to the user   Optimize your code –  Minify JS and CSS –  Do you really need to use graphics? •  Maybe use font icons instead? –  We use Font Awesome in Unplugged Controls   Write good code! –  Code reviews are a wonderful (if scary) thing 22
  • 23. Mobile App Performance Tuning   Understand from the outset what your targets are: –  Page load times need specifics •  Which device(s) –  Latest iOS devices are significantly faster than even the previous generation •  Amount of data –  For initial page load vs. subsequent pages •  Network conditions –  Wi-Fi vs. 3G or 4G –  Network Latency 23
  • 24. 6 tips for a successful mobile app   Developing applications for mobile users is a different experience for us as developers than with the desktop which we’re used to, so here are some tips we have picked up… 1.  Be selective in project scope Pick the most important functions of your application to mobilize. Not everything is needed by people away from their desktop 2.  Less is more Screens on mobile devices are smaller than the desktop, reduce the amount of data you expect users to input to the base minimum 24
  • 25. 6 tips for a successful mobile app 3.  Imitation is the sincerest form of flattery Your users all use other mobile apps on a daily basis. Don’t try to reinvent the wheel. Make use of common design patterns. 4.  Get a second opinion We’re developers not designers (well most of us). Design is a skill and it’s worth getting an expert in to help with your UI. 25
  • 26. 6 tips for a successful mobile app 5.  Keep ‘em separated Mobile and desktop are not the same. Generally you will want to implement different interfaces for each one. Merged designs will be compromised on one or both environments. 6.  Ask, Listen, Edit, Repeat Make sure your users are involved from day 1 of the project, it will give them ownership but also head off any last minute “could you just…” moments 26
  • 27. Further Resources   Dojo Mobile Controls –  http://dojotoolkit.org/features/mobile   jQuery Mobile –  http://jquerymobile.com   Unplugged Controls –  http://unplugged.openntf.org –  http://restyler.teamstudio.com 27
  • 28. IBM Connect Sessions   BP201 - Creating a Mobile Application Framework with XPages –  Tuesday 28th Jan 3pm –  If you create a lot of mobile web applications, you may notice other frameworks such as JQuery Mobile and the XPages Mobile Controls just don't do exactly what you need. So we created our own, specifically designed for XPages. In this session you'll learn about the open source framework that's been have created. We'll show how it allows you to quickly drag and drop standard custom controls into an XPage to create a mobile application. We'll also talk about the process of creating an open source project and future plans.   BOF - Creating an Unplugged Controls Virtual User Group –  Please come along! 28
  • 29. 29