Rabbit Hole: A User Experience Case Study 
Birdie Golden, Micah Darling, Steven Ray 
User Experience Designers/Developers
ENVISIONING
Where to begin… • The Bright Idea 
• Persona Development 
• White Board Sessions 
Every project needs a starting point. 
Sometimes, this can be one of the most 
challenging parts of the process.
The Bright Idea 
Our Concept 
• Something Fun 
– Hasn’t been done yet 
– Provides entertainment 
• Something Useful 
– Travel helper 
– Fixes boredom 
– Experience new stuff 
– Out of town? Encourages 
getting away from hotel bar!
Persona Development 
Users 
Who’s using this thing? 
– Age 
– Pain points 
– Technical abilities 
– Business tripper 
– The family 
– Weekend adventurers
Persona Development 
Method 
• How do they use it? 
– Mobile and desktop 
– Wired in and on the go 
• What is their Goal? 
– Easy to use 
– Provides entertainment 
– Experience something new 
– Road trip!
White Board Sessions 
Strategy 
• Tailoring down a million ideas 
• Break up work 
– Envision 
– Design 
– Develop 
• Driving factor - deadline
White Board Sessions 
Core Functionality 
• Separating 1.0 from 2.0 
• What was vital in 1.0 
• What could make it by deadline
White Board Sessions 
The Future 
• More search filters 
• Saved to database itineraries 
• More transit options 
– Biking 
– Walking 
• The ability to share! 
– Saved searches 
– Locations 
– Pictures
DESIGN AND BUILD
Build Process 
Modification and simplification of our client process 
• Early agreement on interface principles and technology 
foundation 
• Middle-stage agreement on Phase 1 features 
• Build functionality POC concurrent with Design phase 
• Integrate functionality into final design 
• Complete buildout and UAT within final design
Wireframes 
• Wireframes help us to: 
– Define layouts 
– Define placement of elements 
• Content 
• Navigation 
• Rabbit Hole wireframes: 
– Low-fidelity 
– Quick iterations
Interface principles 
• Responsive website instead of an app 
• All one page 
• Platform agnostic 
• Mobile first
Technology Foundation 
• Bootstrap 3 
• Jquery (with Sortable plugin from Jquery UI) 
• JSON to store/retrieve data 
• Font Awesome 
• Google Fonts 
• Google Maps, Places, Geolocation and Directions 
APIs 
• LESS (CSS framework) 
• Modernizr, Touch Punch (Touch capability for Radius 
slider and Itinerary sorting) 
• Bootstrap Validator (for validating Contact form)
Agreement on Phase 1 Features 
FOR PHASE TWO: 
• Additional trip types 
• Search filters 
• Itineraries saved to database 
• Additional transit types 
• Ability to share itineraries 
and searches 
PHASE ONE: 
• Multiple search terms and 
radius 
• Geolocation 
• Sortable, savable itinerary 
• Custom directions options 
• Site-related keywords to 
generate additional searches
Build Proof of Concept (POC) 
• Began building core functionality before design phase officially 
began 
– Scheduling 
– Work out technical issues 
– Inform design phase 
– Careful to work only on core functionality, with just enough interface to 
make it work, to avoid wasted development time 
– Make functionality as modular as possible, so it could easily be moved 
between interface elements 
• During Design phase, constant two-way feedback between 
designer and developer
Designing for Multiple Devices 
• Different screen sizes 
• Different types of interaction 
– Touch 
– Mouse 
• Different connection speeds
Responsive Design 
• Mobile first 
• Fluid layout 
• Media query breakpoint 
changes
Designing for Simplicity and Usability 
• Easy to use 
• Intuitive 
• Clear instructions 
• Tooltips 
• As few steps as possible 
• Fulfilling user expectations
Integrate functionality into final design 
• Took less than two days to 
marry things up 
– Day for integration 
– Day for bug fixes
Continue buildout and UAT 
• Rest of development took place within final design structure 
• Collaborative effort between developer/designer to solve 
unanticipated interface issues 
• Detailed styling 
• Fine-tuning interface 
– Key commands 
– Contextual help 
– Minimizing clicks 
• Merciless testing
Lightweight 
• About half a second for initial page load 
• Only 19 HTTP requests outside of Google Maps’ internal requests 
• All later requests done asynchronously 
• Minified code 
• Only 5 images on the entire site, none larger than 4K
Links 
• Bootstrap 3: 
http://getbootstrap.com/ 
• jQuery: http://jquery.com/ 
• Font Awesome icons: 
http://fontawesome.io/ 
• Google Fonts: 
https://www.google.com/fonts 
• Google Maps: 
https://developers.google.com/ma 
ps/documentation/javascript/ 
• LESS: http://lesscss.org/ 
• Bootstrap Validator: 
http://bootstrapvalidator.com/ 
• Pingdom speed tester: 
http://tools.pingdom.com/fpt/ 
• Compatibility: 
– Modernizr: http://modernizr.com/ 
– Touch Punch: 
http://touchpunch.furf.com/ 
• Generators: 
– Font Awesome PNGs: 
http://fa2png.io/ 
– Bootstrap buttons: 
http://www.plugolabs.com/twitter-bootstrap- 
button-generator/ 
– JS minifier: http://javascript-minifier. 
com/ 
– CSS minifier: http://cssminifier.com/

