SlideShare a Scribd company logo
1 of 27
Download to read offline
#engageug
De05. Design Decisions:
Developing for Mobile - The
Template Experience Project
Gabriella Davis
Tim Davis
The Turtle Partnership
1
#engageug
Template Experience Project
• An HCL sponsored project to produce templates that show
Notes development on mobile
• The team involved includes Business Partner developers,
HCL Development, UX and Support
• https://templateexperience.com to read the latest on the
project as well as participate in surveys around design
2
#engageug
Discussions on iPhone
3
#engageug
Discussions on Tablet
4
#engageug
Discussions Design
• One database, the same data accessed regardless of client
• Avoiding duplicate design elements
• Ensuring it looks good on whatever client you are using
• Using standard Domino Designer code and techniques
• Aiming for the design elements to be merged with your
existing applications
5
#engageug
Where We Are & Next Steps
• Continuous development alongside Nomad & Domino
Designer
• Released along v12 timeline
• Technote KB0076430 being published this week
• beta version publicly available along with a whitepaper on
the design decisions and work done
6
#engageug
HCL Nomad
• Nomad is the client we are designing for, with both mobile and
tablet versions
• As much as possible we want to avoid duplicating design
elements and code for different clients so you can develop
once and access anywhere
• Nomad gives us advantages over web development for mobile
• It’s another client platform that can be developed alongside
the Notes client
• It has all the main benefits of a Notes client application,
including offline replication to a mobile device and security
• It allows us to develop for both phone and tablet, iOS and
eventually Android with the same code
7
#engageug
Platform Detection
• Using @Platform to determine which client is being used
• @Platform([Specific])
• PrimaryOSName, for example, iOS
• PrimaryOSVersionNumber, for example, 12.4
• iOS Model Type, either iPad or iPhone
• Apple Hardware Identifier, for example, iPad8.4
• iOS, 13.3.1, iPhone, iPhone10.4
• Upcoming extensions to @Platform will include parameters for
screen dimensions allowing us to size a layout for iPhones and
tablets from small to large by detecting maximum screen height and
width
8
#engageug
Demo & Digging Into Design
9
#engageug
Designing Platform Specific Framesets
• Let’s revisit our iPhone vs tablet design
• We want to avoid multiple design elements doing the same
thing but for different screen sizes
• We opted to have a launch frameset containing one frame
with a computed value of
• @If(@Platform([Specific])="iPhone";"phone";
@Platform([Specific])="iPad";"tablet";"other")
10
#engageug 11
#engageug
The iPhone Design
1. All Topics view
2. Favourites view
3. Tracking view
4. Filter Search
5. Search toggle
6. FAB (floating action button)
12
#engageug
Document Design
1.Switch to edit mode
2.Delete
3.Icon showing this is "helpful".
4.Icon showing this is one of the
user's favorites.
5.Icon showing this document is
being tracked by the user.
6.When tracking is enabled the
details of when it will stop is shown
on screen.
7.Comments and responses. The
count shows number of unread /
total number of comment
responses
13
#engageug
Scrolling Comments
• We are trying to minimise the number of screens / clicks that
people have navigate
• Comments in response to a document are displayed using
passthru HTML
• We are then able to also display total number in a thread
• Clicking on a comment header opens it on screen
• Clicking “All Comments” opens to that document in a view
14
#engageug
#engageug
Tags
• We are avoiding doing too much on a single screen or
working with popups
• our approach is to onto a separate screen
16
#engageug
Using Icons For Status
• To optimise the limited on-screen space on mobile we
wanted to make maximum use of images to provide
information
• In views we used icons to not only change data but to give
context to what you’re looking at
• Outline - inactive / Filled in - active
• We use the same behaviour on a document to show the
helpful/favorite/tracking status
• Helpful icon in a view column
• view column settings / show icon
17
#engageug
The F(loating) A(ction) B(ar)
• We wanted to move common
actions from the action bar in a
view which has limited width
• The Nomad team introduced
the FAB so that action bar icons
could be mapped to an iOS
sheet menu instead
18
#engageug
Right Mouse Click
• On Nomad a right mouse
click action instead
responds to a long press
• We use it for document
specific actions such as
adding a response, deleting
or marking a document as
“helpful”
19
#engageug
Marking Documents As Helpful
• Used instead of “Like”
• The difference between something being helpful vs liked is that
we remove any weighting from a count
• A document on an obscure topic that is helpful to one person
is just as valuable as a document that is helpful to 10 people
• A document is either helpful or it’s not
• How do we mark and show “helpful” ?
• We use a combination of view column icons and system
profiles
• Since a document is marked helpful regardless of who marked
it we can use a system profile to store that information
20
#engageug
Marking a Document Helpful
• A long press brings up the menu where you can select “Mark as
Helpful” in a view
• Alternatively you can click on the helpful icon on a document you are
looking at even if you don’t have edit access to that document
• A profile form called “HelpfulProfile” is used to create a database
profile
• there is a field $IsHelpful which contains a formula which
computes to the image name to display
• the image is an image resource in the database
• the form doesn’t exist as a design element as it’s a background
profile
• refer to the documentation for details of the design elements &
code 21
#engageug
Favorites
• Marking a document as a Favorite is a personal setting
• The “Favorites” private on first use folder populates with all
documents you have marked each time it opens and clears
each time it is exited
• You can Favorite (and Unfavorite) by selecting the
favourites icon in the document
22
#engageug
Setting A Favorite
• Our challenge is that the user may not have edit access to
the document if they didn’t create it
• So we can’t write directly to the document the fact that
“Gab” has favorited it
• We have a script that populates a background document
(one per user) with the unids of any favorited documents
• The folder is populated and the icon is displayed based on a
lookup of the current document’s unid matching an entry in
the background document.
23
#engageug
Tracking & How It Works
24
#engageug
The Filter Search
• We wanted to minimise the
amount of typing someone
would have to do when
searching for information
• We built a page that is
populated when it loads
using LotusScript, and
contains the most
commonly searched for
criteria
• On tablet we have enough
room to have the filter page
always displayed 25
#engageug
The Tablet Design
26
Document in
Preview mode with
restricted options
the filter search
displays in a left
hand frame
#engageug
Pilot
• The template is ready for its initial pilot although more work
will continue throughout the v12 development timeline
• There is an accompanying technical whitepaper that details
the design and explains the code
• You can download the template and whitepaper from HCL’s
support site by searching for technote KB0076430
(appearing this week) at https://support.hcltechsw.com/csm
• Thanks to: Theo Heselmans, Carl Tyler, Tim Davis, Maxx
Sutton, ME Miller, Dave Cohen, Fadil Channer
27

