Colour modes
Headshot of me with medium long beard, dressed in a black coat

Halvor William Sanden

Senior developer and UI lead at Bring

I develop websites and applications. I also write about the iterations, technical exercises and unified field of expertise it requires.

Brief history
  • UI Lead (fagsjef brukergrensesnitt) DPU at Posten Bring, 2025–
  • Department Head of Mybring Experience at Posten Bring, 2022–2025
  • Harvard’s CS50x, 2021
  • Senior Developer and Agile Team Lead at Posten Bring, 2018–2022
  • Designer and developer, Vanberg/Zoom Grafisk, 2008–2018
  • Course in ad agency operations, Berghs/Westerdals, 2013
  • Designer and developer, freelance, 2007–2008
  • BA in graphic design and marketing, HiBu (USN), 2009
  • BA in art and communication, NTNU, 2006

Selected articles

All articles

Anti-design software

Another piece of software claims to be able to generate web interfaces from graphics. It’s a lie. Such a thing is not possible. Not 25 years ago, not now, not 25 years from now. There are two reasons: Graphics software doesn’t come close to describing interfaces sufficiently. Operating on the …

Not the users I have in mind

If most users say that a flow is good, we should make it so; if most say that the contrast is good, we should not take their word for it.Testing isn’t as straightforward as that, but the point is that there are two approaches to making the web: The majority and the minority – the general and the …

Saying goodbye to chatbots

The typical chatbot experience is like a psychic cold-read session with C-3PO. The inaccuracy with which information is given is only surpassed by the frustration and uncertainty about what isn’t there. Is there more I should know? Why can’t I look at the complete documentation? Why do I have to …

The Implied Web

People don’t need call-to-action buttons. Interface elements made to get attention and herd people towards clicks increase cognitive effort because they obscure themselves and reduce interfaces to clickable surfaces. The implied web is based on the idea that people read interfaces through the …

CSS context variants

In Making components with CSS nesting, we looked at different ways to make a keyword list component with and without links. If we want to make that even more reusable, there are also multiple ways to make variants. With BEM, we have the modifier class. With JS components, we can set a prop and …

Making components with CSS nesting

CSS nesting can help us write better frontends by moving our approach towards thinking more about the bigger picture. It also makes working with fewer class names easier, but does it make BEM and other naming conventions obsolete? One of the areas I have overused classes in the past is lists …

CSS experience, structure and utility use

Write CSS as CSS in CSS. It is the best way to learn, and it gives us the best code quality because it leans on language and platform. Anything else tends to turn out not to be CSS at all, maybe fast to write at first but it makes us fall behind on the language and its evolution. We are …

Grasping CSS: The speed of proficiency

Getting fast at building frontend means going beyond trying to make something work as quickly as possible. Aiming for speed instead of efficiency makes learning CSS more difficult today than it was twenty years ago. It’s not because the language evolved but because the many shortcuts get us stuck in …

Grasping CSS: The concept of logic

The key to understanding CSS is to get past the notion that frontend development is about producing visuals. Visuals are one aspect, but we never make them directly. We make it easier for ourselves when we stop thinking about the interface as significantly related to the image. Two different …

How pointer coursor affects our usability decisions

Most interfaces, design systems and UI frameworks seem to be made by someone who has only heard stories of interfaces. It’s what we get when imitating each other. It’s what we get when bad practices become expectations. It’s what we get when making decisions without reasoning. We know what …

Other output

Millasmat.com

One of the largest online cookbooks in Norway. Featuring recipes from all over the world. I had the pleasure of building, maintaining and photographing for 13 years; we even produced a handful of podcast episodes.

Trykke.no

Norwegian site on how to prepare things for print. A way of keeping and sharing some of the things I learned from working in printing. Featuring web component calculators for image resolution and paper weight.