The Candid Startup
Posts Topics Projects About Contact

Posts

Every post from The Candid Startup

« Prev 1 2 3 4 15 Next »
  • Jul 21, 2025 InfiniSheet

    Wiring up the Blob Store and Workers

    Now that I have interfaces and reference implementations for a Blob Store and Workers, we can try to wire them up to our tracer bullet prototype.

  • Jul 14, 2025 InfiniSheet

    InfiniSheet Workers

    I’m building an event sourced spreadsheet on a foundation of an event log, a blob store and background workers. I’ve defined EventLog and BlobStore interfaces with reference implementations. Now it’s the turn of background workers.

  • Jul 7, 2025 InfiniSheet

    InfiniSheet Blob Store

    We left our scalable cloud spreadsheet project in a good place. We used tracer bullet development and after a few iterations got an end to end simulation running against a reference implementation of an event log.

  • Jun 30, 2025 Front End

    Unit Test Code Reuse with Vitest

    I’m a strong believer in unit tests. I try to get close to 100% code coverage with my tests. Which means I have a lot of unit test code. Normally, you try to minimize duplication, and Don’t Repeat Yourself. That has it’s own special challenges when it comes to unit tests.

  • Jun 23, 2025 React Spreadsheet

    React Spreadsheet: Optimistic Update

    I recently made my spreadsheet data interface more explicitly asynchronous. I naively updated VirtualSpreadsheet to use the newly asynchronous setCellValueAndFormat API. After discovering that the user experience was horrible if there was any latency, I did a deep dive into best practice for handling asynchronous updates in React.

  • Jun 16, 2025 Front End

    Asynchronous React

    Last time, I naively updated my spreadsheet frontend component to use an asynchronous update API. Everything looked like it was working, until I added some latency to the API’s response. The resulting user experience was terrible.

  • Jun 9, 2025 InfiniSheet React Spreadsheet

    Asynchronous Spreadsheet Data

    Last week’s tracer bullet development showed that I needed to make my SpreadsheetData interface more explicitly asynchronous.

  • Jun 2, 2025 InfiniSheet React Spreadsheet

    Event Sourced Spreadsheet Data

    I’ve been working on my scalable spreadsheet project from opposite ends. So far, most of my focus has been on the front end. I’ve created a virtualized React spreadsheet component that can scale to trillions of rows and columns. The component accesses spreadsheet data via a SpreadsheetData interface based on React’s external store interface.

  • May 26, 2025 InfiniSheet

    Asynchronous Event Log

    I’ve created an event log interface and reference implementation. The interface exposes all the functionality I’ll need with a minimal API. There’s enough of an abstraction layer that it should allow for multiple real implementations.

  • May 19, 2025 TypeScript

    Asynchronous TypeScript

    One of my reasons for choosing TypeScript as a language stack is that it’s built on an asynchronous IO, event-driven programming model, from the ground up. On the server side, idiomatic NodeJS code scales surprisingly well for a dynamic, low ceremony, fast development stack.

« Prev 1 2 3 4 15 Next »