More Related Content

What's hot

The Platform Era - 7 steps to an API
The Platform Era - 7 steps to an APIThe Platform Era - 7 steps to an API
The Platform Era - 7 steps to an APIbootis
 
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...Serdar Basegmez
 
Presenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View ControlPresenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View ControlTeamstudio
 
The XPages Mobile Controls: What's New in Notes 9.0.1
The XPages Mobile Controls: What's New in Notes 9.0.1The XPages Mobile Controls: What's New in Notes 9.0.1
The XPages Mobile Controls: What's New in Notes 9.0.1Teamstudio
 
Xps 13 developer edition - slide share presentation-02.20.13
Xps 13 developer edition  - slide share presentation-02.20.13Xps 13 developer edition  - slide share presentation-02.20.13
Xps 13 developer edition - slide share presentation-02.20.13Barton George
 
LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"Daniel Bryant
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020Howard Greenberg
 
Automate IBM Connections Installations and more
Automate IBM Connections Installations and moreAutomate IBM Connections Installations and more
Automate IBM Connections Installations and moreLetsConnect
 
Docker for developers - The big picture
Docker for developers - The big pictureDocker for developers - The big picture
Docker for developers - The big pictureGeorge Dyrrahitis
 
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"Daniel Bryant
 
Your App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationYour App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationKlaus Bild
 
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
 
