SlideShare a Scribd company logo
Mobile First or Desktop First
Marc Gusmano
Senior Sales Engineer
marc.gusmano@sencha.com
Agenda
• Mobile First Approach
• Desktop First Approach
• Responsive Design
• Adaptive Design
• Universal Applications
• Coworkee
• Development Approach / Best Practices
Mobile First Approach
• Progressive Enhancements
• Put best foot forward on
mobile, and as need arises,
enhance progressively on
larger platforms
Desktop First Approach
• Graceful Degradations
• Build every feature you need
for the large screen, and scale
back (gradually remove
features) as viewport
becomes smaller
Progressive Enhancements Wins!
(start with minimal and focused features)
So, let’s go Mobile First…
And… Desktop is dead, 2+ billion
Mobile users worldwide
So, let’s go Mobile First… or why not Mobile Only
But… everyone is talking about
‘Responsive Design’
Designers, developers, stakeholders… everyone
Responsive Design
• Design for Desktop, and keep
Mobile in mind… feels like
porting desktop version to
mobile
• Practical Challenges
- Image resizing consumes CPU
- Unnecessary data download
- Media queries hide stuff on
mobile, not remove Not Mobile First – It’s one size fits all
Responsive Design – Resize/Hide/Reposition Widgets
Big desktop Small desktop
How about ‘Adaptive’?
• Device specific UX; detect
screen size, load appropriate
experience
• We can start with mobile (and
even ignore tablet to begin
with)
Image Source: http://www.pattronize.com/blog/
Adaptive Design – Distinct Layouts for Different Devices
Phone (list) Tablet (grid)
In U.S. alone, 25% of Web Users are
Mobile Only (rarely use Desktop)
Flip side… 75% aren’t
As of Jan 2015, WhatsApp is on
Desktop
Sure… they started with ‘Mobile First’ ☺
Today’s reality… users move from
device to device while interacting with
apps
Especially… business / enterprise apps
Bottom line… apps must provide a
quality user experience, no matter
what the device
Responsive, Adaptive… whatever works
But… no matter the design
approach…
As developers… you should always think…
Universal
Developers are expected to reuse
code…
Universal is about sharing code, and tailored UX
Mobile Design – Go for best UX
Desktop Design – Go for best UX
Sample Employee Directory App -
Coworkee
Coworkee (Employee Directory)
https://github.com/sencha-extjs-examples/Coworkee
22
Development Approach / Best Practices
• Architect with Universal in mind… even if it was just mobile, or just desktop
• When architecting for all platforms
- Use only Modern toolkit. Comes at the expense of legacy browser support, but gives a lot of
flexibility with CSS, responsive, etc., and avoids any duplication across classic & modern views
- Avoid device specific theme, start with something neutral such as Material, Neptune, or Triton
- Organize views into a) universal, b) profile-based
- Share all (almost) logic and data (controller and model) across platforms, more shareable than
views
- Adopt a “whatever first” implementation for the view, “universal first” implementation for the
controller and model
Development Approach / Best Practices
• Approach for implementing views:
- When almost similar across profiles, start as universal view, then customize by creating derived
views at the profile level
- When views are significantly different across profiles, create view for one profile, duplicate it to
the other and modify
- Finally, if there are similar parts, refactor into universal base views and derived views
• Use profiles to instruct your app what views to use based on rules
• Modern toolkit allows CSS layouts, making it easy to adjust layout (especially for
content heavy screens)
Questions?
Sencha Roadshow 2017: Mobile First or Desktop First

More Related Content

PPTX
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
PDF
Magnolia 5's new UX
PDF
ExtJS: La piattaforma vincente (multiple screens)
KEY
Simplifying End-user Drupal 7 Content Administration
PPTX
What's New in Bootstrap 5
PDF
Sencha and Spring (Spring 2GX 2013)
PPTX
Titanium - A js based platform for building mobile apps
PDF
ExtJS: La piattaforma vincente (tools)
SenchaCon 2016: Mobile First? Desktop First? Or Should you Think Universal Ap...
Magnolia 5's new UX
ExtJS: La piattaforma vincente (multiple screens)
Simplifying End-user Drupal 7 Content Administration
What's New in Bootstrap 5
Sencha and Spring (Spring 2GX 2013)
Titanium - A js based platform for building mobile apps
ExtJS: La piattaforma vincente (tools)

Viewers also liked (18)

