Asian Is Not a Useful Category

Asking if someone is "Asian" in a question of ethnicity or demographics or pretty much any context is bad. There is no reasonable conclusion you can arrive at about a person based on the fact that they are "Asian".

Read more …

The Have-Loop

Have-loops are positive feedback loops which cause unsustainable concentration of limited resources. Once you learn to recognize them, you will see them everywhere.

Read more …

When Your Feature Gets Someone Hurt

If Google Photos incorrectly tags a photo, what's the worst that could happen?

Read more …

Secret Life of Systems

Lifecycles of software systems that solve real world problems can be broken down into distinct phases based on where it is with respect to the problem and the eventual solution.

This article presents a taxonomy of these phases that should help you understand how each part of the lifecycle fits together.

Read more …

Why I Hate Carousels

  • Don't use carousels in your UI.
  • Instead, if you must stick content into little cards, let the horionztal layout wrap to additional lines.
  • If you end up with too many horizontal lines of content, then you definitely have too many items that can be accessed via a horizontally panning UI. You need a different UI altogether.

Read more …

Inclusion/Equity and Evaluating Negatives

Evaluating properties like inclusion and equity of products can't be done through exhaustive enumeration of product outcomes. Instead we will need to increasingly rely on the controls that we place how we construct the products.

Read more …

Happy New Year 2024 and Year in Review 2023

Thirteen Years

Some reflections from thirteen years at Google.

Read more …

Pillars And Governance Structures

A Good API: g9

Adding more knobs doesn't make your API more powerful.

Read more …