AD1545 - Extending the XPages Extension Library
AD1545 - Extending the XPages Extension LibraryAD1545 - Extending the XPages Extension Library
AD1545 - Extending the XPages Extension Librarypaidi_ed
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!Howard Greenberg
 
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
 
Docs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesDocs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesAnne Gentle
 
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
 
Enterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private RegistryEnterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private RegistryChris Riley ☁
 

What's hot (20)

The Platform Era - 7 steps to an API
The Platform Era - 7 steps to an APIThe Platform Era - 7 steps to an API
The Platform Era - 7 steps to an API
 
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
IBM Connect 2017: Your Data In the Major Leagues: A Practical Guide to REST S...
 
Presenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View ControlPresenting Data – An Alternative to the View Control
Presenting Data – An Alternative to the View Control
 
The XPages Mobile Controls: What's New in Notes 9.0.1
The XPages Mobile Controls: What's New in Notes 9.0.1The XPages Mobile Controls: What's New in Notes 9.0.1
The XPages Mobile Controls: What's New in Notes 9.0.1
 
Xps 13 developer edition - slide share presentation-02.20.13
Xps 13 developer edition  - slide share presentation-02.20.13Xps 13 developer edition  - slide share presentation-02.20.13
Xps 13 developer edition - slide share presentation-02.20.13
 
LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"
 
OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020OpenNTF Webinar, May 19, 2020
OpenNTF Webinar, May 19, 2020
 
Automate IBM Connections Installations and more
Automate IBM Connections Installations and moreAutomate IBM Connections Installations and more
Automate IBM Connections Installations and more
 
Docker management
Docker managementDocker management
Docker management
 
React.js at Cortex
React.js at CortexReact.js at Cortex
React.js at Cortex
 
Docker for developers - The big picture
Docker for developers - The big pictureDocker for developers - The big picture
Docker for developers - The big picture
 
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
LSCC 2014 "Crafting DevOps: Applying Software Craftsmanship to DevOps"
 
Your App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App ModernizationYour App Deserves More – The Art of App Modernization
Your App Deserves More – The Art of App Modernization
 
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
 
AD1545 - Extending the XPages Extension Library
AD1545 - Extending the XPages Extension LibraryAD1545 - Extending the XPages Extension Library
AD1545 - Extending the XPages Extension Library
 
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
July 2020 OpenNTF Webinar - Hear the Latest from the User Groups!
 
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
 
Docs Like Code: Strategies and Stories
Docs Like Code: Strategies and StoriesDocs Like Code: Strategies and Stories
Docs Like Code: Strategies and Stories
 
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
 
Enterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private RegistryEnterprise Docker Requires a Private Registry
Enterprise Docker Requires a Private Registry
 

Similar to . Design Decisions: Developing for Mobile - The Template Experience Project

Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Indiginox
 
[Seminar] hwiyeon 200709
[Seminar] hwiyeon 200709[Seminar] hwiyeon 200709
[Seminar] hwiyeon 200709ivaderivader
 
Developing a practical HTML5 magazine workflow
Developing a practical HTML5 magazine workflowDeveloping a practical HTML5 magazine workflow
Developing a practical HTML5 magazine workflowMichael Kowalski
 
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...Infinum
 
Android UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and ProfitAndroid UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and Profitpenanochizzo
 
Android UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and ProfitAndroid UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and ProfitFernando Cejas
 
Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti
 Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti   Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti
Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti Smash Tech
 
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI PrototypingGame Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI PrototypingDavid Farrell
 
Why do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 editionWhy do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 editionIndiginox
 
Implementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryImplementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryFresche Solutions
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Jody Garnett
 
Demystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesDemystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesPaige Morgan
 
