Stop Blaming Event-Driven Architecture
Article argues that event-driven architecture issues stem from poor design, not the pattern itself, offering insights on debugging and retries.
Article argues that event-driven architecture issues stem from poor design, not the pattern itself, offering insights on debugging and retries.
Explores intent debt as a hidden cost in software engineering, distinct from technical and cognitive debt, and why AI agents can't resolve it.
Explores how good software is invisible and user-focused, discussing product engineering and user outcomes with insights from a podcast.
A critique of AI agents acting too human, lacking stringency and focus, with a call for less human-like behavior.
Explores Larry Wall's programmer virtues, focusing on laziness as a driver for abstraction and the impact of LLMs on modern software development.
Armin Ronacher announces Mario Zechner joining Earendil, discussing software philosophy, AI, and building thoughtful tools.
An essay on designing software tools with compassion for users experiencing mental health crises or cognitive impairment, arguing it leads to better software for everyone.
A software developer draws parallels between designing the Requests HTTP library and maintaining a healthy marriage, focusing on system design principles.
Steve Yegge discusses evolving the Beads CLI for AI agents by implementing their 'hallucinations' to create a natural interface.
Explores strategies for implementing and testing complex data filtering logic, balancing correctness and performance between in-memory and database queries.
Analysis of Apple's Creator Studio app icons and the broader software design philosophy at Apple, using icon changes as a case study.
A manifesto advocating for AI-powered software that is personalized, private, and user-centric, moving beyond one-size-fits-all design.
Explores 'context plumbing' for AI agents, the engineering needed to move relevant context from various sources to where AI systems run.
Explores software design philosophy of minimizing user effort, using Google Calendar as an example of optimizing for common cases while supporting edge cases.
A comprehensive series on Event Storming Big Picture, a collaborative workshop technique for aligning business and tech teams on complex domains.
Explores error handling and data guarantees in Fortran using a polyline type, focusing on enforcing constraints through private components and factory functions.
Explores using Fortran types and private components to prevent edge cases and ensure safe function calls, focusing on error handling for non-empty lists.
Explores common pitfalls in software abstraction like DRY misuse, lasagna code, and util files, offering advice for scalable design.
The article critiques the DRY principle, explaining how its overzealous application can lead to complex, hard-to-maintain code and bad abstractions.
Explores the concept of 'Design Pressure' in software architecture, examining invisible forces that shape code and discussing coupling, types, and ORMs.