Here’s the website for Alla’s forthcoming book. You can sign up to a low-volume mailing list to get notified of updates.
Alla’s book is going to be a must-have (I know because I’ve been reviewing it as she’s been writing it). Pre-order it now. It’s out in September.
A look at the feedback needed for a slider control that feels “right”.
You can get most of the behavioural (though not styling) suggestions in HTML by doing this:
<form> <input type="range" min="0" max="100" value="50" onchange="amount.value=this.value" onmousemove="amount.value=this.value"> <output name="amount">50</output> </form>
This is a fun game (I scored a measly 73/100). The idea is to develop a feeling for the balance between font-size, line-height, and line length …just like the three sides of an equilateral triangle.
Too many of them still set line-height, font size and line width as independent features when in fact they should all be considered together. The equilateral triangle is a perfect representation of how the three features work in harmony.
Can an opinionated flat design still have depth and truly be free of drop shadows?
Scott proposes a technique that mimics atmospheric perspective—y’know, when things in the distance look hazier than things in the foreground.
The fact is, we are surrounded by a world that is full of depth, and very little of it is defined by shadow. If we are going to replace drop shadows in our visual UI metaphors, we should look at other options that create depth in the world around us.
Mike examines the real power of CSS custom properties compared to Sass variables—they can change at runtime.
I’m convinced that in almost all cases, responsive design logic should now be contained in variables. There is a strong argument too, that when changing any value, whether in a media query or an element scope, it belongs in a variable. If it changes, it is by definition a variable and this logic should be separated from design.
Beautifully designed and typeset eBooks of royalty-free works—yours for the taking and reading.
There’s a styleguide if you want to get involved on the production side too.
Beyond Curie is a design project that highlights badass women in science, technology, engineering + mathematics.
The transcript of Josh’s fantastic talk on machine learning, voice, data, APIs, and all the other tools of algorithmic design:
The design and presentation of data is just as important as the underlying algorithm. Algorithmic interfaces are a huge part of our future, and getting their design right is critical—and very, very hard to do.
Josh put together ten design principles for conceiving, designing, and managing data-driven products. I’ve added them to my collection.
- Favor accuracy over speed
- Allow for ambiguity
- Add human judgment
- Advocate sunshine
- Embrace multiple systems
- Make it easy to contribute (accurate) data
- Root out bias and bad assumptions
- Give people control over their data
- Be loyal to the user
- Take responsibility
Dave muses on the challenges of maintaining a pattern library:
- Rolling out a Pattern Library is infinitely harder than building one.
- If you don’t have pages, it’s doesn’t solve the problem.
- Vertical spacing will make or break you.
- The Pattern Library is dead if it’s not prioritized.
Your website’s only as strong as the weakest device you’ve tested it on.
A style guide for voice interfaces.
A really great overview of using
prefers-reduced-motion to tone down CSS animations.
This post was written by James Craig, and I’m going to take this opportunity to say a big “thank you!” to James for all the amazing accessibility work he has been doing at Apple through the years. The guy’s a goddamn hero!
It’s no substitute for testing with real devices, but the “device wall” view in this Chrome plug-in is a nifty way of getting an overview of a site’s responsiveness at a glance.
My argument is relatively simple: creating a comprehensive styling mechanism for building complex user interfaces is startlingly hard, and every alternative to CSS is much worse. Like, it’s not even close.
A quick visual guide to CSS Grid properties and values.