Android Workshop Part 1
Android Workshop Part 1Android Workshop Part 1
Android Workshop Part 1NAILBITER
 
Android development orientation for starters v2
Android development orientation for starters v2Android development orientation for starters v2
Android development orientation for starters v2Joemarie Amparo
 
Online platforms for ICT Content Development
Online platforms for ICT Content DevelopmentOnline platforms for ICT Content Development
Online platforms for ICT Content DevelopmentAngelito Quiambao
 
ONLINE PLATFORMS AS TOOLS
ONLINE PLATFORMS AS TOOLSONLINE PLATFORMS AS TOOLS
ONLINE PLATFORMS AS TOOLSLeahAmor1
 
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012Scott McCormick
 

Similar to . Design Decisions: Developing for Mobile - The Template Experience Project (20)

UI and UX for Mobile Developers
UI and UX for Mobile DevelopersUI and UX for Mobile Developers
UI and UX for Mobile Developers
 
The Developers World
The Developers WorldThe Developers World
The Developers World
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?
 
[Seminar] hwiyeon 200709
[Seminar] hwiyeon 200709[Seminar] hwiyeon 200709
[Seminar] hwiyeon 200709
 
Dmdh workshop #6
Dmdh workshop #6Dmdh workshop #6
Dmdh workshop #6
 
Developing a practical HTML5 magazine workflow
Developing a practical HTML5 magazine workflowDeveloping a practical HTML5 magazine workflow
Developing a practical HTML5 magazine workflow
 
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
 
Android UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and ProfitAndroid UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and Profit
 
Android UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and ProfitAndroid UX-UI Design for Fun and Profit
Android UX-UI Design for Fun and Profit
 
Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti
 Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti   Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti
Android UX-UI Design for fun and profit | Fernando Cejas | Tuenti
 
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI PrototypingGame Design 2 (2013): Lecture 5 - Game UI Prototyping
Game Design 2 (2013): Lecture 5 - Game UI Prototyping
 
Why do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 editionWhy do mobile projects (still) fail - September 2014 edition
Why do mobile projects (still) fail - September 2014 edition
 
Implementing Modernization by Trevor Perry
Implementing Modernization by Trevor PerryImplementing Modernization by Trevor Perry
Implementing Modernization by Trevor Perry
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
 
Demystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 SlidesDemystifying Digital Scholarship Workshop 6 Slides
Demystifying Digital Scholarship Workshop 6 Slides
 
Android Workshop Part 1
Android Workshop Part 1Android Workshop Part 1
Android Workshop Part 1
 
Android development orientation for starters v2
Android development orientation for starters v2Android development orientation for starters v2
Android development orientation for starters v2
 
Online platforms for ICT Content Development
Online platforms for ICT Content DevelopmentOnline platforms for ICT Content Development
Online platforms for ICT Content Development
 
ONLINE PLATFORMS AS TOOLS
ONLINE PLATFORMS AS TOOLSONLINE PLATFORMS AS TOOLS
ONLINE PLATFORMS AS TOOLS
 
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012
Scott mc cormick float mobile learning_prototyping strategy_mlearncon 2012
 

More from Gabriella Davis

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Engage2022 - Domino Admin Tips
Engage2022 - Domino Admin TipsEngage2022 - Domino Admin Tips
Engage2022 - Domino Admin TipsGabriella Davis
 
Domino Server Health - Monitoring and Managing
 Domino Server Health - Monitoring and Managing Domino Server Health - Monitoring and Managing
Domino Server Health - Monitoring and ManagingGabriella Davis
 
Face Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesFace Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesGabriella Davis
 
Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Gabriella Davis
 
An Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerAn Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerGabriella Davis
 
An Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsAn Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsGabriella Davis
 
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...Gabriella Davis
 
An introduction to configuring Domino for Docker
An introduction to configuring Domino for DockerAn introduction to configuring Domino for Docker
An introduction to configuring Domino for DockerGabriella Davis
 
