# Scaling the Rust Language with Initiatives
Josh Triplett
2021-07-19
---
# The Rust<br>community<br>grows rapidly
---
# The Rust project grows steadily
---
# Rust governance grows slowly
Logarithmically at most
---
# The governance-to-community ratio shrinks rapidly
---
# The *language* should grow slowly
---
# Interests and needs grow with the community
---
# We need to scale
---
# We shouldn't become less responsive
---
# We need to empower people
---
# Make more reversible decisions
---
# Make more decisions reversible
use the "experimental feature" flag more
---
# [Lang team initiatives](https://lang-team.rust-lang.org/initiatives.html)
Evolution of previous efforts
---
# Roles
# Process
---
# Owner
- Prepare the "menu" of design options
- Make recommendations
- Show analysis and alternatives
- Work with others as needed
- Provide updates at least monthly
- Trusted with huge design influence
- Can be a team member, but not the liaison
---
# Liaison
- Provide lang-team guidance
- Feedback on the "menu"
- Need for explorations or expansions
- Decide when to escalate to full lang-team design meeting
- Leave design work and status/coordination work to owner
---
# Have an idea
- Talk about it on internals, Zulip, etc, to flesh it out a bit
- Ideally, identify a potential owner
---
# File proposal on the lang-team repo
- A lang team member can decide to be your liaison and second your proposal.
- Once that happens, we will create a Zulip stream, tracking issue, and (optionally) repository, etc.
---
# Explore design space, experiment
- Owner, and potentially other contributors, explore the design space and develop an RFC
- Can land code under an "experimental" feature gate
---
# Finish development
- Land code without "experimental" flag
- Have "explainer" documentation
- Liaison marks as "feature complete" when ready
---
# Stabilize
- Stabilization report
---
# Persistent expertise
- Owner won't necessarily do implementation
- We want the owner and others to stick around
- to guide implementation
- to guide design of future interacting features
{"metaMigratedAt":"2023-06-16T04:20:43.593Z","metaMigratedFrom":"YAML","title":"Scaling the Rust Language with Initiatives","breaks":"true","contributors":"[{\"id\":\"e9460a2b-f342-4d37-bb46-aef96f92ebfc\",\"add\":2442,\"del\":270},{\"id\":\"27d8f2ac-a5dc-4ebe-8c31-cc45bcd8447e\",\"add\":101,\"del\":0}]"}