SlideShare a Scribd company logo
1 of 41
Download to read offline
Reward & Punishment
or Progressive Enhancement & Intentional Degradation

by Elliot Jay Stocks
elliotjaystocks.com/geeknight
What Is a Reward?
What Is a Reward?
A visual treat for the more capable browser
What Is a Reward?
A visual treat for the more capable browser, e.g:

Drop shadows on text (CSS3 spec, Safari / Opera 9.5)
Full PNG alpha transparency (no IE6 without hack)




       si8.shauninman.com
What Is a Reward?
A visual treat for the more capable browser, e.g:

Drop shadows on text (CSS3 spec, Safari / Opera 9.5)
Full PNG alpha transparency (no IE6 without hack)
What Is a Punishment?
What Is a Punishment?
A decision to REMOVE visual treats
What Is a Punishment?
A decision to REMOVE visual treats

• The designer giveth... and the designer taketh away!
Just because a browser supports a feature doesn’t mean
you have to offer it
What Is a Punishment?
A decision to REMOVE visual treats

• The designer giveth... and the designer taketh away!
Just because a browser supports a feature doesn’t mean
you have to offer it

• Don’t be forced into hacking
Feature support can require complex hacks and it’s often
not necessary
What Is a Punishment?
A decision to REMOVE visual treats

• The designer giveth... and the designer taketh away!
Just because a browser supports a feature doesn’t mean
you have to offer it

• Don’t be forced into hacking
Feature support can require complex hacks and it’s often
not necessary

• Don’t compromise the neatness of your code
Avoid littering markup with unnecessary classes and IDs
Reward & Punishment
In Practice: elliotjaystocks.com
Reward & Punishment
In Practice: elliotjaystocks.com
To reduce the need for unnecessary class names, more
advanced CSS selectors were used.
Reward & Punishment
In Practice: elliotjaystocks.com
To reduce the need for unnecessary class names, more
advanced CSS selectors were used.

