SlideShare a Scribd company logo
1 of 24
Download to read offline
THE UNSEEN EXPERIENCE
PUTTING DETAIL INTO THE WEB
Kevin Sweeney / @restlessdesign
ME
Kevin Sweeney
Lead Engineer (Front-End), Vimeo
@restlessdesign
github.com/restlessdesign
LITTLEBIGDETAILS
ELEMENTS OF DETAIL
Design
Technology
User Feedback
Iteration & Testing
USER EXPERIENCE PRINCIPLES
1.
2.
3.
4.

Progress & Feedback
Performance
Accessibility & Utility
Perception
PROGRESS & FEEDBACK
PROGRESS & FEEDBACK:

DESIGNERS
Introduce content with transitions where appropriate
(Vimeo.com/jobs)
Overlap animations on UI elements (Wufoo)
Animate progress bars with a secondary animation
moving in the opposing direction (View CodePen)
Prefer canvas to animated GIFs (View CodePen)
PROGRESS & FEEDBACK:

DEVELOPERS
Display visual feedback when async requests are pending
(Hover Me!)
Listen for online/offline events; react accordingly
Use File API to send only the bytes needed by backend
(Vimeo Uploader)
PERFORMANCE
PERFORMANCE:

DESIGNERS
Apply t x - h d wsparingly! (View CodePen)
etsao
Beware images with CSS filters applied (View CodePen)
Start small
Apply filter
Then scale up
Same concept applies for video
Fun Fact: Scanlines can obscure 50% of compression
artifacts!
PERFORMANCE:

DEVELOPERS
DNS prefetch your CDNs
Anticipate user actions; get there first (Vimeo Avatars)
Scroll spying
m u e o e m u e v r m u e o nvs. c i k
osmv, osoe, osdw
lc
Use r q e t n m t o F a eover s t n e v l
eusAiainrm
eItra
(View CodePen)
When in doubt…
“Don’t Guess It, Test it!”
—Paul Lewis (@aerotwist)
ACCESSIBILITY & UTILITY
ACCESSIBILITY & UTILITY:

DESIGNERS
Create large “back-to-mobile” buttons on desktop sites for
mobile users (GitHub | Vimeo)
Create assets unique to users and/or pages
Avatars (MonsterID)
Color bars (Vimeo)
No : o e without : o u !
hvr
fcs
ACCESSIBILITY & UTILITY:

DEVELOPERS
Anti-Pattern: Don’t render password inputs as part of a
form that does something critical
Save state using l c l t r g (View CodePen)
oaSoae
Leverage d c m n . i l and f v c n(Piecon)
ouettte
aio
Investigate browser and OS notifications (Demo)
PERCEPTION
PERCEPTION:

DESIGNERS
80% rule
Start your animation ~80% in; show the last 20%
Works best with simple, linear animations
Avoid red-to-blue hovers
Faster movement conveys faster progress (View
CodePen)
PERCEPTION:

DEVELOPERS
Retry requests if they fail the first time
Debounce rollover and rollout events (Amazon Menu)
“Rocket Sauce” (credit: @JohnKakoulides)
$(ant[rf"aacitvi()))advn(cik,fnto( {
$':o(he=jvsrp:od0]'.dEet'lc' ucin)
$'otn'.eSye'iiiiy,'idn)
(cnet)sttl(vsblt' hde';
};
)
THANK YOU!

More Related Content

What's hot

Automated Continuous Delivery for iOS
Automated Continuous Delivery for iOSAutomated Continuous Delivery for iOS
Automated Continuous Delivery for iOSEdu Caselles
 
Selenium Camp 2016
Selenium Camp 2016Selenium Camp 2016
Selenium Camp 2016Dan Cuellar
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeAxel Fontaine
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android StudioAkshay Chordiya
 
XP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryXP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryAxel Fontaine
 
Introduction to Appcelerator Titanium
Introduction to Appcelerator TitaniumIntroduction to Appcelerator Titanium
Introduction to Appcelerator TitaniumAdam Paxton
 
Future of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals itFuture of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals itSrinivasan Sekar
 

What's hot (9)

Automated Continuous Delivery for iOS
Automated Continuous Delivery for iOSAutomated Continuous Delivery for iOS
Automated Continuous Delivery for iOS
 
Selenium Camp 2016
Selenium Camp 2016Selenium Camp 2016
Selenium Camp 2016
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero Downtime
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android Studio
 
