TypeScript A Better Promise.all() — Utility Types and Functions I'll introduce a set of utility types and functions that make deep promise handling more ergonomic and type-safe.
Artificial Intelligence Build a Joke-Telling Chatbot with LangGraph and Streamlit Let's explore how to build an interactive joke-telling chatbot - including a setup and punchline - using LangGraph, LangChain, and Streamlit.
React / Redux Manage Side Effects with an Elm-inspired Redux Middleware Managing side effects in Redux applications is sometimes complex. I'll introduce a lightweight middleware solution.
Personal Optimization Create a Great Workflow for Blog Posts with Asciidoctor I thought combining Asciidoc with other tools would help with authoring blog posts, so I set off to create one using Asciidoctor and Make.
Development Practices Prevent Frame Buffering with OpenCV Our theory was that OpenCV was buffering every frame sent by the HTTP stream, and we were seeing the frames come through one at a time
The Software Life Port Elmish to Typescript: A Conversation with ChatGPT Here's how a conversation with ChatGPT helped me figure out how to export Elmish to Typescript in my current software project.
Project & Team Management Bulleted List: Use This Lo-fi Tool for Backlog Planning Avoiding backlog management software in the early stages of a project has proved valuable. Here's the low-fi tool I use for backlog planning.
AWS Extend Keyed Serial Queues to Support Web Concurrency In my project, we used keyed serial queues to sync our server's set of application files with a currently published manifest.
Development Practices How to Manage Concurrent Tasks with Keyed Queues The KeyedSerialTaskQueue is a powerful tool for managing queues of tasks, especially useful when you need to download or process serially.
Prisma How and When to Use Multiple Prisma Schemas We need two schemas generating two separate clients that we can use from our project code. The secret sauce is to create two Prisma schemas.
Effective communication How Your Software Project is Like a Language In my time at Atomic Object, I've worked on a range of different projects. I've begun thinking of each project as its own language.
Mobile Apps Customizing Jira with TamperMonkey I got sick of copy-pasting info back and forth between Jira and Basecamp, so I went looking for ways to automate the process. I settled on TamperMonkey.