Skip to content

Commit 32e53b7

Browse files
committed
docs: update terminology from "users" to "consumers" for consistency across documentation
1 parent 86290ff commit 32e53b7

File tree

7 files changed

+136
-66
lines changed

7 files changed

+136
-66
lines changed

docs/Contribute.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ Connect with like-minded developers passionate about great developer experiences
6666
</div>
6767
<!-- markdownlint-enable MD033 -->
6868

69-
### 🎨 **Design & User Experience**
69+
### 🎨 **Design & Consumer Experience**
7070

7171
<!-- markdownlint-disable MD033 -->
7272
<div style="background: linear-gradient(135deg, #fff3e0 0%, #ffe0b2 100%); padding: 1.5rem; border-radius: 8px; margin: 1rem 0;">

docs/README.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,11 @@
44

55
> 🌟 **Imagine a world** where every developer, operator, AI agent, and build system knows exactly how to interact with your codebase. Where onboarding takes minutes, not days. Where your code is as welcoming as your team.
66
7-
The **Codebase Interface Initiative** is a set of principles and practices that transforms how we think about codebases. Instead of treating them as mere collections of files, we treat them as **products with multiple users** - each deserving a great experience.
7+
The **Codebase Interface Initiative** is a set of principles and practices that transforms how we think about codebases. Instead of treating them as mere collections of files, we treat them as **products with multiple consumers** - each deserving a great experience.
88

9-
## 🎯 What Makes This Special?
9+
## 🚀 Your Learning Journey
1010

11-
We've identified **5 distinct audiences** that interact with every codebase:
12-
13-
### 👤 Service Users
14-
People who use your product
11+
### 👤 Service Consumers
1512

1613
### 🧑‍💻 Contributors
1714
Developers who improve your code

docs/audiences.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ Every successful codebase serves **multiple audiences** with distinct needs, goa
66
77
---
88

9-
## 👤 Service Users (Consumers)
9+
## 👤 Service Consumers
1010

11-
> **🎯 Who they are:** End users who want to understand and use what your project offers
11+
> **🎯 Who they are:** End consumers who want to understand and use what your project offers
1212
>
1313
> **💭 What they're thinking:** *"What does this do? How do I get started? Is this reliable?"*
1414
@@ -26,7 +26,11 @@ Every successful codebase serves **multiple audiences** with distinct needs, goa
2626
- Installation/setup instructions
2727
- Usage documentation and tutorials
2828

29-
**🌟 Success looks like:** Users can understand your project and get started quickly.
29+
**🌟 Success looks like:** Consumers can understand your project and get started quickly.
30+
31+
---
32+
33+
## 👥 Contributors
3034

3135
---
3236

@@ -130,8 +134,8 @@ Every successful codebase serves **multiple audiences** with distinct needs, goa
130134

131135
These audiences don't exist in isolation - they interact and overlap:
132136

133-
- **Users** often become **Contributors** when they want new features
134-
- **Contributors** need to understand **Operator** concerns for production-ready code
137+
- **Consumers** often become **Contributors** when they want new features
138+
- **Contributors** often become **Operators** when deploying their work
135139
- **AI Agents** assist all other audiences in their tasks
136140
- **Build Agents** validate the work of **Contributors** before **Operators** deploy
137141

docs/benefits.md

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Self-service documentation can reduce interruptions
2121

2222
---
2323

24-
## 👤 Service Users (Consumers)
24+
## 👤 Service Consumers
2525

2626
<!-- markdownlint-disable MD033 -->
2727
<div style="background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%); padding: 2rem; border-radius: 10px; margin: 1rem 0;">
@@ -31,23 +31,21 @@ Self-service documentation can reduce interruptions
3131
**Before Codebase Interface:**
3232
- ❌ Spend 30+ minutes just figuring out what the project does
3333
- ❌ Trial-and-error setup processes
34-
- ❌ Frustrated users abandon projects before getting value
34+
- ❌ Frustrated consumers abandon projects before getting value
3535

3636
**After Codebase Interface:**
37-
-**5-minute comprehension** - Users understand your project instantly
37+
-**5-minute comprehension** - Consumers understand your project instantly
3838
-**One-command setup** - Consistent installation experiences
39-
-**Self-service success** - Users solve problems without asking for help
39+
-**Self-service success** - Consumers solve problems without asking for help
4040
-**Confidence boost** - Clear documentation builds trust in your project
4141