How To Approach GDPR Preparation & Discovery
How To Approach GDPR Preparation & DiscoveryHow To Approach GDPR Preparation & Discovery
How To Approach GDPR Preparation & DiscoveryGabriella Davis
 
An Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsAn Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsGabriella Davis
 
A Guide To Single Sign-On for IBM Collaboration Solutions
A Guide To Single Sign-On for IBM Collaboration SolutionsA Guide To Single Sign-On for IBM Collaboration Solutions
A Guide To Single Sign-On for IBM Collaboration SolutionsGabriella Davis
 
What's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesWhat's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesGabriella Davis
 
An Introduction To Docker
An Introduction To DockerAn Introduction To Docker
An Introduction To DockerGabriella Davis
 
An Introduction To Docker
An Introduction To  DockerAn Introduction To  Docker
An Introduction To DockerGabriella Davis
 
Setting Up a Hybrid Domino Environment to Ease your Way to the Cloud
Setting Up a Hybrid Domino Environment to Ease your Way to the CloudSetting Up a Hybrid Domino Environment to Ease your Way to the Cloud
Setting Up a Hybrid Domino Environment to Ease your Way to the CloudGabriella Davis
 

More from Gabriella Davis (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Engage2022 - Domino Admin Tips
Engage2022 - Domino Admin TipsEngage2022 - Domino Admin Tips
Engage2022 - Domino Admin Tips
 
Domino Server Health - Monitoring and Managing
 Domino Server Health - Monitoring and Managing Domino Server Health - Monitoring and Managing
Domino Server Health - Monitoring and Managing
 
Face Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On PremisesFace Off Domino vs Exchange On Premises
Face Off Domino vs Exchange On Premises
 
60 Admin Tips
60 Admin Tips60 Admin Tips
60 Admin Tips
 
Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10Adminlicious - A Guide To TCO Features In Domino v10
Adminlicious - A Guide To TCO Features In Domino v10
 
An Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for DockerAn Introduction to Configuring Domino for Docker
An Introduction to Configuring Domino for Docker
 
An Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsAn Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation Requirements
 
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...
× The Road To A #Perfect10 - How To Get Ready For Domino, Sametime, VOP and T...
 
An introduction to configuring Domino for Docker
An introduction to configuring Domino for DockerAn introduction to configuring Domino for Docker
An introduction to configuring Domino for Docker
 
How To Approach GDPR Preparation & Discovery
How To Approach GDPR Preparation & DiscoveryHow To Approach GDPR Preparation & Discovery
How To Approach GDPR Preparation & Discovery
 
An Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation RequirementsAn Introduction To The DMARC SMTP Validation Requirements
An Introduction To The DMARC SMTP Validation Requirements
 
Brand Yourself
Brand YourselfBrand Yourself
Brand Yourself
 
Home Working
Home WorkingHome Working
Home Working
 
A Guide To Single Sign-On for IBM Collaboration Solutions
A Guide To Single Sign-On for IBM Collaboration SolutionsA Guide To Single Sign-On for IBM Collaboration Solutions
A Guide To Single Sign-On for IBM Collaboration Solutions
 
The Imposter Syndrome
The Imposter SyndromeThe Imposter Syndrome
The Imposter Syndrome
 
What's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-PremisesWhat's New in Notes, Sametime and Verse On-Premises
What's New in Notes, Sametime and Verse On-Premises
 
An Introduction To Docker
An Introduction To DockerAn Introduction To Docker
An Introduction To Docker
 
An Introduction To Docker
An Introduction To  DockerAn Introduction To  Docker
An Introduction To Docker
 
Setting Up a Hybrid Domino Environment to Ease your Way to the Cloud
Setting Up a Hybrid Domino Environment to Ease your Way to the CloudSetting Up a Hybrid Domino Environment to Ease your Way to the Cloud
Setting Up a Hybrid Domino Environment to Ease your Way to the Cloud
 

Recently uploaded

From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxFrom Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxNeo4j
 
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jGraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jNeo4j
 
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...drm1699
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMarkus Moeller
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Flutter Agency
 
Effective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConEffective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConNatan Silnitsky
 
Weeding your micro service landscape.pdf
Weeding your micro service landscape.pdfWeeding your micro service landscape.pdf
Weeding your micro service landscape.pdftimtebeek1
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024SimonedeGijt
 
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024MulesoftMunichMeetup
 
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Lisi Hocke
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AIAGATSoftware
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletAndrea Goulet
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...naitiksharma1124
 
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdfThe Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdfkalichargn70th171
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit MilanNeo4j
 
Transformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksTransformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksJinanKordab
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Maxim Salnikov
 
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaUNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaNeo4j
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Eraconfluent
 

Recently uploaded (20)

From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxFrom Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
 
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jGraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
 
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...
Abortion Pills For Sale WhatsApp[[+27737758557]] In Birch Acres, Abortion Pil...
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
 
Effective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeConEffective Strategies for Wix's Scaling challenges - GeeCon
Effective Strategies for Wix's Scaling challenges - GeeCon
 
Weeding your micro service landscape.pdf
Weeding your micro service landscape.pdfWeeding your micro service landscape.pdf
Weeding your micro service landscape.pdf
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
 
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
 
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AI
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea Goulet
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdfThe Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
 
Transformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksTransformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with Links
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale IbridaUNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
UNI DI NAPOLI FEDERICO II - Il ruolo dei grafi nell'AI Conversazionale Ibrida
 
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 

. Design Decisions: Developing for Mobile - The Template Experience Project

  • 1. #engageug De05. Design Decisions: Developing for Mobile - The Template Experience Project Gabriella Davis Tim Davis The Turtle Partnership 1
  • 2. #engageug Template Experience Project • An HCL sponsored project to produce templates that show Notes development on mobile • The team involved includes Business Partner developers, HCL Development, UX and Support • https://templateexperience.com to read the latest on the project as well as participate in surveys around design 2
  • 5. #engageug Discussions Design • One database, the same data accessed regardless of client • Avoiding duplicate design elements • Ensuring it looks good on whatever client you are using • Using standard Domino Designer code and techniques • Aiming for the design elements to be merged with your existing applications 5
  • 6. #engageug Where We Are & Next Steps • Continuous development alongside Nomad & Domino Designer • Released along v12 timeline • Technote KB0076430 being published this week • beta version publicly available along with a whitepaper on the design decisions and work done 6
  • 7. #engageug HCL Nomad • Nomad is the client we are designing for, with both mobile and tablet versions • As much as possible we want to avoid duplicating design elements and code for different clients so you can develop once and access anywhere • Nomad gives us advantages over web development for mobile • It’s another client platform that can be developed alongside the Notes client • It has all the main benefits of a Notes client application, including offline replication to a mobile device and security • It allows us to develop for both phone and tablet, iOS and eventually Android with the same code 7
  • 8. #engageug Platform Detection • Using @Platform to determine which client is being used • @Platform([Specific]) • PrimaryOSName, for example, iOS • PrimaryOSVersionNumber, for example, 12.4 • iOS Model Type, either iPad or iPhone • Apple Hardware Identifier, for example, iPad8.4 • iOS, 13.3.1, iPhone, iPhone10.4 • Upcoming extensions to @Platform will include parameters for screen dimensions allowing us to size a layout for iPhones and tablets from small to large by detecting maximum screen height and width 8
  • 9. #engageug Demo & Digging Into Design 9
  • 10. #engageug Designing Platform Specific Framesets • Let’s revisit our iPhone vs tablet design • We want to avoid multiple design elements doing the same thing but for different screen sizes • We opted to have a launch frameset containing one frame with a computed value of • @If(@Platform([Specific])="iPhone";"phone"; @Platform([Specific])="iPad";"tablet";"other") 10
  • 12. #engageug The iPhone Design 1. All Topics view 2. Favourites view 3. Tracking view 4. Filter Search 5. Search toggle 6. FAB (floating action button) 12
  • 13. #engageug Document Design 1.Switch to edit mode 2.Delete 3.Icon showing this is "helpful". 4.Icon showing this is one of the user's favorites. 5.Icon showing this document is being tracked by the user. 6.When tracking is enabled the details of when it will stop is shown on screen. 7.Comments and responses. The count shows number of unread / total number of comment responses 13
  • 14. #engageug Scrolling Comments • We are trying to minimise the number of screens / clicks that people have navigate • Comments in response to a document are displayed using passthru HTML • We are then able to also display total number in a thread • Clicking on a comment header opens it on screen • Clicking “All Comments” opens to that document in a view 14
  • 16. #engageug Tags • We are avoiding doing too much on a single screen or working with popups • our approach is to onto a separate screen 16
  • 17. #engageug Using Icons For Status • To optimise the limited on-screen space on mobile we wanted to make maximum use of images to provide information • In views we used icons to not only change data but to give context to what you’re looking at • Outline - inactive / Filled in - active • We use the same behaviour on a document to show the helpful/favorite/tracking status • Helpful icon in a view column • view column settings / show icon 17
  • 18. #engageug The F(loating) A(ction) B(ar) • We wanted to move common actions from the action bar in a view which has limited width • The Nomad team introduced the FAB so that action bar icons could be mapped to an iOS sheet menu instead 18
  • 19. #engageug Right Mouse Click • On Nomad a right mouse click action instead responds to a long press • We use it for document specific actions such as adding a response, deleting or marking a document as “helpful” 19
  • 20. #engageug Marking Documents As Helpful • Used instead of “Like” • The difference between something being helpful vs liked is that we remove any weighting from a count • A document on an obscure topic that is helpful to one person is just as valuable as a document that is helpful to 10 people • A document is either helpful or it’s not • How do we mark and show “helpful” ? • We use a combination of view column icons and system profiles • Since a document is marked helpful regardless of who marked it we can use a system profile to store that information 20
  • 21. #engageug Marking a Document Helpful • A long press brings up the menu where you can select “Mark as Helpful” in a view • Alternatively you can click on the helpful icon on a document you are looking at even if you don’t have edit access to that document • A profile form called “HelpfulProfile” is used to create a database profile • there is a field $IsHelpful which contains a formula which computes to the image name to display • the image is an image resource in the database • the form doesn’t exist as a design element as it’s a background profile • refer to the documentation for details of the design elements & code 21
  • 22. #engageug Favorites • Marking a document as a Favorite is a personal setting • The “Favorites” private on first use folder populates with all documents you have marked each time it opens and clears each time it is exited • You can Favorite (and Unfavorite) by selecting the favourites icon in the document 22
  • 23. #engageug Setting A Favorite • Our challenge is that the user may not have edit access to the document if they didn’t create it • So we can’t write directly to the document the fact that “Gab” has favorited it • We have a script that populates a background document (one per user) with the unids of any favorited documents • The folder is populated and the icon is displayed based on a lookup of the current document’s unid matching an entry in the background document. 23
  • 25. #engageug The Filter Search • We wanted to minimise the amount of typing someone would have to do when searching for information • We built a page that is populated when it loads using LotusScript, and contains the most commonly searched for criteria • On tablet we have enough room to have the filter page always displayed 25
  • 26. #engageug The Tablet Design 26 Document in Preview mode with restricted options the filter search displays in a left hand frame
  • 27. #engageug Pilot • The template is ready for its initial pilot although more work will continue throughout the v12 development timeline • There is an accompanying technical whitepaper that details the design and explains the code • You can download the template and whitepaper from HCL’s support site by searching for technote KB0076430 (appearing this week) at https://support.hcltechsw.com/csm • Thanks to: Theo Heselmans, Carl Tyler, Tim Davis, Maxx Sutton, ME Miller, Dave Cohen, Fadil Channer 27