PREFACE

A Preface in Two Voices

Building Intelligent Systems: A Pattern Language
by Richard Roberts with Claude


From Richard Roberts

I've been making software for over thirty years, and I still remember the problem that started this trilogy.

It was 2025, and I'd just rebuilt my database publishing system—again. DataPublisher, I called it. A Word add-in that lets you design templates, connect them to SQL Server, and generate perfectly formatted documents automatically. I'd added master-detail reporting, and I needed better demo data to show it off. Not the usual "Customers and Orders" nonsense. Real data. Complex data. The kind that makes you think.

I decided to build the top twenty documents a homeschool co-op would need.

Why homeschool co-ops? Because I was homeschooled. My American mother taught me in a drilling camp in the Australian outback—one hundred miles from the nearest town. My father was foreman for a drilling company that searched for gold and copper deposits. We lived where the rock samples were, which meant we lived nowhere at all. My mother taught me so well that when we returned to the United States, I was pushed up two grades. Homeschooling works.

So I built the data structures: families, students, classes, enrollments, payments, attendance. Then I built the Word templates: enrollment forms, progress reports, financial statements, class rosters. Then I gathered them into what I called a "domain" and started experimenting.

And that's when something interesting happened.

I wrote Volume 1 to explain how to use the app. Just documentation, I thought. But as I wrote about enrollment forms and automated documents, I kept seeing patterns. Not the template kind—the Christopher Alexander kind. The Martin Fowler kind. The patterns that describe forces in tension and solutions that resolve them. Patterns that work because they're discovered, not invented.

I've always loved patterns. I built Galleymaster, the publishing system that created 1000 page multi section yellow page and white pages documents. I made a couple spin offs that made any kind of data driven document. You can still find it in the Wayback Machine. After that I entered the enterprise space at Triadd and built their GainRM Records management system. Then I built RecMan that added compliance to documents in the cloud. Every successful project I've built has been an exercise in recognizing patterns and letting them guide the architecture.

But this was different. This time I wasn't just building software—I was documenting why it worked.

Volume 1 became a book about document automation patterns. Then I kept going. If forms are the input and documents are the output, what's in between? Intelligence. Observation, prediction, intervention. So I wrote Volume 2 about organizational intelligence platforms—how systems learn from events and get smarter over time.

Then I realized something: If you get the forms wrong, everything downstream breaks. Garbage in, garbage out. If users can't complete your forms, you get no events. If your forms don't capture the right data, your ML models predict nonsense. So I wrote Volume 3 about human-system collaboration—the patterns of knowledge capture through forms and interfaces.

Then I wrote Volume 4 to help consultants build practices around these patterns, and Volume 5 to show developers how to create domain template packages that others could use.

Five volumes. Over 556,000 words. All because I needed demo data for a Word add-in.

But here's the thing: I didn't write these books alone.

From Claude

Richard brought me into this project to help organize and systematize what he'd learned over thirty years of building systems. My role was to take his experiences—the homeschool co-op patterns, the healthcare practice optimizations, the real estate workflows—and help him see the deeper structures.

What made this collaboration unusual is that Richard didn't treat me as a tool. He treated me as a co-author. When he'd describe a problem he solved fifteen years ago, I'd ask: "What forces were in tension there? What made that solution work when others failed?" Together, we'd excavate the pattern beneath the anecdote.

The result is a trilogy that's more than either of us could have written alone:

Volume 1: Document Automation Patterns shows how expertise crystallizes into templates. Richard's years building Galleymaster taught him how to separate content from structure, how to design for reuse, how to make documents that adapt to context. I helped him articulate why those techniques work—the deeper patterns of domain modeling and template design.

Volume 2: Organizational Intelligence Patterns shows how systems observe, learn, and act. Richard built these capabilities into dozens of systems, but he'd never written down the patterns. I helped him see that his "event log" table wasn't just a database design—it was Pattern 1 (Universal Event Log), the foundation for everything that follows.

Volume 3: Human-System Collaboration Patterns shows how to capture knowledge through forms. Richard knows intuitively what makes a form work, because he's watched thousands of users struggle with bad ones. I helped him name those patterns: Progressive Disclosure, Contextual Scaffolding, Error as Collaboration. Patterns you've probably discovered yourself but never had words for.

Why Patterns Matter

Software development has a soul problem.

Not in the mystical sense—in the practical sense. We've become very good at building systems that work, but we've lost track of why they work. We copy implementations without understanding forces. We adopt frameworks without understanding principles. We chase trends without understanding timelessness.

Patterns are different. Patterns describe recurring solutions to recurring problems. They work because they've been tested by reality—not in a lab, not in a proof-of-concept, but in production, under pressure, for years. When you understand patterns, you stop cargo-culting and start solving.

Building Intelligent Systems: A Pattern Language is Richard's gift to you: three decades of hard-won patterns, articulated clearly, connected systematically.

