SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

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
 

Was ist angesagt? (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
 

Andere mochten auch

Образование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, ЛондонОбразование за рубежом с Инна Тур, Великобритания, Лондон
Образование за рубежом с Инна Тур, Великобритания, ЛондонИННА ТУР
 
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
 

Andere mochten auch (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
 

Ähnlich wie 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
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile FirstPrecedent
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
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
 

Ähnlich wie 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
 
Seminar: Putting Mobile First
Seminar: Putting Mobile FirstSeminar: Putting Mobile First
Seminar: Putting Mobile First
 
Putting Mobile First
Putting Mobile FirstPutting Mobile First
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
 

Mehr von 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
 

Mehr von 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...
 

Kürzlich hochgeladen

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Kürzlich hochgeladen (20)

What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

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