XP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryXP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous Delivery
 
Introduction to Appcelerator Titanium
Introduction to Appcelerator TitaniumIntroduction to Appcelerator Titanium
Introduction to Appcelerator Titanium
 
Future of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals itFuture of Mobile Automation, Appium Steals it
Future of Mobile Automation, Appium Steals it
 
Lezione 03 Introduzione a react
Lezione 03   Introduzione a reactLezione 03   Introduzione a react
Lezione 03 Introduzione a react
 
Lightning Design System
Lightning Design SystemLightning Design System
Lightning Design System
 

Viewers also liked

التربية وقضايا العصر الفرسان
التربية وقضايا العصر الفرسانالتربية وقضايا العصر الفرسان
التربية وقضايا العصر الفرسانSalah Abdelsalam
 
سيكولوجية التعلم الفرسان
سيكولوجية التعلم   الفرسانسيكولوجية التعلم   الفرسان
سيكولوجية التعلم الفرسانSalah Abdelsalam
 
Matheus l. e matheus w.1
Matheus l. e matheus w.1Matheus l. e matheus w.1
Matheus l. e matheus w.1rafaella1997
 
Brain project-Kelsi Mixon
Brain project-Kelsi MixonBrain project-Kelsi Mixon
Brain project-Kelsi MixonK_Mixon
 
Yasmin.d maria geovana
Yasmin.d  maria geovanaYasmin.d  maria geovana
Yasmin.d maria geovanarafaella1997
 
Nayara e nicoly =)
Nayara e nicoly =)Nayara e nicoly =)
Nayara e nicoly =)rafaella1997
 
Gabrielly cristina de jesus de suoza guilhrme lopese ...
Gabrielly  cristina  de     jesus        de       suoza      guilhrme lopese ...Gabrielly  cristina  de     jesus        de       suoza      guilhrme lopese ...
Gabrielly cristina de jesus de suoza guilhrme lopese ...rafaella1997
 

Viewers also liked (20)

Kethelyn
KethelynKethelyn
Kethelyn
 
Arthur & kiq
Arthur & kiqArthur & kiq
Arthur & kiq
 
التربية وقضايا العصر الفرسان
التربية وقضايا العصر الفرسانالتربية وقضايا العصر الفرسان
التربية وقضايا العصر الفرسان
 
سيكولوجية التعلم الفرسان
سيكولوجية التعلم   الفرسانسيكولوجية التعلم   الفرسان
سيكولوجية التعلم الفرسان
 
Matheus l. e matheus w.1
Matheus l. e matheus w.1Matheus l. e matheus w.1
Matheus l. e matheus w.1
 
Visita emei
Visita emeiVisita emei
Visita emei
 
Haiany e pollyana
Haiany e pollyanaHaiany e pollyana
Haiany e pollyana
 
Film genres
Film genresFilm genres
Film genres
 
4 unit 4
4 unit 44 unit 4
4 unit 4
 
Brain project-Kelsi Mixon
Brain project-Kelsi MixonBrain project-Kelsi Mixon
Brain project-Kelsi Mixon
 
Rafael e leticia
Rafael e leticiaRafael e leticia
Rafael e leticia
 
Yasmin.d maria geovana
Yasmin.d  maria geovanaYasmin.d  maria geovana
Yasmin.d maria geovana
 
Setting nct
Setting nctSetting nct
Setting nct
 
Camila e daniel
Camila e danielCamila e daniel
Camila e daniel
 
Nayara e nicoly =)
Nayara e nicoly =)Nayara e nicoly =)
Nayara e nicoly =)
 
Beatriz
BeatrizBeatriz
Beatriz
 
Gabrielly cristina de jesus de suoza guilhrme lopese ...
Gabrielly  cristina  de     jesus        de       suoza      guilhrme lopese ...Gabrielly  cristina  de     jesus        de       suoza      guilhrme lopese ...
Gabrielly cristina de jesus de suoza guilhrme lopese ...
 
Karina e priscila
Karina e priscilaKarina e priscila
Karina e priscila
 
الله
اللهالله
الله
 
Larisssa e suelen
Larisssa e suelenLarisssa e suelen
Larisssa e suelen
 

Similar to The Unseen Experience: Putting Detail Into The Web

Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Decksschwarzhoff
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open SourceAxway Appcelerator
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium TutorialKevin Whinnery
 
Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Kevin Whinnery
 