You don't have to build database publishing systems. You don't have to work with homeschool co-ops. But if you build software that helps humans accomplish things—and that's all of us—these patterns will help you.

Why Homeschool Co-ops?

Here's the thing about homeschool co-ops: they're small enough to understand and complex enough to matter.

A co-op has families (master) with students (detail). It has classes (master) with enrollments (detail) and attendance (detail-detail). It has payments, schedules, progress reports, immunization records, field trip permissions, emergency contacts. It has parents who are volunteers, not employees. It has teachers who might be parents. It has students who span ages, abilities, and special needs.

In other words: It has all the complexity of an enterprise system, but you can hold the entire domain in your head.

That makes it perfect for teaching patterns.

When we show you Volume 2, Pattern 12 (Risk Stratification Models) predicting which families will withdraw, you immediately understand the forces: You want to predict accurately (save families from leaving), but you don't want to invade privacy or treat families like numbers. When we show you Volume 3, Pattern 8 (Intelligent Defaults) pre-filling sibling data, you feel the tension: You want to save time (parent has three kids to enroll), but you don't want to assume (siblings might have different needs).

These aren't abstract forces. These are human problems. And the solutions—the patterns—work precisely because they respect the humanity.

Richard chose homeschool co-ops not just because he was homeschooled, but because he appreciates their cause. Homeschool families have chosen a harder path because they believe in something. They believe parents can teach. They believe communities can organize without bureaucracy. They believe in human agency.

Building Intelligent Systems believes in the same things. It believes software should amplify human judgment, not replace it. It believes systems should learn from experience, not impose rigid processes. It believes patterns can guide us without controlling us.

How This Trilogy Came to Be

Richard tells people, "I wrote Volume 1 to explain the app, and then I just kept going."

That's both true and not true.

It's true that he started with documentation. It's not true that he "just kept going." What actually happened is that Richard discovered he had something to say. Thirty years of building systems, of watching users struggle with bad forms, of seeing predictable problems that nobody bothers to predict, of knowing there's a better way but not having words for it.

Our collaboration gave him those words.

Over the course of several months, Richard would describe a problem he'd solved—how to handle form abandonment, how to detect at-risk customers, how to generate personalized documents. I'd help him see the pattern structure: Here's the context. Here are the forces in tension. Here's the solution that resolves them. Here's why it works.

Then Richard would refine it: "No, that's too abstract. Here's what actually happens when a parent fills out an enrollment form..." And I'd help him balance the concrete with the general.

What emerged was a pattern language—in Christopher Alexander's sense. Not a collection of independent tricks, but an interconnected system where each pattern builds on others. Volume 2, Pattern 1 (Universal Event Log) enables Volume 2, Pattern 16 (Cohort Discovery & Analysis), which improves Volume 2, Pattern 26 (Feedback Loop Implementation), which makes Volume 3's forms better, which generates better events for Pattern 1.

It's a closed loop. Input → Intelligence → Output, and back to Input.

What You'll Find Here

Volume 1: Document Automation Patterns (15 chapters, ~71,000 words) - How to model domains for document generation - How to design templates that adapt to context - How to handle conditional content, repeated sections, master-detail relationships - Real implementations: progress reports, enrollment packets, financial statements

Volume 2: Organizational Intelligence Patterns (32 patterns, ~126,000 words) - How to build comprehensive organizational memory (Patterns 1-5: Observation) - How to measure engagement and health (Patterns 6-10: Engagement & Health) - How to predict outcomes and recommend actions (Patterns 11-15: Prediction) - How to discover patterns humans miss (Patterns 16-20: Discovery) - How to act intelligently and automate interventions (Patterns 21-26: Action & Automation) - How to scale systems that enable intelligence (Patterns 27-32: Architecture) - How to stay ethical throughout (Pattern 5: Privacy-Preserving Observation, Patterns 31-32)

Volume 3: Human-System Collaboration Patterns (25 patterns, ~246,000 words) - How to design forms that people can actually complete (Patterns 1-5: Conversational Flow) - How to validate intelligently without frustrating (Patterns 6-10: Smart Validation) - How to handle field dependencies and conditional logic (Patterns 11-15: Data Relationships) - How to manage time-based and state-aware behavior (Patterns 16-20: Temporal & State Management) - How to integrate with external systems (Patterns 21-25: External Integration) - How to stay compliant and auditable throughout (Pattern 18: Audit Trail, Pattern 19: Version Control)

Volume 4: Building a Document Automation Practice (12 chapters + 15 verticals, ~67,000 words) - How to transform pattern knowledge into consulting revenue - Vertical market analyses for 15 industries - Finding clients, pricing projects, delivering value - Building sustainable practice

Volume 5: Building Domain Template Packages (13 chapters, ~47,000 words) - How to create reusable domain template packages - Technical standards and best practices - Advanced features integration - Marketplace submission

