Tags: ui



Tuesday, February 21st, 2017

Functional Minimalism for Web Design

According to this, the forthcoming Clearleft redesign will be totally on fleek.

Tuesday, January 31st, 2017

Visual Design meetup, Brighton

Are you a UI designer? In Brighton? Well, feel in this form if you’re interested in gathering with like-minded people.

This local, monthly and free meetup will let designers show their work, share any methods, processes and tools and ask for the odd critique.

Wednesday, January 25th, 2017

Evaluating Tools For Building a Component Library | Chromatic

A comparison of a few different tools for generating pattern libraries.


In this particular case, Fractal comes out on top:

It has the features we need, and I’m happier than I should be with how simple the directory and file structure is. The documentation has also been super helpful thus far. We’ve customized it with our client’s branding and are ready to roll.

Sunday, January 22nd, 2017

Opera Neon – The future of web browsers? | Opera

Under the hood it’s the same Blink engine that power’s the regular Opera browser (and Chrome) but I really like the interface on this experiment. It’s described as being a “concept browser”, much like a “concept car”, which is a nice way of framing experiments like this. More concept browsers please!

Saturday, January 21st, 2017

Designing inspired style guides presentation slides and transcript | Stuff & Nonsense

Having spent half a decade encouraging people to make their pattern libraries public and doing my best to encourage openness and sharing, I find this kind of styleguide-shaming quite disheartening:

These all offer something different but more often than not they have something in common. They look ugly enough to have been designed by someone who enjoys configuring a router.

If a pattern library is intended to inspire, then make it inspiring. But if it’s intended to be an ever-changing codebase (made for and by the kind of people who enjoy configuring a router), then that’s where the effort and time should be concentrated.

But before designing anything—whether it’s a website or a pattern library—figure out who the audience is first.

Thursday, January 19th, 2017

Improving accessibility in Co-op wills – Digital blogs

Some interesting insights from usability and accessibility testing at the Co-op.

We used ‘nesting’ to reduce the amount of information on the page when the user first reaches it. When the user chooses an option, we ask for any other details at that point rather than having all the questions on the page at once.

Let them paste passwords - NCSC Site

Ever been on one of those websites that doesn’t allow you to paste into the password field? Frustrating, isn’t it? (Especially if you use a password manager.)

It turns out that nobody knows how this ever started. It’s like a cargo cult without any cargo.

Monday, January 16th, 2017

The Line of Death – text/plain

A thoroughly fascinating look at which parts of a browser’s interface are available to prevent phishing attacks, and which parts are available to enable phishing attacks. It’s like trench warfare for pixels.

Sunday, January 15th, 2017

Friday, January 6th, 2017

Indivisible Guide

A resource for American citizens put together by former congressional staffers. If you’re a US citizen wondering how you can resist Trump’s agenda, this should provide solid advice on what action you can take.

The Realm of Rough Telepathy

I love this recasting of the internet into a fantastical medieval setting. Standards become spells, standards bodies become guilds and orders of a coven, and technologies become instruments of divination. Here, for example, is the retelling of IPv4:

The Unique Rune of the Fourth Order is the original and formative Unique Rune, still commonly in use. All existing Unique Runes of the Fourth Order were created simultaneously in the late 1970’s by the Numberkeepers, at a time when Rough Telepathy was a small and speculative effort tightly affiliated with the Warring Kingdom of the United States. There were then and are now 4.3 billion Unique Runes of the Fourth Order, a number which cannot be increased. The early Numberkeepers believed 4.3 billion would be more than enough. However, this number is no longer sufficient to provision the masses hungry to never disengage from participation in Rough Telepathy, and the Merchants eager to harness Rough Telepathy as a “feature” in new and often unnecessary consumer products. This shortage has caused considerable headache among the Fiefdoms, the Regional Telepathy Registers, and the Coven.

Wednesday, January 4th, 2017

Day 14: Posting to my Website from Alexa #100DaysOfIndieWeb • Aaron Parecki

Aaron documents how he posts to his website through his Amazon Echo. No interface left behind.


I really like this short-form writing project from Ben:

