<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/rss-style.xsl" type="text/xsl"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	     xmlns:dc="http://purl.org/dc/elements/1.1/"
	   xmlns:atom="http://www.w3.org/2005/Atom"
	     xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	  xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>
<channel>
	<title>drunk &#8211; Terence Eden’s Blog</title>
	<atom:link href="https://shkspr.mobi/blog/tag/drunk/feed/" rel="self" type="application/rss+xml" />
	<link>https://shkspr.mobi/blog</link>
	<description>Regular nonsense about tech and its effects 🙃</description>
	<lastBuildDate>Thu, 25 Sep 2025 07:40:59 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://shkspr.mobi/blog/wp-content/uploads/2023/07/cropped-avatar-32x32.jpeg</url>
	<title>drunk &#8211; Terence Eden’s Blog</title>
	<link>https://shkspr.mobi/blog</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title><![CDATA[Drunk CSS]]></title>
		<link>https://shkspr.mobi/blog/2025/09/drunk-css/</link>
					<comments>https://shkspr.mobi/blog/2025/09/drunk-css/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Sat, 27 Sep 2025 11:34:51 +0000</pubDate>
				<category><![CDATA[/etc/]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[drunk]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[ux]]></category>
		<category><![CDATA[webdev]]></category>
		<guid isPermaLink="false">https://shkspr.mobi/blog/?p=62987</guid>

					<description><![CDATA[A decade ago, I was writing about how you should test your user interface on drunk people. It was a semi-serious idea.  Some of your users will be drunk when using your app or website. If it is easy for them to use, then it should be easy for sober people to use.  Of course, necking a few shots every time you update your website isn&#039;t great for your health - so is there another way?  Click the &#34;🥴 …]]></description>
										<content:encoded><![CDATA[<p>A decade ago, I was writing about how you should <a href="https://shkspr.mobi/blog/2014/01/ui-for-drunks/">test your user interface on drunk people</a>. It was a semi-serious idea.  Some of your users <em>will</em> be drunk when using your app or website. If it is easy for them to use, then it should be easy for sober people to use.</p>

<p>Of course, necking a few shots every time you update your website isn't <em>great</em> for your health - so is there another way?</p>

<p>Click the "🥴 Drunk" button at <a href="https://shkspr.mobi/blog/2025/09/drunk-css/#theme">the top of the page</a> and see what happens!</p>

<p>These are a relatively simple set of CSS rules which you can apply to any site in order to <em>simulate</em> inebriation.</p>

<p>(I may have changed these since writing the post. Check the source for the latest version.)</p>

<p>First, monkey around with the fonts. This sets all the lower-case vowels to be rendered in a different font - as discussed in "<a href="https://shkspr.mobi/blog/2025/09/targetting-specific-characters-with-css-rules/">targetting specific characters with CSS rules</a>":</p>

<pre><code class="language-css">/* Drunk */
@font-face {
    font-family: "Drunk";
    src: url("/blog/wp-content/themes/edent-wordpress-theme/assets/fonts/CommitMonoV143-Edent.woff2") format("woff2");
    /* Lower-Case Vowels */
    unicode-range: U+61, U+65, U+69, U+6F, U+75 ;
    size-adjust: 105%;
}
</code></pre>

<p>The rest of the characters will be rendered in the system's default Cursive font. Characters will also be slanted. The first character of every paragraph will be shrunk:</p>

<pre><code class="language-css">:root:has(input#drunk:checked) * {
    font-family: "Drunk", cursive;
    font-style: oblique -12deg;
    text-align: end;
}
:root:has(input#drunk:checked) p::first-letter {
    font-size: .5em;
}
</code></pre>

<p>Next, use the child selectors to rotate and skew various elements. While we wait for <a href="https://webkit.org/blog/17285/rolling-the-dice-with-css-random/">CSS randomness to come to all browsers</a> this is a simple way to select various elements:</p>

<pre><code class="language-css">:root:has(input#drunk:checked) *:nth-child(3n) {
    transform: rotate(2deg);
}
:root:has(input#drunk:checked) *:nth-child(5n) {
    transform: skew(5deg, 5deg);
}
:root:has(input#drunk:checked) *:nth-child(7n) {
    transform: rotate(-3deg);
}
</code></pre>

<p>Make the entire page blurred and saturate the colours:</p>

<pre><code class="language-css">:root:has(input#drunk:checked) body {
    filter: blur(1px) saturate(2.5);
}
</code></pre>

<p>Make any hyperlink harder to click by having it gently bounce up and down:</p>

<pre><code class="language-css">:root:has(input#drunk:checked) a  {
    animation-name: bounce;
    animation-duration: 4s;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}
@keyframes bounce {
    0%   { margin-top:  0px; }
    25%  { margin-top:-10px; }
    50%  { margin-top:  0px; }
    75%  { margin-top: 10px; }
    100% { margin-top:  0px; }
}
</code></pre>

<p>Does this <em>really</em> simulate drunkenness? No. It is a pale simulacrum. What it is, however, is deliberately inaccessible to the majority of people.</p>

<p>How does it make you feel using the site in Drunk-Mode? Does it frustrate you? Do your eyes hurt due to the garish colour scheme? Do you keep missing the thing that you try and click on? Are the words so hard to read that it takes you extra time to do anything useful? Will you recommend this experience to your friends and family?</p>

<p>I've written before about <a href="https://shkspr.mobi/blog/2019/07/i-feel-hopeless-rejected-and-a-burden-on-society-one-week-of-empathy-training/">cosplaying as being disabled</a>. Strapping on a pair of <a href="https://www.lowvisionsimulators.com/products/glaucoma-rp-simulators">Glaucoma Goggles</a> will give you an idea of what a visual impairment is like. But it won't give you the experience of living that way for months or years.</p>

<p>You should test your stuff with people who have cognitive impairments or physical disabilities. Find out how usable your site is for someone lacking fine motor control or for those with learning disabilities. Pay disable people to take part in usability studies. Integrate their feedback.</p>

<p>Faffing around with CSS will only get you so far.</p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=62987&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2025/09/drunk-css/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title><![CDATA[UI For Drunks]]></title>
		<link>https://shkspr.mobi/blog/2014/01/ui-for-drunks/</link>
					<comments>https://shkspr.mobi/blog/2014/01/ui-for-drunks/#comments</comments>
				<dc:creator><![CDATA[@edent]]></dc:creator>
		<pubDate>Wed, 08 Jan 2014 12:02:44 +0000</pubDate>
				<category><![CDATA[usability]]></category>
		<category><![CDATA[beer]]></category>
		<category><![CDATA[drunk]]></category>
		<category><![CDATA[untappd]]></category>
		<guid isPermaLink="false">http://shkspr.mobi/blog/?p=9437</guid>

					<description><![CDATA[In app design, we often talk about designing for the user in context.  For example, a taxi app can&#039;t rely on a perfect GPS signal in a crowded city, a user in the countryside may not have brilliant bandwidth, battery life is not infinite so we should limit certain features when power levels are low.  The common theme in those examples is that we are designing for the phone&#039;s context, not the…]]></description>
										<content:encoded><![CDATA[<p>In app design, we often talk about designing for the user in context.  For example, a taxi app can't rely on a perfect GPS signal in a crowded city, a user in the countryside may not have brilliant bandwidth, battery life is not infinite so we should limit certain features when power levels are low.</p>

<p>The common theme in those examples is that we are designing for the <em>phone's</em> context, <strong>not</strong> the <em>user's</em> context.</p>

<p>We rarely say "let's introduce a left-handed option" or "do we need a night reading mode?" or "does the user have time to concentrate on this UI while driving?"  The user should be at the heart of our decision making, and her context should feature heavily in our conversations about UI.</p>

<p>A lot of modern "lifestyle" apps are focussed around getting people to bars and clubs - so why aren't designers creating interfaces for the "cognitively impaired?" i.e. Drunk!</p>

<p>I'd encourage you to watch this usability study from <a href="https://web.archive.org/web/20140111061732/http://threesheetsresearch.com/">Three Sheets Research</a> where they ask a drunk woman to navigate and interact with a moderately complex website.</p>

<iframe title="Cocktails and Customization" width="620" height="349" src="https://www.youtube.com/embed/ZU7ylC7WeaQ?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe>

<p>Hilarious, right? But also accurate.  Users have many demands on their time - being distracted by a phone ringing, or an incoming email, or a bright and shiny object has the same effect as being drunk. They return to the user interface with reduced thinking capacity.</p>

<p>My favourite social drinking app is <a href="https://untappd.com/">Untappd</a>.  It lets me check in to beers and bars to let my friends know what I'm drinking and where I am.  It serves as a beer sommelier by aggregating my beer reviews and presenting me with places to go and try new and interesting brews.</p>

<p>The interface, however, doesn't fully respect the change that I go through the more I use the app. It starts off well enough.  A clean row of beers to choose from and a search bar.</p>

<img src="https://shkspr.mobi/blog/wp-content/uploads/2013/12/Untappd-Start-Screen-Normal-fs8.png" alt="Untappd Start Screen Normal-fs8" width="300" height="533" class="aligncenter size-large wp-image-9439">

<p>After a couple of beers, the interface becomes less useful:
<img src="https://shkspr.mobi/blog/wp-content/uploads/2013/12/Untappd-Slightly-Drunk-fs8.png" alt="Untappd Slightly Drunk-fs8" width="300" height="533" class="aligncenter size-full wp-image-9441">
The white on yellow colour scheme isn't helping things, some of the buttons are too small to hit first time and there seems to be a bunch of text which I just can't be bothered to read.  There's a character count - but the font is too small.  I'm pretty sure that's a camera icon, and I'm at least 75% certain I remember which shade of blue is Twitter and which is Facebook.</p>

<p>By the end of the night, the interface has morphed into this hot mess:
<img src="https://shkspr.mobi/blog/wp-content/uploads/2013/12/Untappd-Pissed-fs8.png" alt="Untappd Pissed-fs8" width="300" height="533" class="aligncenter size-large wp-image-9442"></p>

<p>We <a href="http://ux.stackexchange.com/questions/28891/how-do-drunk-users-act">know how drunk users act</a>.  Interfaces should adapt to the user's context.</p>

<p>If I am inebriated, perhaps those Facebook and Twitter buttons should disappear.  Make it easier for me to hit the correct button and harder for me to share my sozzled opinions with my social network.</p>

<p>Fonts need to be much larger and distinct.  Emboldened text with a strongly contrasting colour scheme is helpful.</p>

<p>Text is routinely ignored and the <a href="http://www.economist.com/node/17723028">tyranny of choice</a> can become insurmountable when <a href="http://www.theguardian.com/notesandqueries/query/0,5753,-2337,00.html">tired and emotional</a>.</p>

<p>Separate actions need to be strongly differentiated. Two brown buttons in close proximity makes no sense to someone rat-arsed.</p>

<p>Why is it so easy to make a bad decision when drunk? Oughtn't the interface say "I'm sorry Dave, I can't let you do that" - or at the very least give me a chance to undo my actions?</p>

<p>Interfaces don't <em>need</em> to stay static.  Most competent designers can build apps which shift when the screen is rotated from portrait to landscape mode.  Apps already have to cope with users setting their own font size and screen contrast - so why not go the whole hog and proactively adapt the interface based on how trollied the user is?</p>

<p>I've previously discussed why <a href="https://shkspr.mobi/blog/2013/01/are-designers-crazy/" title="Are Designers Crazy?">I think designers are crazy</a>.  And I can already hear some of the precious snowflakes crying out in horror at the butchery I am asking them to perform on their babies.</p>

<p>It's necessary.  If you know that your user is going to have difficulty touching small icons, will have unfocussed eyes, and may have several other sensory impairments - it is your <strong>duty</strong> to adapt that interface!</p>

<p>Here is a radically simplified version of one of the Untappd screens.  Yes, it's missing details (which the drunkard won't care about) - no, it's not pretty (I'm sure the beer goggles will make up for that) - but it's easy enough for anyone to use after a few cheeky beers.
<img src="https://shkspr.mobi/blog/wp-content/uploads/2013/12/Untappd-Simplified-fs8.png" alt="Untappd Simplified-fs8" width="300" height="533" class="aligncenter size-full wp-image-9445"></p>

<p>Rather than going up to strangers in a coffee shop to ask them to beta test your latest UI, take the plunge and ask the folk propping up your local bar at midday.  If they can use it, <em>anyone</em> can.</p>

<p>Here's a hand cut-out-and-keep user story for you to sneak into your next agile session.
<img src="https://shkspr.mobi/blog/wp-content/uploads/2013/12/Drunk-User-Story-fs8.png" alt="Drunk User Story" width="611" height="259" class="aligncenter size-full wp-image-9447"></p>
<img src="https://shkspr.mobi/blog/wp-content/themes/edent-wordpress-theme/info/okgo.php?ID=9437&HTTP_REFERER=RSS" alt="" width="1" height="1" loading="eager">]]></content:encoded>
					
					<wfw:commentRss>https://shkspr.mobi/blog/2014/01/ui-for-drunks/feed/</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
	</channel>
</rss>
