I write to help me think and share what I know.
RSS feed

Building trust as a designer

JavaScript isn’t always available and it’s not the user’s fault

Where to put buttons on forms

The problem with tooltips and what to do instead

Form design: from zero to hero all in one blog post

In defence of graceful degradation and where progressive enhancement comes in

The problem with web components

Semantic HTML and ARIA explained

User interfaces: hiding stuff should be a last resort

Form design: handling optional fields

Form design: when to use the number input

Thinking differently about progressive enhancement

Content is the user experience and what the deuce is content design?

Buttons shouldn't have a hand cursor part 2

Progressive enhancement explained simply

But sometimes buttons look like links

Designing for actual performance

Inline validation is problematic

Float labels are problematic

The problem with atomic CSS

Stop using device breakpoints

Designing inclusively

Don't initialise Javascript automagically

Semantic class names: are you being too generic or too specific?

Browsers are different but so what?

Developing templates using an outside-in approach

Buttons shouldn't have a hand cursor

Always use a label

Placeholders are problematic

How we cut our MVP in half to launch KIDLY

Everything I know about speaking at conferences

Embracing simplicity

The design challenge

Hover menus are problematic

We stopped tasking

Infinite scrolling is probably a bad idea

The hidden cost of one bad design

Designing honestly for the web

Designing a responsive menu without a hamburger

Progressively enhanced Javascript

Addendum to the boring front-end developer

The disadvantages of Javascript polyfills

The disadvantages of CSS preprocessors

The role of the Front-end Developer

Technical wanking

Don't use AJAX for personalised content

The boring front-end developer

Select boxes shouldn't submit on change

Javascript inheritance

The disadvantages of single page applications

Javascript namespacing

Forms with multiple submit buttons are problematic

How to create accessible forms