PDF
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
PDF
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
PDF
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
PDF
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
PDF
Learn Key Insights from The State of Web Application Testing Research Report
PDF
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
PDF
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
PPT
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
PPT
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
PPTX
SenchaCon 2016: Improve Workflow Driven Applications with Ext JS Draw Package...
PDF
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
PPTX
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
PDF
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
PPTX
Building Ext JS Using HATEOAS - Jeff Stano
PPTX
Ext JS Architecture Best Practices - Mitchell Simeons
PDF
Sencha Roadshow 2017: What's New in Sencha Test
PPTX
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
PPT
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
Leveraging React and GraphQL to Create a Performant, Scalable Data Grid
Sencha Roadshow 2017: Modernizing the Ext JS Class System and Tooling
Sencha Roadshow 2017: Innovations in Ext JS 6.5 and Beyond
Sencha Roadshow 2017: Sencha Upgrades - The Good. The Bad. The Ugly - Eva Luc...
Learn Key Insights from The State of Web Application Testing Research Report
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: BufferedStore Internals featuring eyeworkers interactiv...
SenchaCon 2016: LinkRest - Modern RESTful API Framework for Ext JS Apps - Rou...
SenchaCon 2016: Expect the Unexpected - Dealing with Errors in Web Apps
SenchaCon 2016: Improve Workflow Driven Applications with Ext JS Draw Package...
Sencha Roadshow 2017: Build Progressive Web Apps with Ext JS and Cmd
Introducing ExtReact: Adding Powerful Sencha Components to React Apps
Sencha Roadshow 2017: Sencha Best Practices: Coworkee App
Building Ext JS Using HATEOAS - Jeff Stano
Ext JS Architecture Best Practices - Mitchell Simeons
Sencha Roadshow 2017: What's New in Sencha Test
SenchaCon 2016: Keynote Presentation - Art Landro, Gautam Agrawal, Mark Brocato
SenchaCon 2016: Add Magic to Your Ext JS Apps with D3 Visualizations - Vitaly...
Ad

Similar to Sencha Roadshow 2017: Mobile First or Desktop First (20)

PDF
Frank Mainzer & Silviu Durduc - Developing mobile app using Sencha Touch
PPTX
Responsive Web Design for Enterprise Apps
PPTX
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
PPTX
The Importance of UX
PDF
Web Application Development- Best Practices in 2023.
PPTX
Uniface Lectures Webinar - Extending Applications for Mobile
PDF
A brief introduction to Enterprise and Industrial UX
PPTX
When User Interface Patterns Become Mobile
PDF
Web UX Landscape (and all points in between...)
PDF
Web Application Development in 2023.pdf
PDF
User interface design
PDF
Web UI Design Patterns 2014
PDF
Uxpin web ui design patterns 2014
PPTX
Navigating the Mobile maze
PPTX
How a Forward-Thinking Website Design Company Builds for Every Screen
PDF
Unleash Your Inner Unicorn
PDF
Flex Web Development: Unleashing the Power of Versatility
PPT
Building Mobile Apps for Business
PPTX
Web based, mobile enterprise applications
PPTX
Seminar: Putting Mobile First
Frank Mainzer & Silviu Durduc - Developing mobile app using Sencha Touch
Responsive Web Design for Enterprise Apps
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
The Importance of UX
Web Application Development- Best Practices in 2023.
Uniface Lectures Webinar - Extending Applications for Mobile
A brief introduction to Enterprise and Industrial UX
When User Interface Patterns Become Mobile
Web UX Landscape (and all points in between...)
Web Application Development in 2023.pdf
User interface design
Web UI Design Patterns 2014
Uxpin web ui design patterns 2014
Navigating the Mobile maze
How a Forward-Thinking Website Design Company Builds for Every Screen
Unleash Your Inner Unicorn
Flex Web Development: Unleashing the Power of Versatility
Building Mobile Apps for Business
Web based, mobile enterprise applications
Seminar: Putting Mobile First
Ad

More from Sencha (10)

PDF
Breathe New Life into Your Existing JavaScript Applications with Web Components
PDF
Ext JS 6.6 Highlights
PPTX
SenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil Manvar
PPTX
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
PPTX
SenchaCon 2016: JavaScript is Great but Stop Writing It - Rory Hardy
PPTX
SenchaCon 2016: Accessibility, Teamwork & Ext JS: A Customer Success Story - ...
PPTX
SenchaCon 2016: Handling Undo-Redo in Sencha Applications - Nickolay Platonov
PPTX
SenchaCon 2016: How to Auto Generate a Back-end in Minutes - Per Minborg, Emi...
PPTX
SenchaCon 2016: Turbocharge your Ext JS App - Per Minborg, Anselm McClain, Jo...
PPTX
SenchaCon 2016: Integrating Geospatial Maps & Big Data Using CartoDB via Ext ...
Breathe New Life into Your Existing JavaScript Applications with Web Components
Ext JS 6.6 Highlights
SenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil Manvar
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
SenchaCon 2016: JavaScript is Great but Stop Writing It - Rory Hardy
SenchaCon 2016: Accessibility, Teamwork & Ext JS: A Customer Success Story - ...
SenchaCon 2016: Handling Undo-Redo in Sencha Applications - Nickolay Platonov
SenchaCon 2016: How to Auto Generate a Back-end in Minutes - Per Minborg, Emi...
SenchaCon 2016: Turbocharge your Ext JS App - Per Minborg, Anselm McClain, Jo...
SenchaCon 2016: Integrating Geospatial Maps & Big Data Using CartoDB via Ext ...

