Allen Holub
Authority. When Allen speaks the world listens
Allen Holub
Authority. When Allen speaks the world listens
Allen Holub has been writing software since dinosaurs roamed the earth, starting in high school on an IBM 360/65 enthroned in its air-conditioned glass-walled room and fed punch cards by white-clad priests. Since then, he's written two operating systems and several compilers and contributed to several commercial and open-source products, all without punch cards. He's been a CTO for early-stage startups and a Principal Architect for a medium-sized one. He's authored a gazillion articles and a dozen books, some used as texts at U.C. Berkeley, MIT, Cal Tech, and IIT. He was a contributing editor at Dr. Dobb’s Journal and JavaWorld.
Allen has an international reputation in practical software development processes and software architecture. He has worked as an independent consultant for decades, helping companies become more effective at writing software and working with all levels of the organization, from the CEO to sitting down and mobbing with the teams. He also teaches classes on software architecture and effective development practices. He was the Chan-Norris Distinguished (no less) Professor of Computer Science at Mills College.
Allen plays the piano, rides a bicycle, and flies small airplanes, but not at the same time.
Warm up with his conversation about software with Uncle Bob: A Path to Better Programming • Robert "Uncle Bob" Martin & Allen Holub
Upcoming masterclasses featuring Allen Holub
Domain-Focused Component Architecture for AI-Assisted Development: A Hands-on Workshop
There isn’t an LLM on the planet that understands architecture, but without the structure of an appropriate architecture, the system “drifts” gradually into one riddled with mysterious bugs, one that can’t scale or adapt easily to new requirements. You can’t just specify features in your prompt and hope for the best; you must tell the LLM how to build those features, and you need an architecture that’s tailored specifically for AI-assisted development.
The most effective architectures for this purpose are domain-focused component architectures. (These encompass everything from compartmentalized monoliths to microservices.) The domain focus allows you to easily work incrementally across multiple teams, evolving the system gradually as you learn. The component structure limits the blast radius of problematic code and minimizes surprises (e.g., bugs introduced by the LLM in a part of the system you didn’t expect). This approach reduces development, maintenance, and debugging time and costs (token spend) by an order of magnitude.
In this hands-on workshop, you’ll learn
- The characteristics of component systems
- How to create architectures that welcome changing requirements and facilitate teamwork without adding dependencies that can slow you down.
- How to design systems that can evolve incrementally over time. Incremental architectures start simple and grow as you learn, as the need for scaling emerges
- How to design systems that support AI-assisted software engineering, make it easy to incorporate code written by the LLM, manage contexts effectively to improve accuracy and keep token costs down, and limit the blast radius when the LLM makes a mistake.
- How to identify the user’s story (✋ Hands-on exercise)
- Workflow analysis and how to use it to shrink stories (✋ hands-on exercise)
- How to design effective declarative APIs around the domain workflow (✋ hands-on exercise)
- How to build choreographed systems around messaging
- Messaging topology (✋ hands-on exercise)
- The Principles of DDD (domain-driven design)
- How to design domain-focused event-based messaging systems using event storming (✋ hands-on exercise)
- How to build effective APIs for both human and intelligent agent-to-agent communication.
Reserve your spot now
Domain-Focused Component Architecture for AI-Assisted Development: A Hands-on Workshop
There isn’t an LLM on the planet that understands architecture, but without the structure of an appropriate architecture, the system “drifts” gradually into one riddled with mysterious bugs, one that can’t scale or adapt easily to new requirements. You can’t just specify features in your prompt and hope for the best; you must tell the LLM how to build those features, and you need an architecture that’s tailored specifically for AI-assisted development.
The most effective architectures for this purpose are domain-focused component architectures. (These encompass everything from compartmentalized monoliths to microservices.) The domain focus allows you to easily work incrementally across multiple teams, evolving the system gradually as you learn. The component structure limits the blast radius of problematic code and minimizes surprises (e.g., bugs introduced by the LLM in a part of the system you didn’t expect). This approach reduces development, maintenance, and debugging time and costs (token spend) by an order of magnitude.
In this hands-on workshop, you’ll learn
- The characteristics of component systems
- How to create architectures that welcome changing requirements and facilitate teamwork without adding dependencies that can slow you down.
- How to design systems that can evolve incrementally over time. Incremental architectures start simple and grow as you learn, as the need for scaling emerges
- How to design systems that support AI-assisted software engineering, make it easy to incorporate code written by the LLM, manage contexts effectively to improve accuracy and keep token costs down, and limit the blast radius when the LLM makes a mistake.
- How to identify the user’s story (✋ Hands-on exercise)
- Workflow analysis and how to use it to shrink stories (✋ hands-on exercise)
- How to design effective declarative APIs around the domain workflow (✋ hands-on exercise)
- How to build choreographed systems around messaging
- Messaging topology (✋ hands-on exercise)
- The Principles of DDD (domain-driven design)
- How to design domain-focused event-based messaging systems using event storming (✋ hands-on exercise)
- How to build effective APIs for both human and intelligent agent-to-agent communication.
Reserve your spot now
Content featuring Allen Holub
War is Peace, Freedom is Slavery, Ignorance is Strength, Scrum is Agile
War is Peace, Freedom is Slavery, Ignorance is Strength, Scrum is Agile
War is Peace, Freedom is Slavery, Ignorance is Strength, Scrum is Agile
Getting Buy-In: Overcoming Larman's Law
Getting Buy-In: Overcoming Larman's Law
Getting Buy-In: Overcoming Larman's Law
Getting Buy-In: Overcoming Larman's Law
Past masterclasses featuring Allen Holub
2 Days: Incremental Architecture: Building Domain-focused Systems that Welcome Change | GOTO Copenhagen 2025
Incremental Architecture: Building Domain-focused Systems that Welcome Change | YOW! Melbourne 2024
Incremental Architecture: Building Domain-focused Systems that Welcome Change | YOW! Sydney 2024
Browse all experts
Here