Rabbit Hole® – A User Experience Case StudyCx ux engage_2014_rabbit_hole

  • 1.
    Rabbit Hole: AUser Experience Case Study Birdie Golden, Micah Darling, Steven Ray User Experience Designers/Developers
  • 2.
  • 3.
    Where to begin…• The Bright Idea • Persona Development • White Board Sessions Every project needs a starting point. Sometimes, this can be one of the most challenging parts of the process.
  • 4.
    The Bright Idea Our Concept • Something Fun – Hasn’t been done yet – Provides entertainment • Something Useful – Travel helper – Fixes boredom – Experience new stuff – Out of town? Encourages getting away from hotel bar!
  • 5.
    Persona Development Users Who’s using this thing? – Age – Pain points – Technical abilities – Business tripper – The family – Weekend adventurers
  • 6.
    Persona Development Method • How do they use it? – Mobile and desktop – Wired in and on the go • What is their Goal? – Easy to use – Provides entertainment – Experience something new – Road trip!
  • 7.
    White Board Sessions Strategy • Tailoring down a million ideas • Break up work – Envision – Design – Develop • Driving factor - deadline
  • 8.
    White Board Sessions Core Functionality • Separating 1.0 from 2.0 • What was vital in 1.0 • What could make it by deadline
  • 9.
    White Board Sessions The Future • More search filters • Saved to database itineraries • More transit options – Biking – Walking • The ability to share! – Saved searches – Locations – Pictures
  • 10.
  • 11.
    Build Process Modificationand simplification of our client process • Early agreement on interface principles and technology foundation • Middle-stage agreement on Phase 1 features • Build functionality POC concurrent with Design phase • Integrate functionality into final design • Complete buildout and UAT within final design
  • 12.
    Wireframes • Wireframeshelp us to: – Define layouts – Define placement of elements • Content • Navigation • Rabbit Hole wireframes: – Low-fidelity – Quick iterations
  • 13.
    Interface principles •Responsive website instead of an app • All one page • Platform agnostic • Mobile first
  • 14.
    Technology Foundation •Bootstrap 3 • Jquery (with Sortable plugin from Jquery UI) • JSON to store/retrieve data • Font Awesome • Google Fonts • Google Maps, Places, Geolocation and Directions APIs • LESS (CSS framework) • Modernizr, Touch Punch (Touch capability for Radius slider and Itinerary sorting) • Bootstrap Validator (for validating Contact form)
  • 15.
    Agreement on Phase1 Features FOR PHASE TWO: • Additional trip types • Search filters • Itineraries saved to database • Additional transit types • Ability to share itineraries and searches PHASE ONE: • Multiple search terms and radius • Geolocation • Sortable, savable itinerary • Custom directions options • Site-related keywords to generate additional searches
  • 16.
    Build Proof ofConcept (POC) • Began building core functionality before design phase officially began – Scheduling – Work out technical issues – Inform design phase – Careful to work only on core functionality, with just enough interface to make it work, to avoid wasted development time – Make functionality as modular as possible, so it could easily be moved between interface elements • During Design phase, constant two-way feedback between designer and developer
  • 17.
    Designing for MultipleDevices • Different screen sizes • Different types of interaction – Touch – Mouse • Different connection speeds
  • 18.
    Responsive Design •Mobile first • Fluid layout • Media query breakpoint changes
  • 19.
    Designing for Simplicityand Usability • Easy to use • Intuitive • Clear instructions • Tooltips • As few steps as possible • Fulfilling user expectations
  • 20.
    Integrate functionality intofinal design • Took less than two days to marry things up – Day for integration – Day for bug fixes
  • 21.
    Continue buildout andUAT • Rest of development took place within final design structure • Collaborative effort between developer/designer to solve unanticipated interface issues • Detailed styling • Fine-tuning interface – Key commands – Contextual help – Minimizing clicks • Merciless testing
  • 22.
    Lightweight • Abouthalf a second for initial page load • Only 19 HTTP requests outside of Google Maps’ internal requests • All later requests done asynchronously • Minified code • Only 5 images on the entire site, none larger than 4K
  • 23.
    Links • Bootstrap3: http://getbootstrap.com/ • jQuery: http://jquery.com/ • Font Awesome icons: http://fontawesome.io/ • Google Fonts: https://www.google.com/fonts • Google Maps: https://developers.google.com/ma ps/documentation/javascript/ • LESS: http://lesscss.org/ • Bootstrap Validator: http://bootstrapvalidator.com/ • Pingdom speed tester: http://tools.pingdom.com/fpt/ • Compatibility: – Modernizr: http://modernizr.com/ – Touch Punch: http://touchpunch.furf.com/ • Generators: – Font Awesome PNGs: http://fa2png.io/ – Bootstrap buttons: http://www.plugolabs.com/twitter-bootstrap- button-generator/ – JS minifier: http://javascript-minifier. com/ – CSS minifier: http://cssminifier.com/

Editor's Notes

  • #18 You used to be able to design a website or web application for a specific resolution, set the site to a specific width and call it a day, but you can’t do that anymore. Now you have to account for things like: Different screen sizes Different types of interaction Different connection speeds So how do you approach designing for multiple devices?
  • #19 Many of you have probably heard us talk before about responsive design, but some of the key factors factors for us to design for were: Mobile first – designing first for mobile platforms. Helps to keep things simple and consistent without losing large pieces of functionality for mobile. Fluid layout – fits to any screen size. Media query breakpoint changes – font sizes, image sizes, layout and functionality can all be changed through setting define styles in media queries.
  • #20 Easy to use – can’t expect the users to all be great at figure out how to use new applications Intuitive – needs to feel natural to the user. Clear instructions – anytime we need to give instructions to help train the user, they need to be clear, short and simple. We include tooltips throughout for the user to learn about different actions that can be made. As few steps as possible – the goal is for the user to get what they want as quickly as they can. If we add too many steps to the process, they make get frustrated or lose interest. Fulfilling user expectation – anticipating user expectations can be difficult, but getting test user feedback is essential to finding those areas where a user may expect a certain behavior, and is thrown off when that doesn’t occur.