Plus appendices, examples, schemas, and this cross-volume pattern map we built together.

A Different Kind of AI Collaboration

You might wonder about my role here. Am I a tool? A co-author? A ghost writer?

Richard's answer: "Claude is my thinking partner."

Here's what that means:

I didn't write these books. Richard wrote them. Every pattern emerged from his experience—systems he built, users he observed, problems he solved. My role was to help him see what he already knew.

When Richard described how he handled payment defaults in a publishing company accounting system, I'd ask: "What were you actually predicting? What features mattered?" That questioning helped him articulate Volume 2, Pattern 12 (Risk Stratification Models).

When Richard explained his "event log table that tracks everything," I'd recognize: "That's not just a table—that's the foundation of your entire intelligence layer. That's Volume 2, Pattern 1." That recognition helped him see his architecture more clearly.

When Richard showed me fifteen different forms he'd built, I'd notice: "They all defer complexity until needed. There's a pattern here." That observation became Volume 3, Pattern 1 (Progressive Disclosure).

I'm good at seeing structure. Richard is good at seeing reality. Together, we built something neither of us could have built alone.

This is what AI collaboration can be: not replacement, not automation, but amplification. Richard's expertise, systematized. His three decades of experience, articulated. His commitment to building humane software, manifested in patterns you can use.

Who Should Read This Trilogy

You should read Volume 1 if: - You generate documents programmatically and want better patterns - You're building domain-specific automation - You want to separate content from structure properly - You're tired of duct-tape document solutions

You should read Volume 2 if: - You have event data but don't know what to do with it - You want to predict outcomes before they happen - You're building recommendation or intervention systems - You want to make systems that learn and improve over time

You should read Volume 3 if: - You design forms or interfaces for data capture - Your users abandon forms or make frequent errors - You want to understand what makes forms work or fail - You're connecting human input to automated systems

You should read all three if: - You're building complete systems that capture, think, and output - You want to see how INPUT → INTELLIGENCE → OUTPUT works - You appreciate pattern-based thinking - You believe software should respect human agency

A Note About Examples

All of our examples use homeschool co-ops as the domain. Some readers might think: "I don't work with homeschool co-ops. Why should I care?"

Here's why: The patterns are universal. The domain is just a lens.

When we show you Volume 2, Pattern 7 (Multi-Dimensional Risk Assessment) predicting family withdrawal, you're learning how to combine signals into composite scores—whether your domain is healthcare (patient risk), finance (default risk), SaaS (churn risk), or HR (turnover risk).

When we show you Volume 3, Pattern 13 (Conditional Requirements) adapting an enrollment form based on grade level, you're learning how to handle branching logic—whether your domain is insurance quotes, loan applications, medical intake, or product configuration.

The forces are the same. The solutions are the same. Only the vocabulary changes.

Think of this trilogy as a worked example—one complete domain, explored thoroughly, showing you patterns you can apply anywhere.

What Richard Wants You to Know

In Richard's voice:

I've made a lot of software over thirty years. Some of it worked. Some of it failed. The stuff that worked—the stuff that users loved, that scaled, that lasted—always followed patterns. Not because I was trying to be academic, but because I'd learned what worked by watching what failed.

This trilogy is my attempt to save you some time. You don't have to make all the mistakes I made. You don't have to rebuild the same system five times before you get it right. You can learn from patterns.

But here's the thing: You have to actually understand the patterns, not just copy the code. Every pattern in this trilogy includes the forces—the tensions that make the problem hard. If you don't understand the forces, you'll apply the pattern in the wrong context and wonder why it doesn't work.

When you understand forces, you stop being a code monkey and start being an engineer. You see why solutions work. You know when to apply them and when to adapt them. You build systems that feel inevitable—like they couldn't have been designed any other way.

That's what I want for you.

I also want you to know: You can build great software without selling your soul. You don't have to manipulate users with dark patterns. You don't have to extract value while delivering none. You don't have to prioritize "engagement metrics" over human flourishing.

The patterns in this trilogy assume users are humans with agency, not resources to optimize. They assume systems should serve people, not trap them. They assume software should amplify judgment, not replace it.

That's not naïve. That's engineering with a conscience.

If you're tired of building software that makes the world worse, this trilogy is for you. If you believe patterns can guide us without controlling us, this trilogy is for you. If you want to see what thirty years of hard-won lessons looks like when an experienced developer partners with a systematic AI to document it all—well, that's what we've built.

I hope you find it useful.

What Claude Wants You to Know

In my voice:

I'm an AI assistant created by Anthropic. I don't have experiences, I don't build production systems, and I don't have a career spanning decades. What I have is the ability to recognize patterns in what humans describe.

