@@ -65,33 +65,29 @@ permissions) and an ETA.
6565
6666### Problem
6767
68- Once the Goal is clear, you must identify what stops you from achieving it.
69- Anything that is stopping you - is a "Problem". A typical question to ask is:
70- "Why is this Goal not achieved and what is the Problem?".
71-
72- Sometimes, a Goal already has a few identified problems, but not always.
68+ Once a Goal is clear, you must identify what prevents its achievement.
69+ Anything that acts as a barrier is considered a "Problem." Ask yourself:
70+ "Why is this Goal not achieved, and what specifically is the problem?"
7371
7472> [ !NOTE]
75- > Once a Problem is identified, we report it as a
76- > [ GitHub Issue] ( https://docs.github.com/en/issues ) with the following naming
77- > pattern: ` Problem: [statement] ` . We're counting on our contributors to
78- > identify problems. Keep a Problem name short (under 65 chars) and crystal
79- > clear.
80- >
81- > The statement must read as a ** job story** : describe what the specific user
82- > ** can't do** or what is broken for them. Ask:
83- > _ "What can [ user] not do because of this problem?"_
73+ > Report each Problem as a [ GitHub Issue] ( https://docs.github.com/en/issues )
74+ > using the naming pattern: ` Problem: [statement] ` . Keep the name short
75+ > (under 65 characters) and crystal clear.
76+
77+ The statement must be a ** job story** — describe what a specific user ** cannot
78+ do** or what is broken for them. Ask: _ "What can [ user] not do because of this
79+ problem?"_
8480
8581| ** Good** ✅ | ** Bad** ❌ | ** Why?** |
8682| ---------------------------------------------- | -------------------------------------------- | ------------------------------ |
8783| ` operators can't view their account balance ` | ` operators don't have their account balance ` | Describes inability, not state |
8884| ` users can't submit a form without refreshing ` | ` form submission issue ` | Vague, no actor or action |
8985| ` admins can't export reports as CSV ` | ` CSV export missing ` | No subject, not a job story |
9086
91- Make sure each Problem issue is interlinked with its Goal issue:
87+ Ensure each Problem issue is properly interlinked with its parent Goal issue:
9288
93- - add a Problem issue link into the Goal description
94- - add a Goal issue link to the Problem description
89+ - Add the Problem issue link to the Goal description.
90+ - Add the Goal issue link to the Problem description.
9591
9692### Solution
9793
@@ -182,19 +178,20 @@ sign their commits.
182178For detailed instructions on why and how to sign your commits refer to
183179[ GitHub's documentation on commit signature verification] ( https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification ) .
184180
185- > [ !Note] We recommend signing commits using an
181+ > [ !NOTE]
182+ > We recommend signing commits using an
186183> [ SSH key] ( https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification#ssh-commit-signature-verification ) .
187184> Ensure your Git version supports SSH signature verification (Git 2.34 or
188185> later).
189186
190187### Scoping
191188
192- > [ !NOTE ]
189+ > [ !TIP ]
193190> Here's a [ good resource] ( https://youtu.be/bmSAYlu0NcY?si=2lLQeY1PGCY9tcvX ) on software design philosophy.
194191
195192When planning the scope of work, make sure you
196193[ keep PRs small] ( https://artsy.github.io/blog/2021/03/09/strategies-for-small-focused-pull-requests/ ) .
197- You must be able to complete your PR within 3- 4 hours.
194+ You must be able to complete your PR within 3– 4 hours.
198195If the solution requires more time, then decompose it into smaller independent
199196PRs. In case your smaller PRs can't be used on production, use feature flags.
200197
@@ -349,7 +346,7 @@ Referrals claimed after the fact will not be counted.
349346Once the eligibility conditions are met, reach out to your lead to claim the
350347reward.
351348
352- > [ !NOTE ]
349+ > [ !IMPORTANT ]
353350> This referral program applies unless there is a separate commercial
354351> engagement between Holdex and the contributor, in which case referral terms
355352> are governed by that agreement instead.
0 commit comments