These selectors are not supported by IE6 and as a
result it lacks some of the visual treats...
Attribute Selectors
ul.blogroll li a[href=quot;http://hicksdesign.co.ukquot;]
{ background:url(../images/hicksFavicon.ico) }
Attribute Selectors
ul.blogroll li a[href=quot;http://hicksdesign.co.ukquot;]
{ background:url(../images/hicksFavicon.ico) }

     Safari                                 IE6
Adjacent Sibling Selectors
ol.portfolioList li h2+a:hover { border:none }
Adjacent Sibling Selectors
ol.portfolioList li h2+a:hover { border:none }


Safari                       IE6
Reward & Punishment
In Practice: stuffandnonsense.co.uk
Safari               IE6
But Why Reward or Punish?
But Why Reward or Punish?
• Encourage users to adopt modern browsers
But Why Reward or Punish?
• Encourage users to adopt modern browsers
• Encourage browser vendors to create modern browsers
But Why Reward or Punish?
• Encourage users to adopt modern browsers
• Encourage browser vendors to create modern browsers
• Push technology and ideologies forward
A Word of Warning
A Word of Warning
• Not suitable in some commercial environments
A Word of Warning
• Not suitable in some commercial environments
• Pay attention to client requirements
A Word of Warning
• Not suitable in some commercial environments
• Pay attention to client requirements
• Adapt to suit your target audience
When In Doubt...
When In Doubt...
... use a badge!
Accessibility:
Catering For Users Without
Resorting To Punishment
Accessibility:
Catering For Users Without
Resorting To Punishment
In some circumstances, a browser’s lack of support
for certain features can ruin the user experience.
Accessibility:
Catering For Users Without
Resorting To Punishment
In some circumstances, a browser’s lack of support
for certain features can ruin the user experience.

In this instance, alternative display systems should
be considered.
Problem: JS Tab Navigation
The absolute positioning used to display the different
information boxes on rollover is rendered useless if the
user has Javascript disabled.
Solution: Specific Styles For
Javascript-Disabled Users
Solution: Specific Styles For
Javascript-Disabled Users
1. Use Javascript to write the class of hasJavascript to
the <body> tag. No Javascript? No hasJavascript class!
Solution: Specific Styles For
Javascript-Disabled Users
1. Use Javascript to write the class of hasJavascript to
the <body> tag. No Javascript? No hasJavascript class!

2. Use CSS to style descendants of hasJavascript
differently; e.g:
body div { background:#000 }
body.hasJavascript div { background:#fff }
Solution: Specific Styles For
Javascript-Disabled Users
Users without Javascript see a completely different
navigation system. Hurrah!
Conclusion
Conclusion
• Decide whether to reward or punish:
  - What are the browser’s capabilities?
  - Who is the target user / browser?
Conclusion
• Decide whether to reward or punish:
  - What are the browser’s capabilities?
  - Who is the target user / browser?

• Be gentle:
  - Proceed with caution
  - Consider displaying a warning ‘badge’
Conclusion
• Decide whether to reward or punish:
  - What are the browser’s capabilities?
  - Who is the target user / browser?

• Be gentle:
  - Proceed with caution
  - Consider displaying a warning ‘badge’

• Stay accessible:
  - Usability is more important than punishment
  - If necessary, offer alternative styling for different browsers
Thank You
elliotjaystocks.com/geeknight

More Related Content

What's hot

Comparison between behaviorist theory and cognitivist theory
Comparison between behaviorist theory and cognitivist theoryComparison between behaviorist theory and cognitivist theory
Comparison between behaviorist theory and cognitivist theoryyashpalsinhgohil1111
 
Operant conditioning - skinner
Operant conditioning - skinnerOperant conditioning - skinner
Operant conditioning - skinnerR-let Canite
 
Individual difference and its effects on learning
Individual difference and its effects on learningIndividual difference and its effects on learning
Individual difference and its effects on learningNazish Jamali
 
Neuroscience of Learning: Hebb's Theory
Neuroscience of Learning: Hebb's TheoryNeuroscience of Learning: Hebb's Theory
Neuroscience of Learning: Hebb's Theoryrachelhch
 
Piaget's stages of cognitive development
Piaget's stages of cognitive developmentPiaget's stages of cognitive development
Piaget's stages of cognitive developmentInternational advisers
 
ALBERT BANDURA Social Learning Theory
ALBERT BANDURA Social Learning TheoryALBERT BANDURA Social Learning Theory
ALBERT BANDURA Social Learning TheoryLadie Ballesteros
 
SEXUAL HARRASSMENT POWERPOINT
SEXUAL HARRASSMENT POWERPOINTSEXUAL HARRASSMENT POWERPOINT
SEXUAL HARRASSMENT POWERPOINTAndrew Schwartz
 
The meaning of Discipline
The meaning of Discipline The meaning of Discipline
The meaning of Discipline Neeraj Mahajan
 
Developmental psychology nature
Developmental psychology natureDevelopmental psychology nature
Developmental psychology natureMehreen Khan
 
Cognitive (bloom taxonomy).ppt
Cognitive (bloom taxonomy).pptCognitive (bloom taxonomy).ppt
Cognitive (bloom taxonomy).pptAli Sufyan
 
Dealing with Workplace Misconduct
Dealing with Workplace MisconductDealing with Workplace Misconduct
Dealing with Workplace MisconductAzamri Dollah
 
Classical conditioning & Operant conditioning
Classical conditioning & Operant conditioningClassical conditioning & Operant conditioning
Classical conditioning & Operant conditioningAndrew Freiman
 
AP Psych Final Project
AP Psych Final ProjectAP Psych Final Project
AP Psych Final Projectleahromm
 
Stages of Cognitive Development - J. Piaget
Stages of Cognitive Development - J. PiagetStages of Cognitive Development - J. Piaget
Stages of Cognitive Development - J. PiagetMelvin Jacinto
 
B. f skinner operant conditioning presntation 2
B. f skinner operant conditioning presntation 2B. f skinner operant conditioning presntation 2
B. f skinner operant conditioning presntation 2Gordon Gyasi Yeboah Junior
 
Teaching thinking and problem solving skills
Teaching thinking and problem solving skillsTeaching thinking and problem solving skills
Teaching thinking and problem solving skillsAloy Salas
 

What's hot (20)

Operant conditiong
Operant conditiong Operant conditiong
Operant conditiong
 
Comparison between behaviorist theory and cognitivist theory
Comparison between behaviorist theory and cognitivist theoryComparison between behaviorist theory and cognitivist theory
Comparison between behaviorist theory and cognitivist theory
 
Operant conditioning - skinner
Operant conditioning - skinnerOperant conditioning - skinner
Operant conditioning - skinner
 
Individual difference and its effects on learning
Individual difference and its effects on learningIndividual difference and its effects on learning
Individual difference and its effects on learning
 
Neuroscience of Learning: Hebb's Theory
Neuroscience of Learning: Hebb's TheoryNeuroscience of Learning: Hebb's Theory
Neuroscience of Learning: Hebb's Theory
 
Piaget's stages of cognitive development
Piaget's stages of cognitive developmentPiaget's stages of cognitive development
Piaget's stages of cognitive development
 
ALBERT BANDURA Social Learning Theory
ALBERT BANDURA Social Learning TheoryALBERT BANDURA Social Learning Theory
ALBERT BANDURA Social Learning Theory
 
SEXUAL HARRASSMENT POWERPOINT
SEXUAL HARRASSMENT POWERPOINTSEXUAL HARRASSMENT POWERPOINT
SEXUAL HARRASSMENT POWERPOINT
 
The meaning of Discipline
The meaning of Discipline The meaning of Discipline
The meaning of Discipline
 
Prenatal Development
Prenatal DevelopmentPrenatal Development
Prenatal Development
 
Developmental psychology nature
Developmental psychology natureDevelopmental psychology nature
Developmental psychology nature
 
Cognitive (bloom taxonomy).ppt
Cognitive (bloom taxonomy).pptCognitive (bloom taxonomy).ppt
Cognitive (bloom taxonomy).ppt
 
Dealing with Workplace Misconduct
Dealing with Workplace MisconductDealing with Workplace Misconduct
Dealing with Workplace Misconduct
 
'How To Motivate Students’
'How To Motivate Students’'How To Motivate Students’
'How To Motivate Students’
 
Classical conditioning & Operant conditioning
Classical conditioning & Operant conditioningClassical conditioning & Operant conditioning
Classical conditioning & Operant conditioning
 
AP Psych Final Project
AP Psych Final ProjectAP Psych Final Project
AP Psych Final Project
 
Stages of Cognitive Development - J. Piaget
Stages of Cognitive Development - J. PiagetStages of Cognitive Development - J. Piaget
Stages of Cognitive Development - J. Piaget
 
Behavioural theory of learning
Behavioural theory of learningBehavioural theory of learning
Behavioural theory of learning
 
B. f skinner operant conditioning presntation 2
B. f skinner operant conditioning presntation 2B. f skinner operant conditioning presntation 2
B. f skinner operant conditioning presntation 2
 
Teaching thinking and problem solving skills
Teaching thinking and problem solving skillsTeaching thinking and problem solving skills
Teaching thinking and problem solving skills
 

Similar to Reward & Punishment

We Need To Talk About IE6
We Need To Talk About IE6We Need To Talk About IE6
We Need To Talk About IE6elliotjaystocks
 
Active Web Development
Active Web DevelopmentActive Web Development
Active Web DevelopmentDivya Manian
 
It's Business Time: The Graceful Degradation of CSS3
It's Business Time: The Graceful Degradation of CSS3It's Business Time: The Graceful Degradation of CSS3
It's Business Time: The Graceful Degradation of CSS3Denise Jacobs
 
Building Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalBuilding Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalFour Kitchens
 
Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App ChallengesJason Grigsby
 
RWD in the Wild
RWD in the WildRWD in the Wild
RWD in the WildRich Quick
 
Conquering Gef Part2: Building graphical web-apps with Eclipse
Conquering Gef Part2: Building graphical web-apps with EclipseConquering Gef Part2: Building graphical web-apps with Eclipse
Conquering Gef Part2: Building graphical web-apps with EclipseVineet Sinha
 
Wp responsive-theme-framework
Wp responsive-theme-frameworkWp responsive-theme-framework
Wp responsive-theme-frameworkDamien Oh
 
How I learned to stop worrying and love embedding JavaScript
How I learned to stop worrying and love embedding JavaScriptHow I learned to stop worrying and love embedding JavaScript
How I learned to stop worrying and love embedding JavaScriptKevin Read
 
Embedding V8 in Android apps with Ejecta-V8
Embedding V8 in Android apps with Ejecta-V8Embedding V8 in Android apps with Ejecta-V8
Embedding V8 in Android apps with Ejecta-V8Kevin Read
 
The Sankofa of CSS3: Moving forward while looking back
The Sankofa of CSS3: Moving forward while looking backThe Sankofa of CSS3: Moving forward while looking back
The Sankofa of CSS3: Moving forward while looking backDenise Jacobs
 
Debunking Web Design Myths
Debunking Web Design MythsDebunking Web Design Myths
Debunking Web Design Mythselliotjaystocks
 
Responsive Web Design: Clever Tips and Techniques
Responsive Web Design: Clever Tips and TechniquesResponsive Web Design: Clever Tips and Techniques
Responsive Web Design: Clever Tips and TechniquesVitaly Friedman
 
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...Marco Cedaro
 
Building Your Own Native App Visual Testing Module with Appium by Wim Selles
Building Your Own Native App Visual Testing Module with Appium by Wim SellesBuilding Your Own Native App Visual Testing Module with Appium by Wim Selles
Building Your Own Native App Visual Testing Module with Appium by Wim SellesSauce Labs
 
Building Your Own Native App Visual Testing Module with Appium
Building Your Own Native App  Visual Testing Module with AppiumBuilding Your Own Native App  Visual Testing Module with Appium
Building Your Own Native App Visual Testing Module with AppiumWim Selles
 
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...railsconf
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?Denise Jacobs
 

Similar to Reward & Punishment (20)

We Need To Talk About IE6
We Need To Talk About IE6We Need To Talk About IE6
We Need To Talk About IE6
 
Active Web Development
Active Web DevelopmentActive Web Development
Active Web Development
 
It's Business Time: The Graceful Degradation of CSS3
It's Business Time: The Graceful Degradation of CSS3It's Business Time: The Graceful Degradation of CSS3
It's Business Time: The Graceful Degradation of CSS3
 
Building Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalBuilding Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with Drupal
 
CSS 3
CSS 3CSS 3
CSS 3
 
Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
 
RWD in the Wild
RWD in the WildRWD in the Wild
RWD in the Wild
 
Conquering Gef Part2: Building graphical web-apps with Eclipse
Conquering Gef Part2: Building graphical web-apps with EclipseConquering Gef Part2: Building graphical web-apps with Eclipse
Conquering Gef Part2: Building graphical web-apps with Eclipse
 
Wp responsive-theme-framework
Wp responsive-theme-frameworkWp responsive-theme-framework
Wp responsive-theme-framework
 
How I learned to stop worrying and love embedding JavaScript
How I learned to stop worrying and love embedding JavaScriptHow I learned to stop worrying and love embedding JavaScript
How I learned to stop worrying and love embedding JavaScript
 
Embedding V8 in Android apps with Ejecta-V8
Embedding V8 in Android apps with Ejecta-V8Embedding V8 in Android apps with Ejecta-V8
Embedding V8 in Android apps with Ejecta-V8
 
The Sankofa of CSS3: Moving forward while looking back
The Sankofa of CSS3: Moving forward while looking backThe Sankofa of CSS3: Moving forward while looking back
The Sankofa of CSS3: Moving forward while looking back
 
Debunking Web Design Myths
Debunking Web Design MythsDebunking Web Design Myths
Debunking Web Design Myths
 
Responsive Web Design: Clever Tips and Techniques
Responsive Web Design: Clever Tips and TechniquesResponsive Web Design: Clever Tips and Techniques
Responsive Web Design: Clever Tips and Techniques
 
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...
 
Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework
 
Building Your Own Native App Visual Testing Module with Appium by Wim Selles
Building Your Own Native App Visual Testing Module with Appium by Wim SellesBuilding Your Own Native App Visual Testing Module with Appium by Wim Selles
Building Your Own Native App Visual Testing Module with Appium by Wim Selles
 
Building Your Own Native App Visual Testing Module with Appium
Building Your Own Native App  Visual Testing Module with AppiumBuilding Your Own Native App  Visual Testing Module with Appium
Building Your Own Native App Visual Testing Module with Appium
 
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
 
CSS3: Are you experienced?
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
 

More from elliotjaystocks

Things I have Learned as an Accidental Businessman
Things I have Learned as an Accidental BusinessmanThings I have Learned as an Accidental Businessman
Things I have Learned as an Accidental Businessmanelliotjaystocks
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designerselliotjaystocks
 
Stop Worrying & Get On With It (WDC Bristol 2009)
Stop Worrying & Get On With It (WDC Bristol 2009)Stop Worrying & Get On With It (WDC Bristol 2009)
Stop Worrying & Get On With It (WDC Bristol 2009)elliotjaystocks
 
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...elliotjaystocks
 
Stop Worrying & Get On With It (FOWD Tour 2009)
Stop Worrying & Get On With It (FOWD Tour 2009)Stop Worrying & Get On With It (FOWD Tour 2009)
Stop Worrying & Get On With It (FOWD Tour 2009)elliotjaystocks
 
Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2elliotjaystocks
 
Professional Photoshop Effects
Professional Photoshop EffectsProfessional Photoshop Effects
Professional Photoshop Effectselliotjaystocks
 
Close Your Browser: Finding Inspiration In The Offline World
Close Your Browser: Finding Inspiration In The Offline WorldClose Your Browser: Finding Inspiration In The Offline World
Close Your Browser: Finding Inspiration In The Offline Worldelliotjaystocks
 

More from elliotjaystocks (14)

Things I have Learned as an Accidental Businessman
Things I have Learned as an Accidental BusinessmanThings I have Learned as an Accidental Businessman
Things I have Learned as an Accidental Businessman
 
The Story of 8 Faces
The Story of 8 FacesThe Story of 8 Faces
The Story of 8 Faces
 
FOWD NYC 2009
FOWD NYC 2009FOWD NYC 2009
FOWD NYC 2009
 
WordPress Theme Development for Designers
WordPress Theme Development for DesignersWordPress Theme Development for Designers
WordPress Theme Development for Designers
 
Stop Worrying & Get On With It (WDC Bristol 2009)
Stop Worrying & Get On With It (WDC Bristol 2009)Stop Worrying & Get On With It (WDC Bristol 2009)
Stop Worrying & Get On With It (WDC Bristol 2009)
 
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...
Stop Worrying & Get On With It: Progressive Enhancement & Intentional Degrada...
 
Stop Worrying & Get On With It (FOWD Tour 2009)
Stop Worrying & Get On With It (FOWD Tour 2009)Stop Worrying & Get On With It (FOWD Tour 2009)
Stop Worrying & Get On With It (FOWD Tour 2009)
 
Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Type
 
Professional Photoshop Effects
Professional Photoshop EffectsProfessional Photoshop Effects
Professional Photoshop Effects
 
I Care Because You Do
I Care Because You DoI Care Because You Do
I Care Because You Do
 
Close Your Browser: Finding Inspiration In The Offline World
Close Your Browser: Finding Inspiration In The Offline WorldClose Your Browser: Finding Inspiration In The Offline World
Close Your Browser: Finding Inspiration In The Offline World
 
Print Is The New Web
Print Is The New WebPrint Is The New Web
Print Is The New Web
 
FOWD November 2007
FOWD November 2007FOWD November 2007
FOWD November 2007
 

Recently uploaded

🐬 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
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
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
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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...
 
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...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

Reward & Punishment

  • 1. Reward & Punishment or Progressive Enhancement & Intentional Degradation by Elliot Jay Stocks elliotjaystocks.com/geeknight
  • 2. What Is a Reward?
  • 3. What Is a Reward? A visual treat for the more capable browser
  • 4. What Is a Reward? A visual treat for the more capable browser, e.g: Drop shadows on text (CSS3 spec, Safari / Opera 9.5) Full PNG alpha transparency (no IE6 without hack) si8.shauninman.com
  • 5. What Is a Reward? A visual treat for the more capable browser, e.g: Drop shadows on text (CSS3 spec, Safari / Opera 9.5) Full PNG alpha transparency (no IE6 without hack)
  • 6. What Is a Punishment?
  • 7. What Is a Punishment? A decision to REMOVE visual treats
  • 8. What Is a Punishment? A decision to REMOVE visual treats • The designer giveth... and the designer taketh away! Just because a browser supports a feature doesn’t mean you have to offer it
  • 9. What Is a Punishment? A decision to REMOVE visual treats • The designer giveth... and the designer taketh away! Just because a browser supports a feature doesn’t mean you have to offer it • Don’t be forced into hacking Feature support can require complex hacks and it’s often not necessary
  • 10. What Is a Punishment? A decision to REMOVE visual treats • The designer giveth... and the designer taketh away! Just because a browser supports a feature doesn’t mean you have to offer it • Don’t be forced into hacking Feature support can require complex hacks and it’s often not necessary • Don’t compromise the neatness of your code Avoid littering markup with unnecessary classes and IDs
  • 11. Reward & Punishment In Practice: elliotjaystocks.com
  • 12. Reward & Punishment In Practice: elliotjaystocks.com To reduce the need for unnecessary class names, more advanced CSS selectors were used.
  • 13. Reward & Punishment In Practice: elliotjaystocks.com To reduce the need for unnecessary class names, more advanced CSS selectors were used. These selectors are not supported by IE6 and as a result it lacks some of the visual treats...
  • 14. Attribute Selectors ul.blogroll li a[href=quot;http://hicksdesign.co.ukquot;] { background:url(../images/hicksFavicon.ico) }
  • 15. Attribute Selectors ul.blogroll li a[href=quot;http://hicksdesign.co.ukquot;] { background:url(../images/hicksFavicon.ico) } Safari IE6
  • 16. Adjacent Sibling Selectors ol.portfolioList li h2+a:hover { border:none }
  • 17. Adjacent Sibling Selectors ol.portfolioList li h2+a:hover { border:none } Safari IE6
  • 18. Reward & Punishment In Practice: stuffandnonsense.co.uk Safari IE6
  • 19. But Why Reward or Punish?
  • 20. But Why Reward or Punish? • Encourage users to adopt modern browsers
  • 21. But Why Reward or Punish? • Encourage users to adopt modern browsers • Encourage browser vendors to create modern browsers
  • 22. But Why Reward or Punish? • Encourage users to adopt modern browsers • Encourage browser vendors to create modern browsers • Push technology and ideologies forward
  • 23. A Word of Warning
  • 24. A Word of Warning • Not suitable in some commercial environments
  • 25. A Word of Warning • Not suitable in some commercial environments • Pay attention to client requirements
  • 26. A Word of Warning • Not suitable in some commercial environments • Pay attention to client requirements • Adapt to suit your target audience
  • 28. When In Doubt... ... use a badge!
  • 29. Accessibility: Catering For Users Without Resorting To Punishment
  • 30. Accessibility: Catering For Users Without Resorting To Punishment In some circumstances, a browser’s lack of support for certain features can ruin the user experience.
  • 31. Accessibility: Catering For Users Without Resorting To Punishment In some circumstances, a browser’s lack of support for certain features can ruin the user experience. In this instance, alternative display systems should be considered.
  • 32. Problem: JS Tab Navigation The absolute positioning used to display the different information boxes on rollover is rendered useless if the user has Javascript disabled.
  • 33. Solution: Specific Styles For Javascript-Disabled Users
  • 34. Solution: Specific Styles For Javascript-Disabled Users 1. Use Javascript to write the class of hasJavascript to the <body> tag. No Javascript? No hasJavascript class!
  • 35. Solution: Specific Styles For Javascript-Disabled Users 1. Use Javascript to write the class of hasJavascript to the <body> tag. No Javascript? No hasJavascript class! 2. Use CSS to style descendants of hasJavascript differently; e.g: body div { background:#000 } body.hasJavascript div { background:#fff }
  • 36. Solution: Specific Styles For Javascript-Disabled Users Users without Javascript see a completely different navigation system. Hurrah!
  • 38. Conclusion • Decide whether to reward or punish: - What are the browser’s capabilities? - Who is the target user / browser?
  • 39. Conclusion • Decide whether to reward or punish: - What are the browser’s capabilities? - Who is the target user / browser? • Be gentle: - Proceed with caution - Consider displaying a warning ‘badge’
  • 40. Conclusion • Decide whether to reward or punish: - What are the browser’s capabilities? - Who is the target user / browser? • Be gentle: - Proceed with caution - Consider displaying a warning ‘badge’ • Stay accessible: - Usability is more important than punishment - If necessary, offer alternative styling for different browsers