1<!DOCTYPE html> 2<html lang="en-GB"> 3<head> 4<meta charset="UTF-8"> 5<meta name="viewport" content="width=device-width, initial-scale=1"> 6<link rel="pingback" href="https://alexpoole.info/xmlrpc.php"> 7<title>Blog – Alex Poole</title> 8<meta name='robots' content='max-image-preview:large' /> 9 <style>img:is([sizes="auto" i], [sizes^="auto," i]) { contain-intrinsic-size: 3000px 1500px }</style> 10 <link rel='dns-prefetch' href='//fonts.googleapis.com' /> 11<link rel="alternate" type="application/rss+xml" title="Alex Poole » Feed" href="https://alexpoole.info/feed/" /> 12<link rel="alternate" type="application/rss+xml" title="Alex Poole » Comments Feed" href="https://alexpoole.info/comments/feed/" />
13<script type="text/javascript"> 14/* <![CDATA[ */ 15window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/alexpoole.info\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.8.10"}}; 16/*! This file is auto-generated */ 17!function(s,n){var o,i,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),a=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===a[t]})}function u(e,t){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);for(var n=e.getImageData(16,16,1,1),a=0;a<n.data.length;a++)if(0!==n.data[a])return!1;return!0}function f(e,t,n,a){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\udde8\ud83c\uddf6","\ud83c\udde8\u200b\ud83c\uddf6")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!a(e,"\ud83e\udedf")}return!1}function g(e,t,n,a){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):s.createElement("canvas"),o=r.getContext("2d",{willReadFrequently:!0}),i=(o.textBaseline="top",o.font="600 32px Arial",{});return e.forEach(function(e){i[e]=t(o,e,n,a)}),i}function t(e){var t=s.createElement("script");t.src=e,t.defer=!0,s.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",i=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){s.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+g.toString()+"("+[JSON.stringify(i),f.toString(),p.toString(),u.toString()].join(",")+"));",a=new Blob([e],{type:"text/javascript"}),r=new Worker(URL.createObjectURL(a),{name:"wpTestEmojiSupports"});return void(r.onmessage=function(e){c(n=e.data),r.terminate(),t(n)})}catch(e){}c(n=g(i,f,p,u))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); 18/* ]]> */ 19</script>
19 20<style id='wp-emoji-styles-inline-css' type='text/css'> 21 22 img.wp-smiley, img.emoji { 23 display: inline !important; 24 border: none !important; 25 box-shadow: none !important; 26 height: 1em !important; 27 width: 1em !important; 28 margin: 0 0.07em !important; 29 vertical-align: -0.1em !important; 30 background: none !important; 31 padding: 0 !important; 32 } 33</style> 34<link rel='stylesheet' id='wp-block-library-css' href='https://alexpoole.info/wp-includes/css/dist/block-library/style.min.css?ver=6.8.10' type='text/css' media='all' /> 35<style id='classic-theme-styles-inline-css' type='text/css'> 36/*! This file is auto-generated */ 37.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} 38</style> 39<style id='global-styles-inline-css' type='text/css'> 40:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);
40--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}
40.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} 41:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} 42:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} 43:root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} 44</style> 45<link rel='stylesheet' id='eic_public-css' href='https://alexpoole.info/wp-content/plugins/easy-image-collage/css/public.css?ver=1.13.6' type='text/css' media='screen' /> 46<link rel='stylesheet' id='parent-style-css' href='https://alexpoole.info/wp-content/themes/graphy/style.css?ver=6.8.10' type='text/css' media='all' /> 47<link rel='stylesheet' id='graphy-font-css' href='https://fonts.googleapis.com/css?family=Source+Serif+Pro%3A400%7CLora%3A400%2C400italic%2C700&subset=latin%2Clatin-ext' type='text/css' media='all' /> 48<link rel='stylesheet' id='genericons-css' href='https://alexpoole.info/wp-content/themes/graphy/genericons/genericons.css?ver=3.4.1' type='text/css' media='all' /> 49<link rel='stylesheet' id='normalize-css' href='https://alexpoole.info/wp-content/themes/graphy/css/normalize.css?ver=4.1.1' type='text/css' media='all' /> 50<link rel='stylesheet' id='graphy-style-css' href='https://alexpoole.info/wp-content/themes/graphy-child/style.css?ver=2.3.2' type='text/css' media='all' /> 51<style id='akismet-widget-style-inline-css' type='text/css'> 52 53 .a-stats { 54 --akismet-color-mid-green: #357b49; 55 --akismet-color-white: #fff; 56 --akismet-color-light-grey: #f6f7f7; 57 58 max-width: 350px; 59 width: auto; 60 } 61 62 .a-stats * { 63 all: unset; 64 box-sizing: border-box; 65 } 66 67 .a-stats strong { 68 font-weight: 600; 69 } 70 71 .a-stats a.a-stats__link, 72 .a-stats a.a-stats__link:visited, 73 .a-stats a.a-stats__link:active { 74 background: var(--akismet-color-mid-green); 75 border: none; 76 box-shadow: none; 77 border-radius: 8px; 78 color: var(--akismet-color-white); 79 cursor: pointer; 80 display: block; 81 font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen-Sans', 'Ubuntu', 'Cantarell', 'Helvetica Neue', sans-serif; 82 font-weight: 500; 83 padding: 12px; 84 text-align: center; 85 text-decoration: none; 86 transition: all 0.2s ease; 87 } 88 89 /* Extra specificity to deal with TwentyTwentyOne focus style */ 90 .widget .a-stats a.a-stats__link:focus { 91 background: var(--akismet-color-mid-green); 92 color: var(--akismet-color-white); 93 text-decoration: none; 94 } 95 96 .a-stats a.a-stats__link:hover { 97 filter: brightness(110%); 98 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06), 0 0 2px rgba(0, 0, 0, 0.16); 99 } 100 101 .a-stats .count { 102 color: var(--akismet-color-white); 103 display: block; 104 font-size: 1.5em; 105 line-height: 1.4; 106 padding: 0 13px; 107 white-space: nowrap; 108 } 109 110</style>
111<script type="text/javascript" src="https://alexpoole.info/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script>
vendor: 1 bytes, line 111
111
112<script type="text/javascript" src="https://alexpoole.info/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script>
112 113<link rel="https://api.w.org/" href="https://alexpoole.info/wp-json/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://alexpoole.info/xmlrpc.php?rsd" /> 114<meta name="generator" content="WordPress 6.8.10" /> 115<style type="text/css">.eic-image .eic-image-caption {bottom: 0;left: 0;right: 0;text-align: left;font-size: 12px;color: rgba(255,255,255,1);background-color: rgba(0,0,0,0.7);}</style><link rel="alternate" href="https://alexpoole.info/blog/" hreflang="en" /> 116<link rel="alternate" href="https://alexpoole.info/fr/blog/" hreflang="fr" /> 117 <style type="text/css"> 118 /* Colors */ 119 120 </style> 121 </head> 122 123<body class="blog wp-theme-graphy wp-child-theme-graphy-child no-sidebar footer-3 has-avatars"> 124<div id="page" class="hfeed site"> 125 <a class="skip-link screen-reader-text" href="#content">Skip to content</a> 126 127 <header id="masthead" class="site-header"> 128 129 <div class="site-branding"> 130 <div class="site-title"><a href="https://alexpoole.info/" rel="home">Alex Poole</a></div> 131 <div class="site-description">User experience consultant</div> 132 </div><!-- .site-branding --> 133 134 <nav id="site-navigation" class="main-navigation"> 135 <button class="menu-toggle"><span class="menu-text">Menu</span></button> 136 <div class="menu-main-menu-container"><ul id="menu-main-menu" class="menu"><li id="menu-item-2139" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-home menu-item-2139"><a href="https://alexpoole.info/">Home</a></li> 137<li id="menu-item-2791" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2791"><a href="https://alexpoole.info/portfolio/">Portfolio</a></li> 138<li id="menu-item-2138" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-2068 current_page_item current_page_parent menu-item-2138"><a href="https://alexpoole.info/blog/" aria-current="page">Blog</a></li> 139<li id="menu-item-2132" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2132"><a href="https://alexpoole.info/about/">About me</a></li> 140<li id="LangSwitch"><a href="https://alexpoole.info/fr/blog/" title="Version française"><img src="https://alexpoole.info/wp-content/plugins/multisite-language-switcher/flags/fr.png" alt="fr_FR"/> Version française</a></li></ul></div> <form role="search" method="get" class="search-form" action="https://alexpoole.info/"> 141 <label> 142 <span class="screen-reader-text">Search for:</span> 143 <input type="search" class="search-field" placeholder="Search …" value="" name="s" /> 144 </label> 145 <input type="submit" class="search-submit" value="Search" /> 146 </form> </nav><!-- #site-navigation --> 147 148 149 </header><!-- #masthead --> 150 151 <div id="content" class="site-content"> 152 153 <div id="primary" class="content-area"> 154 <main id="main" class="site-main"> 155 156 157 158<div class="post-full post-full-summary"> 159 <article id="post-3109" class="post-3109 post type-post status-publish format-standard hentry category-agile-2 category-user-experience tag-articles tag-featured"> 160 <header class="entry-header"> 161 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/agile-2/" class="category category-119">Agile</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/user-experience/" class="category category-67">user experience</a></div><!-- .cat-links --> 162 <h2 class="entry-title"><a href="https://alexpoole.info/blog/how-agile-and-ux-can-work-together/" rel="bookmark">How Agile and UX can work together</a></h2> 163 <div class="entry-meta"> 164 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/how-agile-and-ux-can-work-together/" rel="bookmark"><time class="entry-date published updated" datetime="2017-01-20T14:28:27+01:00">January 20, 2017</time></a> </span> 165 <span class="byline">by <span class="author vcard"> 166 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 167 </span> 168 </span> 169 <span class="entry-meta-sep"> / </span> 170 <span class="comments-link"> 171 <a href="https://alexpoole.info/blog/how-agile-and-ux-can-work-together/#comments">3 Comments</a> </span> 172 </div><!-- .entry-meta --> 173 </header><!-- .entry-header --> 174 <div class="entry-content"> 175 <p>I can see 4 ways of UX fitting in with an Agile methodology like Scrum – and remember Agile is the philosophy, Scrum is a methodology for doing Agile. It can be problematic because the UX process and the Scrum sprint format donât naturally sync together. Like a relationship, you have to work at it for both parties to be happy.</p> 176<p>These recommendations are based on my own experience of several years working in Agile teams, and recent research of other peopleâs stories. Your experiences may differ…</p> 177<h2>Light</h2> 178<p>This light approach is the least disruptive and easiest to do. However, there is a some risk that the Scrum team, including the Product Owner, rejects some UX input for the simple reason that UX people arenât present in the Scrum team all the time. Theyâre not there during the daily standups and so canât defend UX when the team makes decisions like choosing which user stories to develop from the backlog.</p> 179<p>There are <strong>3 ways to intervene</strong> with this light approach, and you can combine any number of them as appropriate:</p> 180<h3>1 – A UX sprint before dev work starts [Minimum]</h3> 181<p>A UX research team defines the requirements, personas, user journeys, and wireframes of the <b>whole application</b> before dev work starts. They also validate the wireframes through conceptual walkthroughs with the customer and testing with users. It is important to have a <b>detailed interactive prototype</b> that the dev team can play with to get an instinctive feel for what they will be developing. This should include precise behaviours that the interface should demonstrate according to different user interactions. This is better than dense written specification documents as no one wants to read those.</p> 182<p>The <strong>Product Owner</strong> from the Scrum team is a member of this UX research team. When they start dev work, they define and choose user stories from the backlog which respect and support the design, and they can defend or further explain details of this design to dev team members.</p> 183<p>It is possible that no UX people will attend dev meetings, but they must at least be there to present the prototype to the Scrum team for the first dev sprint.</p> 184<p>In principle this is a one-shot deal for the UX team, but in reality they should intervene again near the end of the dev work, to test the final working application. There is a risk that developers have made changes to the interface or workflow without consulting the UX team in order to work around technical issues. Enough time should be built in to the schedule to smooth out these modifications and retest.</p> 185<h3>2 – Design spikes [Minimum]</h3> 186<p>
186If dev work has already begun, we can add value by helping the Scrum team to validate prototypes through user testing or other types of evaluation and communicate the benefits in Scrum terms – ie defining what user stories are really worth working on, thus making significant time savings.</p> 187<p>This approach requires no change in schedule or work method for the Scrum team, and the UX team can intervene at any time during or after the dev work. However, the <b>Product Owner</b> and perhaps the <b>Scrum Master</b> should take part in the UX activity, communicate the results to the Scrum team, and put those results into practice.</p> 188<p>It is possible that no UX people will attend dev meetings, but it would be good if they helped the Product Owner to communicate the results of the UX input to the Scrum team.</p> 189<h3>3 – A parallel UX team partially integrated with the dev team [Recommended]</h3> 190<p>As before, the <b>Product Owner</b> is a member of both the Scrum Team and the UX team. Both teams work in parallel, but the UX team still needs to start at least sprint or two before the dev team.</p> 191<p>The UX team has an idea of the overall application and defines the user stories through a research phase before the dev team starts work. At this point they can take 1 of 2 approaches:</p> 192<ol> 193<li>If they have <strong>enough lead time</strong>, the UX team can research and create a prototype of the complete system, and deliver it as the stable product vision to the dev team. They then act as a support role to help developers translate the details into a working product. They do this by being present in certain meetings or even by sitting in the dev team 1 or 2 days per sprint.</li> 194<li>If they <strong>donât have much time</strong>, the UX team and the dev team agrees which user stories they will focus on and in what order, then in each sprint the UX team will produce narrow and deep prototype chunks to illustrate the user stories that the dev team will work on in the following sprint. The UX team carries out user testing to validate each chunk before they deliver it to the dev team. There are regular meetings with at least the <strong>lead UX person</strong>, the <strong>Product Owner</strong>, and the <strong>Scrum Master</strong> to communicate the details of these prototype chunks. As in option 1, a UX or UI person is available to support the Scrum team in case of need.</li> 195</ol> 196<p>This approach attempts to emulate full integration of the heavy approach, but without the tensions that can go with it.</p> 197<h2>Typical scenarios in the light approach</h2> 198<p>These are the usual scenarios for how we can combine approaches:</p> 199<ul> 200<li><strong>Just approach 1 (UX pre-sprint) –</strong> This sets the Scrum team on the right course, but then the UX team is not around to help with course adjustments.</li> 201<li><strong>Just approach 2 (UX design spike) –</strong> This can add great value at any time but it cannot make fundamental changes, even if they are needed.</li> 202<li><strong>Approach 1 and 2 together –</strong> This optimises chances of overall success with the lightest touch. We tried this in my work at <a href="http://www.fivebyfive.io/">Five by Five</a> with various clients, and it worked out quite well given the constraints you are usually under as a consulting agency. One downside however is that because it is still a light approach, finer UX details may slip through the cracks.</li> 203<li><strong>Just approach 3 (parallel work with partial integration) –</strong> This maximises chances of overall success, and the small details that can have big effects are not forgotten. The UX and the dev team get to know each other better and have a greater sense of shared ownership and responsibility for the product.</li> 204</ul> 205<h2>Heavy</h2> 206<p>If done well, this approach could see the biggest benefits, but it is the most disruptive with no guarantee of good results. It is very hard to do and some people even think it is fundamentally impossible. I worked like this for several years in various teams, with mixed results and a lot of arguments with developers and managers!</p> 207<h3>4 – Direct full-time integration of UX people into a Scrum team [Not recommended for most projects]</h3> 208<p>This approach needs advance planning, A LOT of goodwill from developers in the Scrum team, and a <strong>Scrum Master and Product Owner</strong> who are motivated by UX. The UX people and Scrum developers need to have a good relationship, and the UX people should never be seen to dictate the direction of work to the developers, without referring to objective user research or testing.</p> 209<p>Both the Scrum and UX work cycles need to be modified to allow at least partial synchronisation. A method needs to be found to accommodate the transverse nature of UX work with the narrow and deep nature of dev sprints. The UX team will share the Agile <strong>customer role</strong> with the product owner.</p> 210<p>The usual approach is that the UX team starts a sprint or two before the main dev work with a research phase. The UX team then has an idea of the overall application and proposes a list of use cases which are more abstract than the usual Scrum user stories. The Scrum Master or Product Owner then translates these use cases into Scrum user stories. Then in each sprint the UX team produces narrow and deep prototype chunks to illustrate the user stories that the dev team will work on in the following sprint (so that mean the UX team is always one sprint ahead).</p> 211<p>If the UX team doesnât have enough time in each sprint to user test each prototype chunk, user testing of larger chunks or even the whole application prototype will need to done at some point. The team should build in time to make adjustments according to the results of this user testing.</p> 212<p>The UX people are there to defend their designs in the daily stand-up meetings, sit near the developers and closely collaborate with them to find alternative solutions to design problems, so that the application keeps on course and stays aligned with the prototype.</p> 213<h2>Resources and further reading</h2> 214<ul> 215<li><a href="http://futurice.com/blog/managing-ux-in-scrum-project">Managing UX in Scrum Project</a></li> 216<li><a href="http://johnnyholland.org/2009/12/how-ucd-and-agile-can-live-together/">How UCD and Agile can live together</a></li> 217<li><a href="http://johnnyholland.org/2010/10/beyond-staggered-sprints-how-theladders-com-integrated-ux-into-agile/">Beyond Staggered Sprints: How TheLadders.com Integrated UX into Agile</a></li> 218<li><a href="https://allaland.wordpress.com/2010/05/30/agile-in-plain-english-part-3/">The role of UX in Agile</a></li> 219<li><a href="http://boxesandarrows.com/bringing-user-centered-design-to-the-agile-environment/">Bringing User Centered Design to the Agile Environment</a></li> 220<li><a href="http://www.smashingmagazine.com/2012/11/06/design-spikes-fit-big-picture-ux-agile-development/">Fitting Big-Picture UX Into Agile Development</a></li> 221</ul> 222 </div><!-- .entry-content --> 223 </article><!-- #post-## --> 224</div><!-- .post-full --> 225<div class="post-full post-full-summary"> 226 <article id="post-3078" class="post-3078 post type-post status-publish format-standard hentry category-london-transport-museum category-usability category-use-sensible-defaults tag-bad-ux tag-funnies tag-screenshots tag-ux-scrapbook"> 227 <header class="entry-header"> 228 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/companies/london-transport-museum/" class="category category-116">London Transport Museum</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/usability/" class="category category-66">usability</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/use-sensible-defaults/" class="category category-117">use sensible defaults</a></div><!-- .cat-links --> 229 <h2 class="entry-title"><a href="https://alexpoole.info/blog/poster-or-stamp-use-sensible-defaults-for-product-previews/" rel="bookmark">Poster or stamp? Use sensible defaults for product previews</a></h2> 230 <div class="entry-meta"> 231 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/poster-or-stamp-use-sensible-defaults-for-product-previews/" rel="bookmark"><time class="entry-date published updated" datetime="2015-11-09T16:25:32+01:00">November 9, 2015</time></a> </span> 232 <span class="byline">by <span class="author vcard"> 233 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 234 </span> 235 </span> 236 </div><!-- .entry-meta --> 237 </header><!-- .entry-header --> 238 <div class="entry-content"> 239 <p>I love the <a href="http://www.ltmuseumshop.co.uk/posters/london-transport-poster-archive/gallery.html">London Transport Museum shop</a>, especially the classic posters. I love how they provide a preview pane with an everyday object so you can imagine how the poster might look in your home. However, I don’t love this ridiculous default size when you first arrive on the page – makes me think I’m buying a postage stamp, not a poster!</p> 240<figure id="attachment_3079" aria-describedby="caption-attachment-3079" style="width: 620px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="size-large wp-image-3079" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/11/Poster-Default-small-620x648.png" alt="Use sensible defaults for product previews, and check for sizing bugs!" width="620" height="648" srcset="https://alexpoole.info/wp-content/uploads/2015/11/Poster-Default-small-620x648.png 620w, https://alexpoole.info/wp-content/uploads/2015/11/Poster-Default-small-285x298.png 285w, https://alexpoole.info/wp-content/uploads/2015/11/Poster-Default-small-800x837.png 800w, https://alexpoole.info/wp-content/uploads/2015/11/Poster-Default-small.png 1003w" sizes="(max-width: 620px) 100v
240w, 620px" /><figcaption id="caption-attachment-3079" class="wp-caption-text">Use sensible defaults for product previews, and check for sizing bugs!</figcaption></figure> 241 </div><!-- .entry-content --> 242 </article><!-- #post-## --> 243</div><!-- .post-full --> 244<div class="post-full post-full-summary"> 245 <article id="post-3038" class="post-3038 post type-post status-publish format-standard hentry category-user-experience category-visual-design tag-articles tag-featured tag-rants"> 246 <header class="entry-header"> 247 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/user-experience/" class="category category-67">user experience</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/visual-design/" class="category category-71">visual design</a></div><!-- .cat-links --> 248 <h2 class="entry-title"><a href="https://alexpoole.info/blog/ui-vs-ux/" rel="bookmark">Avoid jobs advertised as “UI/UX Designer”</a></h2> 249 <div class="entry-meta"> 250 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/ui-vs-ux/" rel="bookmark"><time class="entry-date published updated" datetime="2015-02-06T11:56:29+01:00">February 6, 2015</time></a> </span> 251 <span class="byline">by <span class="author vcard"> 252 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 253 </span> 254 </span> 255 <span class="entry-meta-sep"> / </span> 256 <span class="comments-link"> 257 <a href="https://alexpoole.info/blog/ui-vs-ux/#comments">4 Comments</a> </span> 258 </div><!-- .entry-meta --> 259 </header><!-- .entry-header --> 260 <div class="entry-content"> 261 <p>Jobs such as “UI/UX Designer” are often advertised in France and some other countries – but you should think twice before applying even if you have a background in visual design. They may indicate that the company misunderstands UX or doesn’t really value it enough.</p> 262<h2>The real definition of UI</h2> 263<p>Before I tell you what’s wrong with these types of jobs, let’s remind ourselves what <strong>User Interface</strong> really means. UI is the medium through which the designer can communicate options to the user, and for the user to reply with their choices.</p> 264<p>Usually <em>it is</em> a visual medium – Text, images, and buttons etc on a screen, but often it is non-visual, like when you phone an automated service and listen to the options, or feel vibrating feedback when you press a button on your touch-screen phone.</p> 265<p>That’s why the image below of the user interface makes sense – It’s about dialogue and communication, not just visual design.</p> 266<figure id="attachment_3041" aria-describedby="caption-attachment-3041" style="width: 600px" class="wp-caption aligncenter"><img decoding="async" class="wp-image-3041 size-full" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/02/User-Interface.png" alt="User Interface" width="600" height="377" srcset="https://alexpoole.info/wp-content/uploads/2015/02/User-Interface.png 600w, https://alexpoole.info/wp-content/uploads/2015/02/User-Interface-285x179.png 285w" sizes="(max-width: 600px) 100vw, 600px" /><figcaption id="caption-attachment-3041" class="wp-caption-text">User Interface model from “The Design of Everyday Things” by Don Norman</figcaption></figure> 267<h2>The industry definition</h2> 268<p>When you see UX jobs advertised with “UI” or “designer” in the title, such as “UI/UX designer” what they usually mean is they want someone who is primarily a visual designer, but with an appreciation of UX – Someone that can work on a <strong>GUI</strong> or <strong>Graphical User Interface</strong>.</p> 269<p>They’ll usually want the candidate to work on websites or software which will be used by the general public. They’ll need to compete with other sites or products on the open market, with a very polished, professional-level visual appearance – so the primary skill HAS to be visual design.</p> 270<h2>Why this is a problem</h2> 271<p>Visual design is too important to leave to a half-time person, and so it is with the UX strategy, analysis, and prototyping which serve as the foundation upon which the visual design will rest – not to mention the testing and other research methods needed to refine a product.</p> 272<p>Furthermore, placing UI as equivalent to UX in a job title is a red flag – UI is a component of UX – and in fact when done well, UX will deal with the totality of the user’s experience with a company, service, or product, from website to in-store customer service. When the ‘UX’ work is targeted solely on the UI, you end up with <a title="Good UX should bridge the divide between online and offline worlds" href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/blog/good-ux-should-bridge-the-divide-between-online-and-offline-worlds/">a broken experience, as I wrote about when I was an Orange customer</a>.</p> 273<p>Now, of course it’s good for the visual designer or any other team member to have an appreciation of the whole of UX so they can work well with others in the team, or even do some parts of other closely-related functions.</p> 274<p>But when you go further than that – when you want a <a href="http://uxunicorn.com/">UX Unicorn</a> to handle everything, you get these problems:</p> 275<ul> 276<li><strong>Jack of all trades, master of none</strong> – resulting in a mediocre product which is only as good as your weakest skill</li> 277<li><strong>Spreading yourself too thinly</strong> – UX often needs the different functions to run in parallel, so this results in long hours and lots of workplace stress</li> 278<li><strong>Conflicts of interest</strong> – user testing your own designs; or in periods of stress, reverting to your core skills such as making the interface look good at the expense of making it work well</li> 279</ul> 280<h2>Why these jobs are advertised</h2> 281<p>The fact that these job titles exist is due in my opinion to one or more causes:</p> 282<ul> 283<li>A lack of maturity in the market</li> 284<li>A poor of understanding of UX</li> 285<li>Not wanting to spend money on proper specialists because the company doesn’t really value UX</li> 286<li>The company can’t afford people with the correct skills to do the work</li> 287</ul> 288<p>So jobs like “UI/UX Designer” ring all these alarm bells for me, which is why I steer clear of them, and that’s why you should too.</p> 289<h2>Situations where having a combination UI/UX designer might be acceptable</h2> 290<p>I can think of some jobs where the visual design burden will be low enough to allow you to do the other vital UX work, like hosting workshops or testing prototypes with users:</p> 291<ol> 292<li>
292You are making tools for internal company use only, and employees must use these tools and no others. In this case you will have a captive audience, and there is no need for an advanced visual design effort to seduce customers</li> 293<li>You are using a template – Most graphical elements have already been created and you can just drop them into place</li> 294<li>You are making desktop software using standard buttons, menus and other UI elements. You may only need occasional input from a visual designer for splash screens, etc</li> 295<li>You are working on a small project, with low time pressures, and with users who are not sensitive to how your product looks</li> 296</ol> 297<p>If you are a UX professional or UX recruiter, let me know what you think in the comments below, especially if you disagree!</p> 298 </div><!-- .entry-content --> 299 </article><!-- #post-## --> 300</div><!-- .post-full --> 301<div class="post-full post-full-summary"> 302 <article id="post-2995" class="post-2995 post type-post status-publish format-standard hentry category-legibility category-usability category-visibility category-visual-design tag-bad-ux tag-screenshots"> 303 <header class="entry-header"> 304 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/legibility/" class="category category-45">legibility</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/usability/" class="category category-66">usability</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/visibility/" class="category category-70">visibility</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/visual-design/" class="category category-71">visual design</a></div><!-- .cat-links --> 305 <h2 class="entry-title"><a href="https://alexpoole.info/blog/plan-ahead-when-designing-semi-transparent-overlays/" rel="bookmark">Plan ahead when designing semi-transparent overlays</a></h2> 306 <div class="entry-meta"> 307 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/plan-ahead-when-designing-semi-transparent-overlays/" rel="bookmark"><time class="entry-date published updated" datetime="2015-01-14T12:54:11+01:00">January 14, 2015</time></a> </span> 308 <span class="byline">by <span class="author vcard"> 309 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 310 </span> 311 </span> 312 </div><!-- .entry-meta --> 313 </header><!-- .entry-header --> 314 <div class="entry-content"> 315 <p>This is a web version of the common problem you see in subtitled films – white text on a white background is going to be very hard to read (see <a href="http://gaite-lyrique.net/rencontres">Gaîté lyrique</a>). I always prefer automatically overlaid text to have a dark mask behind it to guarantee sufficient contrast.</p> 316<figure id="attachment_3001" aria-describedby="caption-attachment-3001" style="width: 620px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/AvoidPoorContrastWithOverlays.png"><img decoding="async" class="size-large wp-image-3001" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/AvoidPoorContrastWithOverlays-620x405.png" alt="White text on a black and white photo" width="620" height="405" srcset="https://alexpoole.info/wp-content/uploads/2015/01/AvoidPoorContrastWithOverlays-620x405.png 620w, https://alexpoole.info/wp-content/uploads/2015/01/AvoidPoorContrastWithOverlays-285x186.png 285w, https://alexpoole.info/wp-content/uploads/2015/01/AvoidPoorContrastWithOverlays.png 647w" sizes="(max-width: 620px) 100vw, 620px" /></a><figcaption id="caption-attachment-3001" class="wp-caption-text">Avoid poorly contrasting text</figcaption></figure> 317<p><a href="http://consumerist.com/2014/08/10/comcast-tells-customer-the-only-reason-hes-getting-bogus-charges-refunded-is-because-he-recorded-call/">The consumerist</a> website tries to avoid this with what looks like a CSS opacity fade on the background image so that the title at the bottom will have enough contrast to be seen.</p> 318<figure id="attachment_3031" aria-describedby="caption-attachment-3031" style="width: 620px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/Image-001_16-01-2015.png"><img loading="lazy" decoding="async" class="size-large wp-image-3031" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/Image-001_16-01-2015-620x311.png" alt="The Consumerist - CSS opacity fade" width="620" height="311" srcset="https://alexpoole.info/wp-content/uploads/2015/01/Image-001_16-01-2015-620x311.png 620w, https://alexpoole.info/wp-content/uploads/2015/01/Image-001_16-01-2015-285x143.png 285w, https://alexpoole.info/wp-content/uploads/2015/01/Image-001_16-01-2015-800x401.png 800w, https://alexpoole.info/wp-content/uploads/2015/01/Image-001_16-01-2015.png 894w" sizes="auto, (max-width: 620px) 100v
318w, 620px" /></a><figcaption id="caption-attachment-3031" class="wp-caption-text">The Consumerist – CSS opacity fade</figcaption></figure> 319<p>This is perhaps a more elegant solution than a solid mask around the title itself, but it breaks down when viewed on a narrow mobile screen when the words bunch up across the whole image.</p> 320<figure id="attachment_3032" aria-describedby="caption-attachment-3032" style="width: 285px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/Screenshot_2014-08-11-10-38-52.png"><img loading="lazy" decoding="async" class="wp-image-3032 size-medium" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/Screenshot_2014-08-11-10-38-52-285x507.png" alt="The Consumerist - CSS opacity fade on mobile" width="285" height="507" srcset="https://alexpoole.info/wp-content/uploads/2015/01/Screenshot_2014-08-11-10-38-52-285x507.png 285w, https://alexpoole.info/wp-content/uploads/2015/01/Screenshot_2014-08-11-10-38-52-576x1024.png 576w, https://alexpoole.info/wp-content/uploads/2015/01/Screenshot_2014-08-11-10-38-52.png 720w" sizes="auto, (max-width: 285px) 100vw, 285px" /></a><figcaption id="caption-attachment-3032" class="wp-caption-text">The Consumerist – CSS opacity fade on mobile</figcaption></figure> 321 </div><!-- .entry-content --> 322 </article><!-- #post-## --> 323</div><!-- .post-full --> 324<div class="post-full post-full-summary"> 325 <article id="post-2993" class="post-2993 post type-post status-publish format-standard hentry category-consistency category-use-sensible-defaults tag-bad-ux tag-screenshots"> 326 <header class="entry-header"> 327 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/consistency/" class="category category-25">consistency</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/use-sensible-defaults/" class="category category-117">use sensible defaults</a></div><!-- .cat-links --> 328 <h2 class="entry-title"><a href="https://alexpoole.info/blog/use-sensible-defaults-on-forms/" rel="bookmark">Use sensible defaults on forms</a></h2> 329 <div class="entry-meta"> 330 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/use-sensible-defaults-on-forms/" rel="bookmark"><time class="entry-date published updated" datetime="2015-01-14T12:22:45+01:00">January 14, 2015</time></a> </span> 331 <span class="byline">by <span class="author vcard"> 332 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 333 </span> 334 </span> 335 </div><!-- .entry-meta --> 336 </header><!-- .entry-header --> 337 <div class="entry-content"> 338 <p>This search form on <a href="http://www.ilounge.com/index.php/accessories">iLounge</a> seems to have archives going back to the birth of Christ, either that or they’re not using a sensible default start date.</p> 339<figure id="attachment_2996" aria-describedby="caption-attachment-2996" style="width: 620px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/SensibleDefaults.png"><img loading="lazy" decoding="async" class="wp-image-2996 size-large" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2015/01/SensibleDefaults-620x371.png" alt="Start date for archive search reads "00/00/00"" width="620" height="371" srcset="https://alexpoole.info/wp-content/uploads/2015/01/SensibleDefaults-620x371.png 620w, https://alexpoole.info/wp-content/uploads/2015/01/SensibleDefaults-285x170.png 285w, https://alexpoole.info/wp-content/uploads/2015/01/SensibleDefaults.png 682w" sizes="auto, (max-width: 620px) 100vw, 620px" /></a><figcaption id="caption-attachment-2996" class="wp-caption-text">iLounge search form</figcaption></figure> 340<p> </p> 341 </div><!-- .entry-content --> 342 </article><!-- #post-## --> 343</div><!-- .post-full --> 344<div class="post-full post-full-summary"> 345 <article id="post-2961" class="post-2961 post type-post status-publish format-standard hentry category-efficiency category-grouping category-readability category-super-u tag-good-ux"> 346 <header class="entry-header"> 347 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/efficiency/" class="category category-27">efficiency</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/grouping/" class="category category-114">grouping</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/readability/" class="category category-55">readability</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/companies/super-u/" class="category category-113">Super U</a></div><!-- .cat-links --> 348 <h2 class="entry-title"><a href="https://alexpoole.info/blog/supermarket-receipt-with-categories/" rel="bookmark">Supermarket receipt with categories</a></h2> 349 <div class="entry-meta"> 350 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/supermarket-receipt-with-categories/" rel="bookmark"><time class="entry-date published updated" datetime="2014-10-15T12:04:59+02:00">October 15, 2014</time></a> </span> 351 <span class="byline">by <span class="author vcard"> 352 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 353 </span> 354 </span> 355 </div><!-- .entry-meta --> 356 </header><!-- .entry-header --> 357 <div class="entry-content"> 358 <p>While on holiday I spotted another small yet great innovation for an everyday object. Here’s a supermarket receipt with the products you bought, not listed simply in the order they were scanned, but grouped together into categories.</p> 359<figure id="attachment_2964" aria-describedby="caption-attachment-2964" style="width: 285px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/10/TillReceiptWithCategories.jpg"><img loading="lazy" decoding="async" class="wp-image-2964 size-medium" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/10/TillReceiptWithCategories-e1414325508934-285x350.jpg" alt="Supermarket receipt with items grouped into categories" width="285" height="350" srcset="https://alexpoole.info/wp-content/uploads/2014/10/TillReceiptWithCategories-e1414325508934-285x350.jpg 285w, https://alexpoole.info/wp-content/uploads/2014/10/TillReceiptWithCategories-e1414325508934.jpg 532w" sizes="auto, (max-width: 285px) 100v
359w, 285px" /></a><figcaption id="caption-attachment-2964" class="wp-caption-text">Supermarket receipt with items grouped into categories</figcaption></figure> 360<p>This extends the standard function of receipts (a legal document that the shop is obliged to give you), and acknowledges the real context of use for many customers – wanting to easily find the items they bought so that they can check how much they spend on certain types of food or verify that special offers were respected, etc.</p> 361<p>This little bit of extra UX care can show the customer that the company is oriented to their needs – Why don’t all supermarkets do this?</p> 362 </div><!-- .entry-content --> 363 </article><!-- #post-## --> 364</div><!-- .post-full --> 365<div class="post-full post-full-summary"> 366 <article id="post-2936" class="post-2936 post type-post status-publish format-standard hentry category-efficiency category-error-prevention category-help category-marks-spencers tag-good-ux"> 367 <header class="entry-header"> 368 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/efficiency/" class="category category-27">efficiency</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/error-prevention/" class="category category-28">error prevention</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/help/" class="category category-39">help</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/companies/marks-spencers/" class="category category-112">Marks & Spencers</a></div><!-- .cat-links --> 369 <h2 class="entry-title"><a href="https://alexpoole.info/blog/gift-wrap-with-guidelines/" rel="bookmark">Gift-wrap with guidelines</a></h2> 370 <div class="entry-meta"> 371 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/gift-wrap-with-guidelines/" rel="bookmark"><time class="entry-date published updated" datetime="2014-10-01T13:25:27+02:00">October 1, 2014</time></a> </span> 372 <span class="byline">by <span class="author vcard"> 373 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 374 </span> 375 </span> 376 </div><!-- .entry-meta --> 377 </header><!-- .entry-header --> 378 <div class="entry-content"> 379 <p>I love it when I see a simple, yet genuinely useful innovation in an everyday object. This time its gift-wrap with a grid printed on the back to help you cut straight. This is the first time I’ve seen this in decades of wrapping presents! Although this might be because I don’t usually buy premium wrapping paper, seeing as it’s going to be torn apart in seconds.</p> 380<p>Either way, this demonstrates a nice bit of UX thinking – the acknowledgement that there are in fact 2 user groups: buyers of the gift-wrap and the end user who opens it, with a side printed to meet the needs of each group.</p> 381<figure id="attachment_2937" aria-describedby="caption-attachment-2937" style="width: 620px" class="wp-caption aligncenter"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/10/WrappingPaper.jpg"><img loading="lazy" decoding="async" class="wp-image-2937 size-large" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/10/WrappingPaper-620x465.jpg" alt="Wrapping paper with guidelines printed on the back to help you cut straight" width="620" height="465" srcset="https://alexpoole.info/wp-content/uploads/2014/10/WrappingPaper-620x465.jpg 620w, https://alexpoole.info/wp-content/uploads/2014/10/WrappingPaper-285x213.jpg 285w, https://alexpoole.info/wp-content/uploads/2014/10/WrappingPaper-800x600.jpg 800w, https://alexpoole.info/wp-content/uploads/2014/10/WrappingPaper.jpg 1000w" sizes="auto, (max-width: 620px) 100vw, 620px" /></a><figcaption id="caption-attachment-2937" class="wp-caption-text">Gift-wrap from Marks &
381 Spencer</figcaption></figure> 382<p> </p> 383 </div><!-- .entry-content --> 384 </article><!-- #post-## --> 385</div><!-- .post-full --> 386<div class="post-full post-full-summary"> 387 <article id="post-2701" class="post-2701 post type-post status-publish format-standard hentry category-efficiency category-mobile category-responsive-design tag-bad-ux tag-ux-scrapbook"> 388 <header class="entry-header"> 389 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/efficiency/" class="category category-27">efficiency</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/technologies/mobile/" class="category category-96">mobile</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/responsive-design/" class="category category-94">responsive design</a></div><!-- .cat-links --> 390 <h2 class="entry-title"><a href="https://alexpoole.info/blog/dont-ask-just-do-it/" rel="bookmark">Don’t ask, just do it!</a></h2> 391 <div class="entry-meta"> 392 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/dont-ask-just-do-it/" rel="bookmark"><time class="entry-date published updated" datetime="2014-09-12T11:51:16+02:00">September 12, 2014</time></a> </span> 393 <span class="byline">by <span class="author vcard"> 394 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 395 </span> 396 </span> 397 </div><!-- .entry-meta --> 398 </header><!-- .entry-header --> 399 <div class="entry-content"> 400 <p>Yes, I’m browsing from a mobile – just give me the mobile version by default please.</p> 401<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2709 size-full" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/09/Screenshot_2014-09-09-08-45-571.png" alt="The page at http:// www.afterdawn.com says: It seems that you're using a mobile device to access this page. Would you like to use a mobile-optimized version of the site instead? Cancel OK" width="360" height="640" srcset="https://alexpoole.info/wp-content/uploads/2014/09/Screenshot_2014-09-09-08-45-571.png 360w, https://alexpoole.info/wp-content/uploads/2014/09/Screenshot_2014-09-09-08-45-571-168x300.png 168w" sizes="auto, (max-width: 360px) 100vw, 360px" /></p> 402 </div><!-- .entry-content --> 403 </article><!-- #post-## --> 404</div><!-- .post-full --> 405<div class="post-full post-full-summary"> 406 <article id="post-2636" class="post-2636 post type-post status-publish format-standard hentry category-new-yorker-magazine category-responsive-design category-user-experience tag-bad-ux tag-ux-scrapbook"> 407 <header class="entry-header"> 408 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/companies/new-yorker-magazine/" class="category category-95">New Yorker magazine</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/responsive-design/" class="category category-94">responsive design</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/user-experience/" class="category category-67">user experience</a></div><!-- .cat-links --> 409 <h2 class="entry-title"><a href="https://alexpoole.info/blog/the-new-yorker-has-a-great-new-responsive-design-shame-the-adverts-spoil-it/" rel="bookmark">The New Yorker has a great new responsive design… shame the adverts spoil it</a></h2> 410 <div class="entry-meta"> 411 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/the-new-yorker-has-a-great-new-responsive-design-shame-the-adverts-spoil-it/" rel="bookmark"><time class="entry-date published updated" datetime="2014-07-22T13:10:24+02:00">July 22, 2014</time></a> </span> 412 <span class="byline">by <span class="author vcard"> 413 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 414 </span> 415 </span> 416 </div><!-- .entry-meta --> 417 </header><!-- .entry-header --> 418 <div class="entry-content"> 419 <p class="update"><strong>Update</strong> – Only took them 2 days to fix it – well done New Yorker!</p> 420<p><a href="http://www.newyorker.com/">The New Yorker</a> unveiled its new responsive redesign today, and was <a href="http://www.theguardian.com/media/2014/jul/22/new-yorker-website-redesign-magazine-archives">reviewed positively</a>. It’s true that it is very nice, but I think the adverts pollute the clean aesthetics, and worse, they think responsive break-points don’t apply to them!</p> 421<figure id="attachment_2637" aria-describedby="caption-attachment-2637" style="width: 620px" class="wp-caption alignnone"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/www_newyorker_com_NON-responsive-AD-1.png"><img loading="lazy" decoding="async" class="size-large wp-image-2637" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/www_newyorker_com_NON-responsive-AD-1-620x395.png" alt="A non-responsive ad" width="620" height="395" srcset="https://alexpoole.info/wp-content/uploads/2014/07/www_newyorker_com_NON-responsive-AD-1-620x395.png 620w, https://alexpoole.info/wp-content/uploads/2014/07/www_newyorker_com_NON-responsive-AD-1-300x191.png 300w, https://alexpoole.info/wp-content/uploads/2014/07/www_newyorker_com_NON-responsive-AD-1.png 866w" sizes="auto, (max-width: 620px) 100v
421w, 620px" /></a><figcaption id="caption-attachment-2637" class="wp-caption-text">A non-responsive ad</figcaption></figure> 422 </div><!-- .entry-content --> 423 </article><!-- #post-## --> 424</div><!-- .post-full --> 425<div class="post-full post-full-summary"> 426 <article id="post-2621" class="post-2621 post type-post status-publish format-standard hentry category-bnp-paribas category-efficiency category-user-experience tag-bad-ux tag-screenshots tag-ux-scrapbook"> 427 <header class="entry-header"> 428 <div class="cat-links"><a rel="category tag" href="https://alexpoole.info/blog/category/companies/bnp-paribas/" class="category category-93">BNP Paribas</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/efficiency/" class="category category-27">efficiency</a><span class="category-sep">/</span><a rel="category tag" href="https://alexpoole.info/blog/category/user-experience-concepts/user-experience/" class="category category-67">user experience</a></div><!-- .cat-links --> 429 <h2 class="entry-title"><a href="https://alexpoole.info/blog/ux-is-not-just-for-the-design-stage/" rel="bookmark">UX is for the whole life of a site, not just the design stage</a></h2> 430 <div class="entry-meta"> 431 Posted <span class="posted-on">on <a href="https://alexpoole.info/blog/ux-is-not-just-for-the-design-stage/" rel="bookmark"><time class="entry-date published updated" datetime="2014-07-21T16:49:51+02:00">July 21, 2014</time></a> </span> 432 <span class="byline">by <span class="author vcard"> 433 <a class="url fn n" href="https://alexpoole.info/blog/author/admin/" title="View all posts by Alex Poole"><span class="author-name">Alex Poole</span></a> 434 </span> 435 </span> 436 </div><!-- .entry-meta --> 437 </header><!-- .entry-header --> 438 <div class="entry-content"> 439 <p>This is the branch locator page for BNP Paribas on the French island of La Réunion. As you can see, the default zoom level in the Google maps widget is set a little bit too low!</p> 440<figure id="attachment_2622" aria-describedby="caption-attachment-2622" style="width: 620px" class="wp-caption alignnone"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/Default-zoom.png"><img loading="lazy" decoding="async" class="size-large wp-image-2622" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/Default-zoom-620x393.png" alt="Default zoom on Google Maps widget" width="620" height="393" srcset="https://alexpoole.info/wp-content/uploads/2014/07/Default-zoom-620x393.png 620w, https://alexpoole.info/wp-content/uploads/2014/07/Default-zoom-300x190.png 300w, https://alexpoole.info/wp-content/uploads/2014/07/Default-zoom.png 978w" sizes="auto, (max-width: 620px) 100vw, 620px" /></a><figcaption id="caption-attachment-2622" class="wp-caption-text">Default zoom on Google Maps widget</figcaption></figure> 441<p>I’ve adjusted it to a more useful zoom level below. This is a good example that shows why UX is not just for the design stage – UX principles like attention to detail and efficiency in use should also be maintained in the normal day-to-day running of a site.</p> 442<figure id="attachment_2623" aria-describedby="caption-attachment-2623" style="width: 620px" class="wp-caption alignnone"><a href="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/Appropriate-zoom.png"><img loading="lazy" decoding="async" class="size-large wp-image-2623" src="http://alexpoole.info.www234.your-server.de.www234.your-server.de/wp-content/uploads/2014/07/Appropriate-zoom-620x372.png" alt="A more useful zoom level" width="620" height="372" srcset="https://alexpoole.info/wp-content/uploads/2014/07/Appropriate-zoom-620x372.png 620w, https://alexpoole.info/wp-content/uploads/2014/07/Appropriate-zoom-300x180.png 300w, https://alexpoole.info/wp-content/uploads/2014/07/Appropriate-zoom.png 959w" sizes="auto, (max-width: 620px) 100vw, 620px" /></a><figcaption id="caption-attachment-2623" class="wp-caption-text">A more useful zoom level</figcaption></figure> 443 </div><!-- .entry-content --> 444 </article><!-- #post-## --> 445</div><!-- .post-full --> 446 447 <nav class="navigation pagination" aria-label="Posts pagination"> 448 <h2 class="screen-reader-text">Posts pagination</h2> 449 <div class="nav-links"><span aria-current="page" class="page-numbers current">1</span> 450<a class="page-numbers" href="https://alexpoole.info/blog/page/2/">2</a> 451<span class="page-numbers dots">…</span> 452<a class="page-numbers" href="https://alexpoole.info/blog/page/6/">6</a> 453<a class="next page-numbers" href="https://alexpoole.info/blog/page/2/">Next »</a></div> 454 </nav> 455 456 </main><!-- #main --> 457 </div><!-- #primary --> 458 459 460 </div><!-- #content --> 461 462 <footer id="colophon" class="site-footer"> 463 464 465 <div id="supplementary" class="footer-widget-area" role="complementary"> 466 <div class="footer-widget-wrapper"> 467 <div class="footer-widget"> 468 <div class="footer-widget-1 widget-area"> 469 <aside id="dpe_fp_widget-2" class="widget widget_dpe_fp_widget"><h2 class="widget-title">Featured articles</h2> <ul class="dpe-flexible-posts"> 470 <li id="post-3109" class="post-3109 post type-post status-publish format-standard hentry category-agile-2 category-user-experience tag-articles tag-featured"><a href="https://alexpoole.info/blog/how-agile-and-ux-can-work-together/"> 471 How Agile and UX can work together </a> 472 </li> 473 <li id="post-3038" class="post-3038 post type-post status-publish format-standard hentry category-user-experience category-visual-design tag-articles tag-featured tag-rants"><a href="https://alexpoole.info/blog/ui-vs-ux/"> 474 Avoid jobs advertised as “UI/UX Designer” </a> 475 </li> 476 <li id="post-2226" class="post-2226 post type-post status-publish format-standard hentry category-colour category-maplin category-mega category-visual-heirarchy tag-articles tag-featured tag-funnies"><a href="https://alexpoole.info/blog/playing-top-trumps-with-ux/"> 477 Playing Top Trumps with UX </a> 478 </li> 479 <li id="post-1948" class="post-1948 post type-post status-publish format-standard hentry category-collaboration category-consistency category-orange-mobile category-user-experience tag-articles tag-featured"><a href="https://alexpoole.info/blog/good-ux-should-bridge-the-divide-between-online-and-offline-worlds/"> 480 Good UX should bridge the divide between online and offline worlds </a> 481 </li> 482 </ul><!-- .dpe-flexible-posts --> 483</aside>
483 </div><!-- .footer-widget-1 --> 484 <div class="footer-widget-2 widget-area"> 485 <aside id="dpe_fp_widget-3" class="widget widget_dpe_fp_widget"><h2 class="widget-title">Original research</h2> <ul class="dpe-flexible-posts"> 486 <li id="post-278" class="post-278 post type-post status-publish format-standard hentry category-legibility category-reading category-sans-serif category-serif category-typography tag-articles tag-research"><a href="https://alexpoole.info/blog/which-are-more-legible-serif-or-sans-serif-typefaces/"> 487 Which Are More Legible: Serif or Sans Serif Typefaces? </a> 488 </li> 489 <li id="post-1349" class="post-1349 post type-post status-publish format-standard hentry category-colin-wheildon category-legibility category-ole-lund category-reading category-sans-serif category-serif category-typography tag-articles tag-research"><a href="https://alexpoole.info/blog/fighting-bad-typography-research/"> 490 Fighting bad typography research </a> 491 </li> 492 <li id="post-253" class="post-253 post type-post status-publish format-standard hentry category-eye-tracking category-metrics tag-articles tag-publications tag-research"><a href="https://alexpoole.info/blog/eyetracking-metrics/"> 493 Eyetracking metrics (book chapter) </a> 494 </li> 495 <li id="post-256" class="post-256 post type-post status-publish format-standard hentry category-bookmarks category-eye-tracking category-favorites category-information-salience category-visual-search category-web tag-articles tag-publications tag-research"><a href="https://alexpoole.info/blog/how-do-people-find-and-recognise-browser-bookmarks/"> 496 How do people find and recognise browser bookmarks? </a> 497 </li> 498 </ul><!-- .dpe-flexible-posts --> 499</aside> </div><!-- .footer-widget-2 --> 500 <div class="footer-widget-3 widget-area"> 501 <aside id="dpe_fp_widget-4" class="widget widget_dpe_fp_widget"><h2 class="widget-title">Good vs bad UX</h2> <ul class="dpe-flexible-posts"> 502 <li id="post-3078" class="post-3078 post type-post status-publish format-standard hentry category-london-transport-museum category-usability category-use-sensible-defaults tag-bad-ux tag-funnies tag-screenshots tag-ux-scrapbook"><a href="https://alexpoole.info/blog/poster-or-stamp-use-sensible-defaults-for-product-previews/"> 503 Poster or stamp? Use sensible defaults for product previews </a> 504 </li> 505 <li id="post-2995" class="post-2995 post type-post status-publish format-standard hentry category-legibility category-usability category-visibility category-visual-design tag-bad-ux tag-screenshots"><a href="https://alexpoole.info/blog/plan-ahead-when-designing-semi-transparent-overlays/"> 506 Plan ahead when designing semi-transparent overlays </a> 507 </li> 508 <li id="post-2993" class="post-2993 post type-post status-publish format-standard hentry category-consistency category-use-sensible-defaults tag-bad-ux tag-screenshots"><a href="https://alexpoole.info/blog/use-sensible-defaults-on-forms/"> 509 Use sensible defaults on forms </a> 510 </li> 511 <li id="post-2961" class="post-2961 post type-post status-publish format-standard hentry category-efficiency category-grouping category-readability category-super-u tag-good-ux"><a href="https://alexpoole.info/blog/supermarket-receipt-with-categories/"> 512 Supermarket receipt with categories </a> 513 </li> 514 </ul><!-- .dpe-flexible-posts --> 515</aside> </div><!-- .footer-widget-3 --> 516 </div><!-- .footer-widget --> 517 </div><!-- .footer-widget-wrapper --> 518 </div><!-- #supplementary --> 519 520 <div class="site-bottom"> 521 522 <div class="site-info"> 523 <div class="site-copyright"> 524 © 2026 <a href="https://alexpoole.info/" rel="home">Alex Poole</a> 525 </div><!-- .site-copyright --> 526 <div class="site-credit"> 527 Powered by <a href="https://wordpress.org/">WordPress</a> <span class="site-credit-sep"> | </span> 528 Theme: <a href="http://themegraphy.com/wordpress-themes/graphy/">Graphy</a> by Themegraphy </div><!-- .site-credit --> 529 </div><!-- .site-info --> 530 531 </div><!-- .site-bottom --> 532 533 </footer><!-- #colophon --> 534</div><!-- #page --> 535
536<script type="speculationrules"> 537{"prefetch":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-*.php","\/wp-admin\/*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/graphy-child\/*","\/wp-content\/themes\/graphy\/*","\/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} 538</script>
vendor: 1 bytes, line 538
538
539<script type="text/javascript" id="eic_public-js-extra"> 540/* <![CDATA[ */ 541var eic_public = {"responsive_breakpoint":"300","responsive_layout":""}; 542/* ]]> */ 543</script>
vendor: 1 bytes, line 543
543
544<script type="text/javascript" src="https://alexpoole.info/wp-content/plugins/easy-image-collage/js/public.js?ver=1.13.6" id="eic_public-js"></script>
vendor: 1 bytes, line 544
544
545<script type="text/javascript" src="https://alexpoole.info/wp-content/themes/graphy/js/jquery.fitvids.js?ver=1.1" id="fitvids-js"></script>
vendor: 1 bytes, line 545
545
546<script type="text/javascript" src="https://alexpoole.info/wp-content/themes/graphy/js/skip-link-focus-fix.js?ver=20160525" id="graphy-skip-link-focus-fix-js"></script>
vendor: 1 bytes, line 546
546
547<script type="text/javascript" src="https://alexpoole.info/wp-content/themes/graphy/js/navigation.js?ver=20160525" id="graphy-navigation-js"></script>
vendor: 1 bytes, line 547
547
548<script type="text/javascript" src="https://alexpoole.info/wp-content/themes/graphy/js/doubletaptogo.min.js?ver=1.0.0" id="double-tap-to-go-js"></script>
vendor: 1 bytes, line 548
548
549<script type="text/javascript" src="https://alexpoole.info/wp-content/themes/graphy/js/functions.js?ver=20160822" id="graphy-functions-js"></script>
549 550 551</body> 552</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.