Do successful products prioritize familiarity over uniqueness?
Explores why successful tech products often prioritize familiar user experiences over unique, novel features, using examples like Astro and Supabase.
Explores why successful tech products often prioritize familiar user experiences over unique, novel features, using examples like Astro and Supabase.
A TypeScript talk write-up on creating advanced types for the Commander.js library to improve CLI development safety and developer experience.
A deep dive into when and how to use Java's Optional type, analyzing common arguments and alternatives like method overloading.
Tips for designing robust and user-friendly Go APIs, focusing on proper use of Context and goroutine lifecycle management.
A reflection on API design and developer responsibility, using a historical Windows Kernel function as a case study.
Explains how to make Swift's new async/await system APIs work on older iOS versions using continuations.
A technique using a Backport struct to simplify writing Swift code that supports multiple iOS/Swift versions, making availability checks cleaner.
An analysis of semantic versioning (SemVer) and the practical challenges of maintaining true backwards compatibility in software APIs.
Explores how reusable APIs can reduce complexity in microservices architecture and discusses the benefits and challenges of implementation.
Explores ASP.NET 6.0 Minimal APIs, discussing their benefits, addressing common concerns, and comparing them to traditional MVC.
A nuanced look at using named arguments in PHP open source projects, addressing maintainer concerns about backwards compatibility and cleaner syntax.
Explains the core concepts of Event-Driven Architecture, comparing commands, queries, and events for building decoupled systems.
Guidelines for creating effective Software Development Kits (SDKs) with a focus on developer experience, simplicity, and user-centric design.
A tutorial on implementing enum-like behavior in Go using custom types and iota for type safety and better API design.
A developer's guide to designing the API and data structure for a custom React tree table component, inspired by MacOS Finder.
A guide on the impact of breaking changes in software libraries, with advice on when to use them and how to manage them for users.
Explores function overloading in JavaScript libraries, using Bliss.js as an example to show how it improves API design and developer experience.
A technical overview comparing REST, RPC, and GraphQL API design approaches, their strengths, weaknesses, and practical considerations.
Discusses the pitfalls of APIs returning optional booleans (Bool?) and proposes using enums for better clarity and user experience.
Discusses problem-solving philosophy in tech, advocating for avoiding problems entirely rather than patching them, using API versioning as an example.