Communication
Async Communication

Async Communication Best Practices

Open source is distributed. Master async communication.

The Async Advantage

Sync (Real-time):
- Fast feedback
- But requires both present
- High context switching

Async (Delayed):
- Works across timezones
- Everyone can think
- Better documentation
- No interruptions

How to Async Well

1. Write Clearly

❌ Sync style:
"Hey, quick question about the thing"

✅ Async style:
"Question: In database.py line 42, why use 
synchronous queries instead of async? 
Is it intentional or for simplicity right now?"

2. Provide Context

❌ Unclear:
"This doesn't work"

✅ Clear:
"When I run `npm test`, the integration 
tests fail with 'ENOENT' error. Happens 
on main branch too. Details: [log excerpt]"

3. Don't Demand Urgency

❌ Wrong:
"Really need this reviewed ASAP!!!"

✅ Right:
"No rush, but when you get a chance, 
this is ready for review."

4. Use Threads/Replies

  • Keep conversations grouped
  • Don't spam multiple channels
  • Use replies in discussions

5. Summarize Decisions

After discussion, summary:
- We decided to use approach X
- Rationale: [reasoning]
- Next steps: [concrete actions]

Async Communication Rules

  • Self-contained: Include all needed context
  • Clear: Anyone could understand
  • Specific: Not vague or hand-wavy
  • Patient: Expect 24-48h response times
  • Documented: Write it down for future reference

Async is the default in open source. Learn to thrive in it.