Recently uploaded (20)

PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation theory and applications.pdf
PDF
KodekX | Application Modernization Development
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Cloud computing and distributed systems.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
cuic standard and advanced reporting.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPT
Teaching material agriculture food technology
Review of recent advances in non-invasive hemoglobin estimation
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation theory and applications.pdf
KodekX | Application Modernization Development
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Cloud computing and distributed systems.
Dropbox Q2 2025 Financial Results & Investor Presentation
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
20250228 LYD VKU AI Blended-Learning.pptx
A Presentation on Artificial Intelligence
cuic standard and advanced reporting.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Diabetes mellitus diagnosis method based random forest with bat algorithm
“AI and Expert System Decision Support & Business Intelligence Systems”
Teaching material agriculture food technology

Sencha Roadshow 2017: Mobile First or Desktop First

  • 1. Mobile First or Desktop First Marc Gusmano Senior Sales Engineer marc.gusmano@sencha.com
  • 2. Agenda • Mobile First Approach • Desktop First Approach • Responsive Design • Adaptive Design • Universal Applications • Coworkee • Development Approach / Best Practices
  • 3. Mobile First Approach • Progressive Enhancements • Put best foot forward on mobile, and as need arises, enhance progressively on larger platforms
  • 4. Desktop First Approach • Graceful Degradations • Build every feature you need for the large screen, and scale back (gradually remove features) as viewport becomes smaller
  • 5. Progressive Enhancements Wins! (start with minimal and focused features) So, let’s go Mobile First…
  • 6. And… Desktop is dead, 2+ billion Mobile users worldwide So, let’s go Mobile First… or why not Mobile Only
  • 7. But… everyone is talking about ‘Responsive Design’ Designers, developers, stakeholders… everyone
  • 8. Responsive Design • Design for Desktop, and keep Mobile in mind… feels like porting desktop version to mobile • Practical Challenges - Image resizing consumes CPU - Unnecessary data download - Media queries hide stuff on mobile, not remove Not Mobile First – It’s one size fits all
  • 9. Responsive Design – Resize/Hide/Reposition Widgets Big desktop Small desktop
  • 10. How about ‘Adaptive’? • Device specific UX; detect screen size, load appropriate experience • We can start with mobile (and even ignore tablet to begin with) Image Source: http://www.pattronize.com/blog/
  • 11. Adaptive Design – Distinct Layouts for Different Devices Phone (list) Tablet (grid)
  • 12. In U.S. alone, 25% of Web Users are Mobile Only (rarely use Desktop) Flip side… 75% aren’t
  • 13. As of Jan 2015, WhatsApp is on Desktop Sure… they started with ‘Mobile First’ ☺
  • 14. Today’s reality… users move from device to device while interacting with apps Especially… business / enterprise apps
  • 15. Bottom line… apps must provide a quality user experience, no matter what the device Responsive, Adaptive… whatever works
  • 16. But… no matter the design approach… As developers… you should always think… Universal
  • 17. Developers are expected to reuse code… Universal is about sharing code, and tailored UX
  • 18. Mobile Design – Go for best UX
  • 19. Desktop Design – Go for best UX
  • 20. Sample Employee Directory App - Coworkee
  • 22. Development Approach / Best Practices • Architect with Universal in mind… even if it was just mobile, or just desktop • When architecting for all platforms - Use only Modern toolkit. Comes at the expense of legacy browser support, but gives a lot of flexibility with CSS, responsive, etc., and avoids any duplication across classic & modern views - Avoid device specific theme, start with something neutral such as Material, Neptune, or Triton - Organize views into a) universal, b) profile-based - Share all (almost) logic and data (controller and model) across platforms, more shareable than views - Adopt a “whatever first” implementation for the view, “universal first” implementation for the controller and model
  • 23. Development Approach / Best Practices • Approach for implementing views: - When almost similar across profiles, start as universal view, then customize by creating derived views at the profile level - When views are significantly different across profiles, create view for one profile, duplicate it to the other and modify - Finally, if there are similar parts, refactor into universal base views and derived views • Use profiles to instruct your app what views to use based on rules • Modern toolkit allows CSS layouts, making it easy to adjust layout (especially for content heavy screens)