Daily off-the-cuff thoughts on design, UX, and products, written in 5 minutes without stopping.

He has also documented some of his strategies to make sure he sticks with it. Smart!

Tuesday, January 3rd, 2017

Vertical limit

When I was first styling Resilient Web Design, I made heavy use of vh units. The vertical spacing between elements—headings, paragraphs, images—was all proportional to the overall viewport height. It looked great!

Then I tested it on real devices.

Here’s the problem: when a page loads up in a mobile browser—like, say, Chrome on an Android device—the URL bar is at the top of the screen. The height of that piece of the browser interface isn’t taken into account for the viewport height. That makes sense: the viewport height is the amount of screen real estate available for the content. The content doesn’t extend into the URL bar, therefore the height of the URL bar shouldn’t be part of the viewport height.

But then if you start scrolling down, the URL bar scrolls away off the top of the screen. So now it’s behaving as though it is part of the content rather than part of the browser interface. At this point, the value of the viewport height changes: now it’s the previous value plus the height of the URL bar that was previously there but which has now disappeared.

I totally understand why the URL bar is squirrelled away once the user starts scrolling—it frees up some valuable vertical space. But because that necessarily means recalculating the viewport height, it effectively makes the vh unit in CSS very, very limited in scope.

In my initial implementation of Resilient Web Design, the one where I was styling almost everything with vh, the site was unusable. Every time you started scrolling, things would jump around. I had to go back to the drawing board and remove almost all instances of vh from the styles.

I’ve left it in for one use case and I think it’s the most common use of vh: making an element take up exactly the height of the viewport. The front page of the web book uses min-height: 100vh for the title.


But as soon as you scroll down from there, that element changes height. The content below it suddenly moves.

Let’s say the overall height of the browser window is 600 pixels, of which 50 pixels are taken up by the URL bar. When the page loads, 100vh is 550 pixels. But as soon as you scroll down and the URL bar floats away, the value of 100vh becomes 600 pixels.

(This also causes problems if you’re using vertical media queries. If you choose the wrong vertical breakpoint, then the media query won’t kick in when the page loads but will kick in once the user starts scrolling …or vice-versa.)

There’s a mixed message here. On the one hand, the browser is declaring that the URL bar is part of its interface; that the space is off-limits for content. But then, once scrolling starts, that is invalidated. Now the URL bar is behaving as though it is part of the content scrolling off the top of the viewport.

The result of this messiness is that the vh unit is practically useless for real-world situations with real-world devices. It works great for desktop browsers if you’re grabbing the browser window and resizing, but that’s not exactly a common scenario for anyone other than web developers.

I’m sure there’s a way of solving it with JavaScript but that feels like using an atomic bomb to crack a walnut—the whole point of having this in CSS is that we don’t need to use JavaScript for something related to styling.

It’s such a shame. A piece of CSS that’s great in theory, and is really well supported, just falls apart where it matters most.

Update: There’s a two-year old bug report on this for Chrome, and it looks like it might actually get fixed in February.

Sunday, January 1st, 2017

Front-end Style Guides by Anna Debenham

Anna has just published a lovely new version of her excellent little book on pattern libraries. EPUB, MOBI, and PDF versions are yours for a mere $8.

Friday, December 23rd, 2016

BLIND : Rogue One

The on-screen interfaces for Rogue One have just the right retro feel next to those for The Force Awakens.

Monday, December 19th, 2016


The styleguide, design principles, and pattern library for British Airways. It’s the “global experience language” for BA …so it’s called BAgel.

The math of CSS locks

A very very in-depth look at fluid typography in CSS using calc.

Friday, December 9th, 2016

Get the Balance Right: Responsive Display Text ◆ 24 ways

Some really great CSS tips from Rich on sizing display text for multiple viewports.

Monday, December 5th, 2016

We’ve updated the radios and checkboxes on GOV.UK | GDS design notes

I always loved the way that Gov.uk styled their radio buttns and checkboxes with nice big visible labels, but it turns out that users never used the label area. And because it’s still so frickin’ hard to style native form elements, custom controls with generated content is the only way to go if you want nice big hit areas.