4242
</div>
4343

4444
**🎪 Real Impact:**
45-
- **Higher adoption rates** - Users actually try your project
46-
- **Better reviews** - Satisfied users become advocates
47-
- **Reduced support burden** - Fewer "how do I..." questions
48-
- **Faster feedback loops** - Users can evaluate fit quickly
49-
50-
---
45+
- **Higher adoption rates** - Consumers actually try your project
46+
- **Better reviews** - Satisfied consumers become advocates
47+
- **Reduced support load** - Self-service capabilities scale
48+
- **Faster feedback loops** - Consumers can evaluate fit quickly---
5149

5250
## 🧑‍💻 Contributors
5351

@@ -157,7 +155,7 @@ Self-service documentation can reduce interruptions
157155

158156
The real magic happens when **all audiences benefit simultaneously**:
159157

160-
> **🎯 Happy Users****More Contributors****Better Quality****Reliable Operations****AI-Enhanced Development****Faster Delivery****Even Happier Users**
158+
> **🎯 Happy Consumers****More Contributors****Better Quality****Reliable Operations****AI-Enhanced Development****Faster Delivery****Even Happier Consumers**
161159
>
162160
> *This creates a virtuous cycle of improvement and growth.*
163161

docs/examples.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ Keep it simple but complete. Every file has a clear purpose, and new developers
4242
??? example "📁 **Complete Directory Structure**"
4343
```txt
4444
my-awesome-service/
45-
├── 📚 README.md # 👤 Users: What this service does & how to use it
45+
├── 📚 README.md # 👤 Consumers: What this service does & how to use it
4646
├── 🤝 CONTRIBUTING.md # 🧑‍💻 Contributors: How to help improve this service
4747
├── 🤖 AGENTS.md # 🤖 AI: Context for AI-assisted development
4848
├── 🚀 RUNBOOK.md # 🛠️ Operators: How to deploy & maintain this service
@@ -189,7 +189,7 @@ Built for maximum transparency and community engagement. Every audience has clea
189189

190190
| For | Document | Purpose |
191191
|-----|----------|---------|
192-
| 👤 **Users** | [📚 Docs](docs/README.md) | Learn the principles and see examples |
192+
| 👤 **Consumers** | [📚 Docs](docs/README.md) | Learn the principles and see examples |
193193
| 🧑‍💻 **Contributors** | [🤝 Contributing](CONTRIBUTING.md) | Understand how to help |
194194
| 🛠️ **Operators** | [🚀 Runbook](RUNBOOK.md) | Deploy and maintain |
195195
| 🤖 **AI Agents** | [🤖 Agents](AGENTS.md) | Context for AI assistance |
@@ -266,7 +266,7 @@ Designed for complex, business-critical applications with multiple teams and sop
266266
│ ├── 💰 payment-service/ # Payment processing domain
267267
│ └── 📧 notification-service/ # Communication domain
268268
269-
├── 🎭 experiences/ # 🎨 User Interfaces & Client Apps
269+
├── 🎭 experiences/ # 🎨 Consumer Interfaces & Client Apps
270270
│ ├── 📖 README.md # UI/UX philosophy and standards
271271
│ ├── 🌐 web-app/ # React/Vue/Angular web application
272272
│ ├── 📱 mobile-app/ # React Native/Flutter mobile app
@@ -304,13 +304,13 @@ Designed for complex, business-critical applications with multiple teams and sop
304304

305305
**Architecture:** Event-driven microservices with domain-driven design principles.
306306

307-
**Scale:** Serving 10M+ users across 50+ countries with 99.9% uptime.
307+
**Scale:** Serving 10M+ consumers across 50+ countries with 99.9% uptime.
308308

309309
## 🚀 Quick Start by Role
310310

311311
<table>
312312
<tr>
313-
<td><strong>👤 Business Users</strong><br>
313+
<td><strong>👤 Business Consumers</strong><br>
314314
<a href="#business-value">View Business Value</a><br>
315315
<a href="experiences/README.md">Access Applications</a>
316316
</td>
@@ -350,7 +350,7 @@ Designed for complex, business-critical applications with multiple teams and sop
350350
WEB --> API
351351
MOBILE --> API
352352
API --> ORDER
353-
API --> USER
353+
API --> CONSUMER
354354
API --> PAYMENT
355355
ORDER --> STREAM
356356
STREAM --> WAREHOUSE
@@ -361,7 +361,7 @@ Designed for complex, business-critical applications with multiple teams and sop
361361
| Domain | Purpose | Team | Documentation |
362362
|---------|---------|------|---------------|
363363
| 🧠 **[Behaviour](behaviour/README.md)** | Business logic & domain services | Backend Teams | Domain guides, APIs |
364-
| 🎭 **[Experiences](experiences/README.md)** | User interfaces & interactions | Frontend Teams | UI guides, components |
364+
| 🎭 **[Experiences](experiences/README.md)** | Consumer interfaces & interactions | Frontend Teams | UI guides, components |
365365
| 📡 **[Publication](publication/README.md)** | Data integration & events | Platform Team | Data flows, schemas |
366366
| 📊 **[Outcomes](outcomes/README.md)** | Analytics & intelligence | Data Team | Reports, insights |
367367
| 🎨 **[Design](design/README.md)** | Architecture & decisions | Architecture Team | ADRs, contracts |
@@ -371,7 +371,7 @@ Designed for complex, business-critical applications with multiple teams and sop
371371
- 🚀 **50% faster** feature delivery through domain separation
372372
- 📈 **300% increase** in developer productivity
373373
- 🛡️ **99.9% uptime** with robust monitoring and automation
374-
- 🌍 **Global scale** serving millions of users seamlessly
374+
- 🌍 **Global scale** serving millions of consumers seamlessly
375375

376376
## 🛠️ Development Workflow
377377

docs/interfaces.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Readme
44

5-
- **Primary Audience**: Users
5+
- **Primary Audience**: Consumers
66
- **Secondary Audience**: Contributors, Operators
77

88
## Contributing
@@ -17,7 +17,7 @@
1717

1818
## Changelog
1919

20-
- **Primary Audience**: Users
20+
- **Primary Audience**: Consumers
2121
- **Secondary Audience**: Contributors, Operators
2222

2323
## Language

docs/principles.md

Lines changed: 104 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,114 @@
1-
# Principles
1+
# 🎯 Core Principles
22

3-
1. Identify and empathise with all audience perspectives on the codebase - contributors, users, operators, AI agents, Build agents.
4-
2. Provide specific interfaces for each audience perspective.
5-
3. Ensure each audience interface is clean and remains maintainable.
6-
4. Provide a consistent abstraction over languages and frameworks.
7-
5. Provide a codebase experience that can be replicated by any audience, anywhere and on any platform.
8-
6. Do not be constrained by current technology and tools - provoke change to how we would like to interact with codebases over current constraints.
9-
7. Utilise cross platform and cross IDE tools and technologies to provide the interfaces.
10-
8. Empathise with your own future self who could become any of the audience perspectives at any time.
3+
> *The foundation stones that make codebases accessible to everyone, everywhere*
4+
5+
Welcome to the heart of the codebase interface philosophy! These eight principles guide every decision and shape how we think about creating truly inclusive development environments.
6+
7+
---
8+
9+
## 🌟 The Eight Principles
10+
11+
### 1. 👥 **Embrace Every Perspective**
12+
13+
Identify and empathise with all audience perspectives on the codebase
14+
15+
Every codebase serves multiple masters - the **contributor** writing features, the **consumer** integrating it, the **operator** deploying it, the **AI agent** analyzing it, and the **build system** processing it. Great codebases acknowledge this reality and design for all perspectives from day one.
16+
17+
**Why this matters**: When you only optimize for one audience, you create friction for everyone else. The result? Brilliant code that nobody can use, deploy, or maintain effectively.
18+
19+
---
20+
21+
### 2. 🎭 **Craft Tailored Interfaces**
22+
23+
Provide specific interfaces for each audience perspective
24+
25+
Just as a building has different entrances for visitors, staff, and deliveries, your codebase needs distinct interfaces for each audience. A contributor needs development workflows, while an operator needs deployment guides.
26+
27+
**Why this matters**: One-size-fits-all documentation and interfaces create cognitive overhead. Tailored experiences let each audience focus on what matters to them.
1128

1229
---
1330

14-
## What's Next?
31+
### 3. ✨ **Keep Interfaces Clean**
1532

16-
Now that you understand the core principles, its time to understand the different audiences of our codebase.
33+
Ensure each audience interface is clean and remains maintainable
1734

18-
<!-- markdownlint-disable MD033 -->
19-
<div class="navigation-buttons" markdown="1" style="display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-top: 1.5rem;">
35+
Beautiful interfaces attract consumers, but maintainable interfaces keep them. Design your audience touchpoints to be simple, consistent, and easy to evolve as your project grows.
2036

21-
<div markdown="1">
22-
[← Previous: Welcome](../){ .md-button }
23-
</div>
37+
**Why this matters**: Messy interfaces create barriers to adoption and contribution. Clean interfaces invite participation and reduce onboarding friction.
38+
39+
---
40+
41+
### 4. 🌐 **Abstract Technology Choices**
42+
43+
Provide a consistent abstraction over languages and frameworks
44+
45+
Whether your project uses Python, Go, Rust, or JavaScript shouldn't change how people interact with it. Standardize on cross-platform tools and conventions that work everywhere.
46+
47+
**Why this matters**: Technology-specific interfaces create silos and limit your project's reach. Universal patterns maximize accessibility and collaboration.
48+
49+
---
50+
51+
### 5. 🔄 **Enable Universal Replication**
52+
53+
Provide a codebase experience that can be replicated by any audience, anywhere and on any platform
54+
55+
From a developer's laptop to a CI server in the cloud, your codebase should behave predictably. The same commands should work the same way, regardless of who's running them or where.
56+
57+
**Why this matters**: Inconsistent experiences lead to "works on my machine" problems and reduce confidence in your project.
58+
59+
---
2460

25-
<div markdown="1" style="text-align: right;">
26-
[Next: Audiences →](../audiences/){ .md-button .md-button--primary }
27-
</div>
61+
### 6. 🚀 **Think Beyond Today's Tools**
2862

29-
</div>
63+
Do not be constrained by current technology and tools - provoke change to how we would like to interact with codebases over current constraints
64+
65+
Don't just accept that "this is how we've always done it." Imagine the ideal codebase experience and work backwards to create it, even if it means challenging established practices.
66+
67+
**Why this matters**: Innovation happens when we question assumptions and design for the future we want, not just the present we're stuck with.
68+
69+
---
70+
71+
### 7. 🛠️ **Choose Universal Tools**
72+
73+
Utilise cross platform and cross IDE tools and technologies to provide the interfaces
74+
75+
Favor tools that work in VS Code, Vim, IntelliJ, and the command line. Prefer solutions that run on Windows, macOS, and Linux without modification.
76+
77+
**Why this matters**: Tool-specific solutions create barriers and force unnecessary choices on your consumers. Universal tools maximize participation.
78+
79+
---
80+
81+
### 8. ⏰ **Design for Future You**
82+
83+
Empathise with your own future self who could become any of the audience perspectives at any time
84+
85+
Today's contributor becomes tomorrow's operator. Design interfaces that will still make sense to you six months from now, when you're wearing a different hat and your memory is fuzzy.
86+
87+
**Why this matters**: We all switch contexts constantly. Interfaces that work for every version of yourself create lasting value and reduce cognitive burden.
88+
89+
---
90+
91+
## 💫 The Ripple Effect
92+
93+
These principles work together to create something magical: **codebases that welcome everyone**. When you design for multiple perspectives, use universal tools, and think beyond today's constraints, you create environments where:
94+
95+
- 🎯 **New contributors** can get productive quickly
96+
- 🔧 **Operators** can deploy with confidence
97+
- 🤖 **AI agents** can provide accurate assistance
98+
- 🏗️ **Build systems** can process reliably
99+
- 👥 **Teams** can collaborate seamlessly
100+
101+
---
102+
103+
## 🎯 Putting Principles into Practice
104+
105+
Ready to see these principles in action? Understanding your audience is the crucial next step in creating interfaces that truly serve everyone.
106+
107+
### Navigation
108+
109+
**[Previous: Welcome](../)**
110+
**[Next: Audiences](../audiences/)**
111+
112+
---
30113

31-
<style>
32-
@media (max-width: 768px) {
33-
.navigation-buttons {
34-
display: grid !important;
35-
grid-template-columns: 1fr !important;
36-
gap: 0.5rem !important;
37-
}
38-
.navigation-buttons > div:last-child {
39-
text-align: left !important;
40-
}
41-
}
42-
</style>
43-
<!-- markdownlint-enable MD033 -->
114+
*Remember: Great codebases aren't just about great code - they're about great experiences for everyone who touches them.*

0 commit comments

Comments
 (0)