Tags: retro

37

sparkline

Tuesday, September 29th, 2020

Unobtrusive feedback

Ten years ago I gave a talk at An Event Apart all about interaction design. It was called Paranormal Interactivity. You can watch the video, listen to the audio or read the transcript if you like.

I think it holds up pretty well. There’s one interaction pattern in particular that I think has stood the test of time. In the talk, I introduce this pattern as something you can see in action on Huffduffer:

I was thinking about how to tell the user that something’s happened without distracting them from their task, and I thought beyond the web. I thought about places that provide feedback mechanisms on screens, and I thought of video games.

So we all know Super Mario, right? And if you think about when you’re collecting coins in Super Mario, it doesn’t stop the game and pop up an alert dialogue and say, “You have just collected ten points, OK, Cancel”, right? It just does it. It does it in the background, but it does provide you with a feedback mechanism.

The feedback you get in Super Mario is about the number of points you’ve just gained. When you collect an item that gives you more points, the number of points you’ve gained appears where the item was …and then drifts upwards as it disappears. It’s unobtrusive enough that it won’t distract you from the gameplay you’re concentrating on but it gives you the reassurance that, yes, you have just gained points.

I think this a neat little feedback mechanism that we can borrow for subtle Ajax interactions on the web. These are actions that don’t change much of the content. The user needs to be able to potentially do lots of these actions on a single page without waiting for feedback every time.

On Huffduffer, for example, you might be looking at a listing of people that you can choose to follow or unfollow. The mechanism for doing that is a button per person. You might potentially be clicking lots of those buttons in quick succession. You want to know that each action has taken effect but you don’t want to be interrupted from your following/unfollowing spree.

You get some feedback in any case: the button changes. Maybe the text updates from “follow” to “unfollow” accompanied by a change in colour (this is what you’ll see on Twitter). The Super Mario style feedback is in addition to that, rather than instead of.

I’ve made a Codepen so you can see a reduced test case of the Super Mario feedback in action.

See the Pen Unobtrusive feedback by Jeremy Keith (@adactio) on CodePen.

Here’s the code available as a gist.

It’s a function that takes two arguments: the element that the feedback originates from (pass in a DOM node reference for this), and the contents of the feedback (this can be a string of text or it can be HTML …or SVG). When you call the function with those two arguments, this is what happens:

  1. The JavaScript generates a span element and puts the feedback contents inside it.
  2. Then it positions that element right over the element that the feedback originates from.
  3. Then there’s a CSS transform. The feedback gets a translateY applied so it drifts upward. At the same time it gets its opacity reduced from 1 to 0 so it’s fading away.
  4. Finally there’s a transitionend event that fires when the animation is over. Once that event fires, the generated span is destroyed.

When I first used this pattern on Huffduffer, I’m pretty sure I was using jQuery. A few years later I rewrote it in vanilla JavaScript. That was four years ago so I wonder if the code could be improved. Have a go if you fancy it.

Still, even if the code could benefit from an update, I’m pleased that the underlying pattern still holds true. I used it recently on The Session and it’s working a treat for a new Ajax interaction there (bookmarking or unbookbarking an item).

If you end up using this unobtrusive feedback pattern anyway, please let me know—I’d love to see more examples of it in the wild.

Sunday, July 5th, 2020

Dark Ages of the Web

Notes on the old internet, its design and frontend.

Thursday, April 23rd, 2020

98.css - A design system for building faithful recreations of old UIs

Well, this is a fun bit of CSS. Instantly transform a web page into a blast from the past (1998, to be precise).

Saturday, February 15th, 2020

Things I’ve been wrong about, things I’ve been right about | Nolan Lawson

  • Wrong: web workers will take over the world
  • Wrong: Safari is the new IE
  • Right: developer experience is trumping user experience
  • Right: I’m better off without a Twitter account
  • Right: the cost of small modules
  • Mixed: progressive enhancement isn’t dead, but it smells funny

Maybe I should do one of these.

Tuesday, April 9th, 2019

Science and Tech Ads on Flickr

Stylish! Retro! Sciency!

Martin ad

Monday, May 28th, 2018

TANK (short film by Stu Maschwitz) - YouTube

This fun little film gives me all the feels for Battlezone …but then watching the excellent “making of” video really made me appreciate the love and attention to detail that went into this.

TANK (short film by Stu Maschwitz)

Sunday, March 4th, 2018

CodePen - Instagram.exe

I’m not sure why but I genuinely love this Windows 95 style interface for Instagram coded up by Gabrielle Wee.

Tuesday, October 4th, 2016

The Proposal | gablaxian.com

This is how Graham proposed to Linzi …and you can try it out for yourself.

(I must’ve got something in my eye when I got to the end of the level. Weird.)

Monday, September 26th, 2016

Hacked On Classics - The Old Market

Seb is going to be closing out the Brighton Digital Festival with a bang.

Seb unravels all the geeky details about how your favourite retro gadgets work, including Nintendo light guns, Casio keyboards and the cathode ray tube televisions that once dominated our living rooms.

It’s going to be like Seb: The Musical …with lasers.

Sunday, July 3rd, 2016

Global Defense

Dave is making a nifty in-browser game that you can play by yourself or in co-operative mode. If your device has a gyroscope, you can use that to aim. Very cool!

(And it looks like it’s all set to become a progressive web app once it’s running on HTTPS.)

Saturday, June 11th, 2016

BitCam : The World’s Most Advanced Camera For Your Mini Pocket Computer

A lovely little native app:

The world’s most advanced camera for your mini pocket computer.

View source for added nostalgia/flashbacks.

Oh, and RTFM.

Tuesday, July 29th, 2014

ZX Spectrum Screenshotter Example - an album on Flickr

Over 700 screenshots of ZX Spectrum games, captured by Jason Scott. Some of these bring back memories.

Tuesday, March 18th, 2014

Making ubuntu.com responsive: intro | Ubuntu Design Blog

Yaili is documenting the process of retrofitting ubuntu.com to be responsive. I’ll be avidly reading each post in this series.

Tuesday, August 27th, 2013

The Twittertape Machine

I would love to have a ticker-tape machine for my tweets.

Thursday, February 21st, 2013

Scarfolk Council

Dispatches from the disturbing town of Scarfolk, where it is permanently the 1970s:

Scarfolk is more than its famous sewage treatment works, it’s more than its high security mental facilities; it’s more than its world renowned covens; it’s more than its fine reputation which it rebuilt after a spate of grizzly serial killings…

It’s funny and creepy in equal measure. Actually, the creepiness may be the larger measure.

Thursday, August 23rd, 2012

rekall

The not-so-new-but-hella-fun aesthetic.

Thursday, July 12th, 2012

80’s Touch

The Old Aesthetic. It’s eighties-tastic!

Wednesday, May 2nd, 2012

Internet! - Imgur

The Old Aesthetic.

Saturday, January 7th, 2012

The Restart Page - Free unlimited rebooting experience from vintage operating systems

Wallow in nerd nostalgia and experience the Proustian rush of rebooting old operating systems.

Monday, January 2nd, 2012

«Once Upon» by Olia Lialina & Dragan Espenschied

What would Google+, YouTube and Facebook have looked like in 1997?