This video explains the concept of event sourcing using a football match analogy. Instead of storing the current score or state, it demonstrates how storing every event (pass, tackle, goal) as an immutable record allows you to replay the entire game and derive any state at any point in time.
#software-architecture
14 items
The article argues that software architecture is shifting toward a data-first approach, where data models drive system design rather than being an afterthought. This paradigm emphasizes treating data as a first-class citizen in architectural decisions, enabling more flexible and scalable systems.
The article discusses the challenges of platform development, emphasizing the need to balance competing priorities and stakeholder interests. It explores how successful platforms require careful navigation of technical, business, and user experience considerations.
The article discusses the shift toward asynchronous execution in AI agents, highlighting how this approach improves efficiency and scalability. It explores technical implementations and benefits of async patterns for agent-based systems.
The article discusses the shift toward asynchronous execution in AI agents, highlighting how this approach improves scalability and efficiency. It explores the technical implications and benefits of moving away from synchronous processing models.
The article explores the concept of message-passing as a fundamental approach to data processing and communication. It examines how taking this paradigm seriously could reshape our understanding of data structures and computational models.
The article references a 1997 talk, highlighting how architectural considerations become increasingly important as systems grow in complexity, often outweighing material choices.
The article discusses the concept of "impossible components" in React development, exploring how components can be composed across different layers of the stack. It examines the challenges and possibilities of creating components that bridge various architectural levels.
The article describes a pendulum swing in programming trends over 17 years, from PHP dominance to dynamic languages gaining popularity, and now a return to static compilation, types, and monolithic architectures.
The article discusses a concept where each individual operates as an independent microservice, contrasting with Conway's Law about organizational structure mirroring system architecture. It explores how this approach could affect software development and team dynamics.
The article critiques the traditional Model-View-Controller pattern, arguing it often leads to bloated controllers and models. It suggests alternative architectural approaches that better separate concerns in modern software development.
The talk discusses risks of shipping unknown build dependencies from npm and runtime third-party service dependencies. It questions whether projects adequately consider long-term costs, and introduces "microstacks" as an approach using minimal build dependencies and no runtime service dependencies.
The Observer Pattern describes how code can monitor and respond to events as they occur. It enables objects to observe changes in other objects without tight coupling between them.
The article discusses the significance of microprocessors and what they represent in the broader context of technology and society. It examines their fundamental importance beyond just technical specifications.