Skip to content
Arun Arivanandam

Writing

Mostly post-mortems of my own mistakes: database decisions that aged badly, abstractions that looked clean until traffic arrived, and the occasional thing that worked.

  1. 13 min read

    React State from first principles

    Learn react useState hook from first principles. Use states with confidence.

  2. 4 min read

    What MongoDB change streams actually cost you

    Change streams removed a polling loop and a whole class of duplicate-payout bugs. They also introduced three failure modes I had not budgeted for.

  3. 3 min read

    Stop putting business logic in Express middleware

    Middleware that mutates the request object reads like dependency injection and behaves like a global variable. Here is the refactor that finally stuck.

  4. 3 min read

    A React data layer that survives a bad network

    Notes from building an offline-first pharmacy app for shops on 2G, where the connection is not an edge case but the normal operating condition.