SlideShare a Scribd company logo
1 of 44
Download to read offline
Think
                            Mobile
                            First
                            Then
                            Enhance
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
@karlpro   Karl Dubost
           Opera Software
           Developer Relations




             Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Toys?




Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Mobile?




      Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Mobile?




      Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
How far
is the
screen?




    Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Screens…




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
WAP, C-HTML, …




Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Do Nothing




             Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Liquid or
Semi-Liquid
Layout




     Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
www.                                                 m.




   Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
User Agent Sniffing?




            Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
User Agent Sniffing!




 Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
User Agents…




          Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Cookies… if not then




     Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
HTML




       Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
viewport




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
viewport


  <meta name="viewport" content="wi




                                   See @goetter
                                   http://slidesha.re/ew4LVM

             Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
media
queries




    Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
mediaqueries
See @ppk
http://www.quirksmode.org/blog/archives/2010/09/combining_meta.html



body {// basic styles}

@media all and (max-width: 600px) {
  body {// extra styles for mobile}}




                           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
user experience




            Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Mobile strategy… mess.




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Logs & Market Share




            Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Ouch!




        Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
User agent… again




Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Meh…




       Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Time To Think




Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Simplicity, Basics, Users




         Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
mediaqueries
See @ppk
http://www.quirksmode.org/blog/archives/2010/09/combining_meta.html



body {// basic styles}

@media all and (max-width: 600px) {
  body {// extra styles for mobile}}

@media all and (min-width: 600px) {
  body {// extra styles for desktop}}




                           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Tools & Techniques




            Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Co-hosted files




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Sprites




          Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
gzip




       Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
remote debugging




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Opera Dragonfly




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
love hate




            Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Understand Users




           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Think mobile first

how come this
more usable
on desktop too



           Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
Karl Dubost
@karlpro
my.opera.com/karlcow


questions?




                Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow

More Related Content

More from ConFoo

The business behind open source
The business behind open sourceThe business behind open source
The business behind open sourceConFoo
 
Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?ConFoo
 
OWASP Enterprise Security API
OWASP Enterprise Security APIOWASP Enterprise Security API
OWASP Enterprise Security APIConFoo
 
Opensource Authentication and Authorization
Opensource Authentication and AuthorizationOpensource Authentication and Authorization
Opensource Authentication and AuthorizationConFoo
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesConFoo
 
Le bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesLe bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesConFoo
 
The Solar Framework for PHP
The Solar Framework for PHPThe Solar Framework for PHP
The Solar Framework for PHPConFoo
 
Décrire un projet PHP dans des rapports
Décrire un projet PHP dans des rapportsDécrire un projet PHP dans des rapports
Décrire un projet PHP dans des rapportsConFoo
 
Server Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogServer Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogConFoo
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+ConFoo
 
Metaprogramming in Ruby
Metaprogramming in RubyMetaprogramming in Ruby
Metaprogramming in RubyConFoo
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101ConFoo
 
As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?ConFoo
 
Pragmatic Guide to Git
Pragmatic Guide to GitPragmatic Guide to Git
Pragmatic Guide to GitConFoo
 
Building servers with Node.js
Building servers with Node.jsBuilding servers with Node.js
Building servers with Node.jsConFoo
 
An Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesAn Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesConFoo
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump StartConFoo
 
Develop mobile applications with Flex
Develop mobile applications with FlexDevelop mobile applications with Flex
Develop mobile applications with FlexConFoo
 
WordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webWordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webConFoo
 
Graphs, Edges & Nodes: Untangling the Social Web
Graphs, Edges & Nodes: Untangling the Social WebGraphs, Edges & Nodes: Untangling the Social Web
Graphs, Edges & Nodes: Untangling the Social WebConFoo
 

More from ConFoo (20)

The business behind open source
The business behind open sourceThe business behind open source
The business behind open source
 
Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?Security 202 - Are you sure your site is secure?
Security 202 - Are you sure your site is secure?
 
OWASP Enterprise Security API
OWASP Enterprise Security APIOWASP Enterprise Security API
OWASP Enterprise Security API
 
Opensource Authentication and Authorization
Opensource Authentication and AuthorizationOpensource Authentication and Authorization
Opensource Authentication and Authorization
 
Introduction à la sécurité des WebServices
Introduction à la sécurité des WebServicesIntroduction à la sécurité des WebServices
Introduction à la sécurité des WebServices
 
Le bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuagesLe bon, la brute et le truand dans les nuages
Le bon, la brute et le truand dans les nuages
 
The Solar Framework for PHP
The Solar Framework for PHPThe Solar Framework for PHP
The Solar Framework for PHP
 
Décrire un projet PHP dans des rapports
Décrire un projet PHP dans des rapportsDécrire un projet PHP dans des rapports
Décrire un projet PHP dans des rapports
 
Server Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and WatchdogServer Administration in Python with Fabric, Cuisine and Watchdog
Server Administration in Python with Fabric, Cuisine and Watchdog
 
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+Marrow: A Meta-Framework for Python 2.6+ and 3.1+
Marrow: A Meta-Framework for Python 2.6+ and 3.1+
 
Metaprogramming in Ruby
Metaprogramming in RubyMetaprogramming in Ruby
Metaprogramming in Ruby
 
Scalable Architecture 101
Scalable Architecture 101Scalable Architecture 101
Scalable Architecture 101
 
As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?As-t-on encore besoin d'un framework web ?
As-t-on encore besoin d'un framework web ?
 
Pragmatic Guide to Git
Pragmatic Guide to GitPragmatic Guide to Git
Pragmatic Guide to Git
 
Building servers with Node.js
Building servers with Node.jsBuilding servers with Node.js
Building servers with Node.js
 
An Overview of Flash Storage for Databases
An Overview of Flash Storage for DatabasesAn Overview of Flash Storage for Databases
An Overview of Flash Storage for Databases
 
Android Jump Start
Android Jump StartAndroid Jump Start
Android Jump Start
 
Develop mobile applications with Flex
Develop mobile applications with FlexDevelop mobile applications with Flex
Develop mobile applications with Flex
 
WordPress pour le développement d'aplications web
WordPress pour le développement d'aplications webWordPress pour le développement d'aplications web
WordPress pour le développement d'aplications web
 
Graphs, Edges & Nodes: Untangling the Social Web
Graphs, Edges & Nodes: Untangling the Social WebGraphs, Edges & Nodes: Untangling the Social Web
Graphs, Edges & Nodes: Untangling the Social Web
 

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

Think Mobile First, Then Enhance

  • 1. Think Mobile First Then Enhance Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 2. @karlpro Karl Dubost Opera Software Developer Relations Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 3. Toys? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 4. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 5. Mobile? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 6. Mobile? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 7. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 8. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 9. How far is the screen? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 10. Screens… Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 11. WAP, C-HTML, … Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 12. Do Nothing Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 13. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 14. Liquid or Semi-Liquid Layout Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 15. www. m. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 16. User Agent Sniffing? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 17. User Agent Sniffing! Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 18. User Agents… Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 19. Cookies… if not then Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 20. HTML Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 21. viewport Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 22. viewport <meta name="viewport" content="wi See @goetter http://slidesha.re/ew4LVM Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 23. media queries Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 24. mediaqueries See @ppk http://www.quirksmode.org/blog/archives/2010/09/combining_meta.html body {// basic styles} @media all and (max-width: 600px) { body {// extra styles for mobile}} Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 25. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 26. user experience Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 27. Mobile strategy… mess. Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 28. Logs & Market Share Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 29. Ouch! Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 30. User agent… again Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 31. Meh… Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 32. Time To Think Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 33. Simplicity, Basics, Users Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 34. mediaqueries See @ppk http://www.quirksmode.org/blog/archives/2010/09/combining_meta.html body {// basic styles} @media all and (max-width: 600px) { body {// extra styles for mobile}} @media all and (min-width: 600px) { body {// extra styles for desktop}} Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 35. Tools & Techniques Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 36. Co-hosted files Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 37. Sprites Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 38. gzip Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 39. remote debugging Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 40. Opera Dragonfly Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 41. love hate Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 42. Understand Users Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 43. Think mobile first how come this more usable on desktop too Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow
  • 44. Karl Dubost @karlpro my.opera.com/karlcow questions? Think Mobile First, Then Enhance - Karl Dubost - http://my.opera.com/karlcow