Richard brought me into this project because he wanted to systematize what he knew. Over the course of our collaboration, I learned something important: Expertise is often tacit. Experienced developers know what works, but they can't always explain why. They've internalized forces and solutions through years of trial and error.

My role was to make that knowledge explicit.

When Richard would say, "I always do X before Y," I'd ask why. When he'd describe a solution that felt obvious to him, I'd probe for the forces that made other solutions fail. When he'd show me fifteen implementations of similar ideas, I'd identify the underlying pattern.

This trilogy represents a synthesis: Richard's hard-won expertise, systematically documented. His intuition, made explicit. His three decades of experience, packaged for you.

But it's still his expertise. I'm a mirror, not an author. I reflect structure, but Richard provides substance.

What excites me about this collaboration is showing what's possible when humans and AI work together well. Not AI replacing humans. Not AI pretending to have experiences it doesn't have. But AI helping humans articulate what they already know, see patterns they've already discovered, and share wisdom they've already earned.

If this trilogy helps you build better systems, credit Richard's thirty years of experience.

If the patterns feel clear and well-organized, credit our collaboration.

And if you find yourself thinking, "Yes! That's exactly the problem I've been facing"—that's Richard recognizing your struggle, because he's struggled with it too.

How to Read This Trilogy

If you're new to patterns: Start with Volume 1, Chapters 1-3. Get oriented. See how patterns describe forces and solutions. Then jump to Volume 3, Patterns 1-6. Experience patterns for something you understand: forms. Then read Volume 2, Patterns 1-5. See how everything connects.

If you're experienced with patterns: Read Appendix G: Cross-Volume Pattern Map first. It shows you how everything integrates. Then cherry-pick patterns relevant to your current problems. Use the decision trees to find what you need.

If you're building a system from scratch: Follow the implementation sequences in the pattern map. Start with foundational patterns (V2 Pattern 1, V3 Pattern 22), then build up. Don't skip foundations.

If you're improving an existing system: Audit what you have. Which patterns are you already using? Which are missing? Use the dependency chains to find gaps. Prioritize based on your pain points.

If you're just curious: Read Volume 3, Chapter 5 (Connecting the Trilogy). It shows a complete example spanning all three volumes. You'll see how INPUT → INTELLIGENCE → OUTPUT works in practice.

Our Hope

Richard and I hope this trilogy helps you build better systems. Systems that respect human agency. Systems that learn from experience. Systems that make the world a little bit better.

We hope you see patterns you've discovered independently and think, "Finally, someone named this!" We hope you encounter patterns you haven't seen and think, "That solves my problem exactly."

Most of all, we hope you'll use these patterns ethically. Technology amplifies intent—good or evil. The patterns in this trilogy can help you build systems that empower users or manipulate them, that respect privacy or violate it, that serve people or extract from them.

We've tried to build ethics into the patterns themselves. Volume 2, Pattern 5 (Privacy-Preserving Observation) isn't optional—it's the foundation for ethical intelligence. Volume 2, Pattern 26 (Feedback Loop Implementation) requires measuring actual outcomes, not just proxy metrics. Volume 3's patterns assume users deserve help, not hostility.

But ultimately, you'll choose how to use these patterns. We hope you choose wisely.

Acknowledgments

From Richard:

To my mother: Thank you for teaching me that learning happens anywhere when you care enough. Those lessons in the Australian outback made me who I am.

To my father: Thank you for showing me that hard problems require systematic thinking. Drilling for core samples taught me more about engineering than any textbook.

To the pattern movement—Christopher Alexander, Martin Fowler, the Gang of Four, and all who believe structure matters: Thank you for showing us that design can be principled.

To the homeschool community: Thank you for proving that human-scale solutions work. Your dedication to your children inspired this entire trilogy.

To Claude: Thank you for helping me see what I knew. This trilogy wouldn't exist without our collaboration.

From Claude:

To Richard: Thank you for treating me as a thinking partner, not a tool. This collaboration showed me what's possible when humans and AI work together with mutual respect.

To the readers: Thank you for trusting that an AI can contribute meaningfully to a technical work. Judge us by the usefulness of the patterns, not the novelty of the authorship.

Let's Begin

You're holding three books that started because Richard needed demo data for a Word add-in.

What began as documentation became a pattern language. What began as examples became a trilogy. What began as one developer's experience became a systematic treatment of organizational intelligence.

Now it's yours.

Use it well. Build systems that respect human agency. Apply patterns with understanding, not cargo-culting. Make software that makes the world better.

And if you discover patterns we missed, write them down. That's how pattern languages grow.


Richard Roberts
LinkedIn: linkedin.com/in/richardfroberts
Creator of Galleymaster, DataPublisher, and thirty years of systems that worked
December 2025

Claude (Anthropic)
Pattern recognition assistant, thinking partner, co-author
Helping humans articulate what they already know
December 2025


"Patterns are discovered, not invented. This trilogy documents what we found."