Ionic App Platform Overview
Ionic App Platform Overview Ionic App Platform Overview
Ionic App Platform Overview Ionic Framework
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerBill Scott
 
Videogram - Building a product with Sencha Touch
Videogram - Building a product with Sencha TouchVideogram - Building a product with Sencha Touch
Videogram - Building a product with Sencha TouchAlexander Wilhelm
 
Real World ionic Development
Real World ionic DevelopmentReal World ionic Development
Real World ionic DevelopmentChris Griffith
 
MHIT 603: Lecture 3 - Prototyping Tools
MHIT 603: Lecture 3 - Prototyping ToolsMHIT 603: Lecture 3 - Prototyping Tools
MHIT 603: Lecture 3 - Prototyping ToolsMark Billinghurst
 
Getting started with docker
Getting started with dockerGetting started with docker
Getting started with dockerSaim Safder
 
SeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With SeleniumSeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With Seleniumadamcarmi
 
Tutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSTutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSPhilipp Burgmer
 
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...Sanket Sahu
 
Angularjs Tutorial for Beginners
Angularjs Tutorial for BeginnersAngularjs Tutorial for Beginners
Angularjs Tutorial for Beginnersrajkamaltibacademy
 
Itea dev ops_course_topic1
Itea dev ops_course_topic1Itea dev ops_course_topic1
Itea dev ops_course_topic1Vadym Tymoshyk
 
Getting Started with Titanium
Getting Started with TitaniumGetting Started with Titanium
Getting Started with TitaniumKevin Whinnery
 
Silverlight in Internet Scenarios
Silverlight in Internet ScenariosSilverlight in Internet Scenarios
Silverlight in Internet ScenariosRicardo Fiel
 

Similar to The Unseen Experience: Putting Detail Into The Web (20)

Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Deck
 
Native Mobile Application Using Open Source
Native Mobile Application Using Open SourceNative Mobile Application Using Open Source
Native Mobile Application Using Open Source
 
OSCON Titanium Tutorial
OSCON Titanium TutorialOSCON Titanium Tutorial
OSCON Titanium Tutorial
 
Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)Titanium Overview (Mobile March 2011)
Titanium Overview (Mobile March 2011)
 
Ionic App Platform Overview
Ionic App Platform Overview Ionic App Platform Overview
Ionic App Platform Overview
 
Spec by Role
Spec by RoleSpec by Role
Spec by Role
 
Ionic in 30
Ionic in 30Ionic in 30
Ionic in 30
 
Lean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partnerLean Engineering: How to make Engineering a full Lean UX partner
Lean Engineering: How to make Engineering a full Lean UX partner
 
Videogram - Building a product with Sencha Touch
Videogram - Building a product with Sencha TouchVideogram - Building a product with Sencha Touch
Videogram - Building a product with Sencha Touch
 
Real World ionic Development
Real World ionic DevelopmentReal World ionic Development
Real World ionic Development
 
MHIT 603: Lecture 3 - Prototyping Tools
MHIT 603: Lecture 3 - Prototyping ToolsMHIT 603: Lecture 3 - Prototyping Tools
MHIT 603: Lecture 3 - Prototyping Tools
 
Getting started with docker
Getting started with dockerGetting started with docker
Getting started with docker
 
SeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With SeleniumSeConf2015: Advanced Automated Visual Testing With Selenium
SeConf2015: Advanced Automated Visual Testing With Selenium
 
Tutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJSTutorial: Develop Mobile Applications with AngularJS
Tutorial: Develop Mobile Applications with AngularJS
 
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...
The State of One Codebase For All The Platforms | Sanket Sahu | App.js Conf 2...
 
Angularjs Tutorial for Beginners
Angularjs Tutorial for BeginnersAngularjs Tutorial for Beginners
Angularjs Tutorial for Beginners
 
Itea dev ops_course_topic1
Itea dev ops_course_topic1Itea dev ops_course_topic1
Itea dev ops_course_topic1
 
Getting Started with Titanium
Getting Started with TitaniumGetting Started with Titanium
Getting Started with Titanium
 
Getting Started with Titanium
Getting Started with TitaniumGetting Started with Titanium
Getting Started with Titanium
 
Silverlight in Internet Scenarios
Silverlight in Internet ScenariosSilverlight in Internet Scenarios
Silverlight in Internet Scenarios
 

The Unseen Experience: Putting Detail Into The Web