blog.oneiro.devGit: Banishing Stacked Pull Request DemonsA software engineer's guide to sane feature layering As software engineers, we often find ourselves in a productivity paradox. You finish a solid chunk of work and ship it off for review. But the review cycle is a slow-moving beast, and you can’t jus...Feb 7·3 min read
blog.oneiro.devLocal State Management w/ QuiddityThis post explores an alternative to reducers in React to manage non-trivial local state though the use of Quiddiny: a local first state management package. Choosing Local State Intentionally In React, there are many state management libraries availa...Jan 5·5 min read
blog.oneiro.devSmooth Operators: Declarative Sequence Transformations in TypeScriptSequence Operators In this post, we will refer to these higher-order array methods as sequence operators, since they operate over sequences of values in a declarative way. You can find the accompanying example code on GitHub: Declarative Sequence Tr...Dec 24, 2025·9 min read
blog.oneiro.devNulls Should Be ExceptionalIntroduction Null reference exceptions are the norm, they are not exceptional. For many developers, handling nothing (null) has become a mundane routine built into the mind's muscle memory. A few "if" statements there, a guard condition here, and yet...Sep 10, 2025·10 min read
blog.oneiro.devBe Expressive: Null HandlingTL;DR C# developers have better options than relying on null. Use value types for guaranteed validity, Option<T> in libraries like LanguageExt for explicit absence, required/init for complete object construction, and Nullable Reference Types for safe...Sep 10, 2025·7 min read