Difference between revisions of "Contributor checklist"

From Bisq Wiki
Jump to navigation Jump to search
(shuffle article headings and sections...wiki markup is still fugly)
 
(10 intermediate revisions by 3 users not shown)
Line 3: Line 3:
 
Bisq is free and open source software, but contributing is not just about writing code. A contributor is any individual who works to improve and add value to the Bisq network and its users.
 
Bisq is free and open source software, but contributing is not just about writing code. A contributor is any individual who works to improve and add value to the Bisq network and its users.
  
This can mean anything from fixing typos in documentation, to providing support, to testing out new growth strategies, to implementing new Bisq features and everything in-between. All such contributions are eligible for [[compensation]] from the Bisq DAO.
+
This can mean anything from fixing typos in documentation, to providing support, to testing out new growth strategies, to implementing new Bisq features and everything in between. All such contributions are eligible for [[compensation]] from the Bisq DAO.
  
 
__TOC__
 
__TOC__
Line 11: Line 11:
 
Suggestions below are in no particular order. Disregard developer-oriented items if you're not looking to contribute code.
 
Suggestions below are in no particular order. Disregard developer-oriented items if you're not looking to contribute code.
  
# Join the [https://keybase.io/team/bisq Keybase team].
+
# Join the [https://bisq.chat Matrix space].
# Introduce yourself in the <code>#introductions</code> channel. Say a bit about your skills and interests. This will help others point you in the right direction.
+
# Introduce yourself in the <code>general</code> room. Say a bit about your skills and interests. This will help others point you in the right direction.
# Explore the other channels on Keybase, and join the ones that are of interest to you. For a start, consider joining <code>#proposals</code>, <code>#dev</code>, <code>#growth</code>, and <code>#dev-onboarding</code> (if you’re a developer).
+
# Explore the other rooms on Matrix, and join the ones that are of interest to you. For a start, consider joining <code>dev</code> (if you’re a developer) and <code>growth</code>.
 
# Watch the following repositories on GitHub: [https://github.com/bisq-network/bisq core software], [https://github.com/bisq-network/bisq/discussions discussions], [https://github.com/bisq-network/proposals proposals], [https://github.com/bisq-network/growth growth], [https://github.com/bisq-network/roles roles] and [https://github.com/bisq-network/compensation compensation].
 
# Watch the following repositories on GitHub: [https://github.com/bisq-network/bisq core software], [https://github.com/bisq-network/bisq/discussions discussions], [https://github.com/bisq-network/proposals proposals], [https://github.com/bisq-network/growth growth], [https://github.com/bisq-network/roles roles] and [https://github.com/bisq-network/compensation compensation].
 
# Read the [https://github.com/bisq-network/bisq/blob/master/docs/README.md developer docs] to set up a Bisq development environment.
 
# Read the [https://github.com/bisq-network/bisq/blob/master/docs/README.md developer docs] to set up a Bisq development environment.
Line 27: Line 27:
 
# To understand Bisq’s commitment to radical transparency and radical honesty, read Part III of [https://www.amazon.com/Principles-Life-Work-Ray-Dalio/dp/1501124021/ Ray Dalio’s Principles].
 
# To understand Bisq’s commitment to radical transparency and radical honesty, read Part III of [https://www.amazon.com/Principles-Life-Work-Ray-Dalio/dp/1501124021/ Ray Dalio’s Principles].
 
# To get inspired about what building software in a non-hierarchical organization can be like (and what it requires of everyone involved), read the [https://steamcdn-a.akamaihd.net/apps/valve/Valve_NewEmployeeHandbook.pdf Valve Employee Handbook].
 
# To get inspired about what building software in a non-hierarchical organization can be like (and what it requires of everyone involved), read the [https://steamcdn-a.akamaihd.net/apps/valve/Valve_NewEmployeeHandbook.pdf Valve Employee Handbook].
 +
# Finally, a few words on [[Contributor_privacy_and_opsec|safeguarding your privacy]]
  
 
== Get connected ==
 
== Get connected ==
Line 36: Line 37:
 
If you decide to proceed and start contributing, you'll want to join Bisq's GitHub organization so you can be assigned to issues:
 
If you decide to proceed and start contributing, you'll want to join Bisq's GitHub organization so you can be assigned to issues:
  
# Request an invite to the [https://github.com/bisq-network @bisq-network GitHub organization] on Keybase. An admin will get you set up. Doing this makes it possible to add you to the [https://github.com/orgs/bisq-network/teams @bisq-network/contributors] team and to assign you to GitHub issues.
+
# Request an invite to the [https://github.com/bisq-network @bisq-network GitHub organization] on Matrix. An admin will get you set up. Doing this makes it possible to add you to the [https://github.com/orgs/bisq-network/teams @bisq-network/contributors] team and to assign you to GitHub issues.
 
# After accepting your GitHub invitation, consider changing your [https://github.com/orgs/bisq-network/people membership visibility] from <code>private</code> to <code>public</code>. This helps others know at a glance roughly how many contributors are involved with Bisq.
 
# After accepting your GitHub invitation, consider changing your [https://github.com/orgs/bisq-network/people membership visibility] from <code>private</code> to <code>public</code>. This helps others know at a glance roughly how many contributors are involved with Bisq.
  
 
== Do valuable work and get compensated ==
 
== Do valuable work and get compensated ==
  
After browsing GitHub repositories and Keybase discussions, you will start to develop a sense for what's happening, what's needed, and where you can help:
+
After browsing GitHub repositories and Matrix discussions, you will start to develop a sense for what's happening, what's needed, and where you can help:
  
# '''Find a problem somewhere in Bisq-land''' that (a) needs fixing and (b) is a match for your skills and interests. Browse critical bugs, open bounties, follow chats on Keybase and the forums, and ask around about what other contributors think needs fixing.  
+
# '''Find a problem somewhere in Bisq-land''' that (a) needs fixing and (b) is a match for your skills and interests. Browse critical bugs, open bounties, follow chats on Matrix and the forums, and ask around about what other contributors think needs fixing.  
 
# '''Get assigned to an issue''' or have your initiative acknowledged in some other way. While you don’t strictly need anybody’s permission to do anything for Bisq, you’ll want to make sure there's buy-in from other contributors so your work is received well. Otherwise, there are no guarantees that your work will be merged, reviewed, or eligible for compensation.
 
# '''Get assigned to an issue''' or have your initiative acknowledged in some other way. While you don’t strictly need anybody’s permission to do anything for Bisq, you’ll want to make sure there's buy-in from other contributors so your work is received well. Otherwise, there are no guarantees that your work will be merged, reviewed, or eligible for compensation.
 
# '''Do work to fix that problem'''. Submit your fix for review with a pull request (for code and documentation changes) or with a GitHub issue (for everything else).
 
# '''Do work to fix that problem'''. Submit your fix for review with a pull request (for code and documentation changes) or with a GitHub issue (for everything else).
Line 56: Line 57:
  
 
Regarding development, keep in mind that reviewing other contributors' work can be highly valuable as well (both to the project, and also to yourself as a way to learn how Bisq works). Quality code reviews are eligible for compensation just like any other contribution.
 
Regarding development, keep in mind that reviewing other contributors' work can be highly valuable as well (both to the project, and also to yourself as a way to learn how Bisq works). Quality code reviews are eligible for compensation just like any other contribution.
 +
 +
== Consider if you would like to become a Burning Man ==
 +
 +
For contributors wanting to receive regular bitcoin payments they may consider becoming performing a role as one of the Bisq [[Burning Men]]. It would be worth Bisq contributors understanding the pros and cons to becoming a burning man to decide if it is something they would like to do.

Latest revision as of 16:32, 25 August 2024

If you're interested in contributing to Bisq, ​welcome! This contributor checklist will get you plugged in and productive as quickly as possible.

Bisq is free and open source software, but contributing is not just about writing code. A contributor is any individual who works to improve and add value to the Bisq network and its users.

This can mean anything from fixing typos in documentation, to providing support, to testing out new growth strategies, to implementing new Bisq features and everything in between. All such contributions are eligible for compensation from the Bisq DAO.

Basics

Suggestions below are in no particular order. Disregard developer-oriented items if you're not looking to contribute code.

  1. Join the Matrix space.
  2. Introduce yourself in the general room. Say a bit about your skills and interests. This will help others point you in the right direction.
  3. Explore the other rooms on Matrix, and join the ones that are of interest to you. For a start, consider joining dev (if you’re a developer) and growth.
  4. Watch the following repositories on GitHub: core software, discussions, proposals, growth, roles and compensation.
  5. Read the developer docs to set up a Bisq development environment.
  6. Read How to Write a Git Commit Message and follow its 7 rules when contributing to Bisq projects.
  7. Get set up to Sign your Git Commits with GPG. Any commits to any Bisq repository must be signed.

Learn how we work

  1. Read about Bisq’s project management process.
  2. Familiarize yourself with C4: The Collective Code Construction Contract. It’s a simple set of collaboration rules based on GitHub’s fork+pull request model, and a foundational part of how we work together.
  3. For more context on C4 and the principles behind it, read author Pieter Hintjens' short book, Social Architecture.
  4. To understand the fundamentals of Bisq's mission and motivations, read the introductory wiki articles on Bisq and the Bisq DAO.
  5. To understand Bisq’s commitment to radical transparency and radical honesty, read Part III of Ray Dalio’s Principles.
  6. To get inspired about what building software in a non-hierarchical organization can be like (and what it requires of everyone involved), read the Valve Employee Handbook.
  7. Finally, a few words on safeguarding your privacy

Get connected

  1. Browse and subscribe to the Bisq YouTube channel to catch up on meetings we hold, tutorials we publish, technical sessions, and more.
  2. Follow @bisq_network on Twitter, or on any of the other channels listed on the bottom of the website: forum, Telegram, Matrix, Mastodon, etc.
  3. Subscribe to the bisq-contrib mailing list for low-frequency, high-priority contributor communications.

If you decide to proceed and start contributing, you'll want to join Bisq's GitHub organization so you can be assigned to issues:

  1. Request an invite to the @bisq-network GitHub organization on Matrix. An admin will get you set up. Doing this makes it possible to add you to the @bisq-network/contributors team and to assign you to GitHub issues.
  2. After accepting your GitHub invitation, consider changing your membership visibility from private to public. This helps others know at a glance roughly how many contributors are involved with Bisq.

Do valuable work and get compensated

After browsing GitHub repositories and Matrix discussions, you will start to develop a sense for what's happening, what's needed, and where you can help:

  1. Find a problem somewhere in Bisq-land that (a) needs fixing and (b) is a match for your skills and interests. Browse critical bugs, open bounties, follow chats on Matrix and the forums, and ask around about what other contributors think needs fixing.
  2. Get assigned to an issue or have your initiative acknowledged in some other way. While you don’t strictly need anybody’s permission to do anything for Bisq, you’ll want to make sure there's buy-in from other contributors so your work is received well. Otherwise, there are no guarantees that your work will be merged, reviewed, or eligible for compensation.
  3. Do work to fix that problem. Submit your fix for review with a pull request (for code and documentation changes) or with a GitHub issue (for everything else).
  4. Request that others review your work. The best way to do this is by writing good commit comments and pull request/issue descriptions that clearly explain the problem your work is intended to solve, why it’s important, and why you fixed it the way you did. Make it as easy as possible for others to review your work. Make it a pleasure for others to review your work.
  5. Incorporate review feedback you get until your fix gets merged or is otherwise accepted.
  6. Repeat steps 1–5.
  7. Submit a compensation request toward the end of the cycle.
Note
As you'll see from browsing the various repositories on GitHub, changes to Bisq are almost always discussed publicly. This helps maintain Bisq's commitment to transparency, invites feedback to improve the quality of contributions, and it helps keep compensation honest. Always try to make sure your work is documented somewhere so others can follow its progress and offer feedback.

Ultimately, please remember that all Bisq contributors participate on a voluntary basis, and the more energy and quality you bring to the table, the more existing contributors will be encouraged to pay you attention.

Regarding development, keep in mind that reviewing other contributors' work can be highly valuable as well (both to the project, and also to yourself as a way to learn how Bisq works). Quality code reviews are eligible for compensation just like any other contribution.

Consider if you would like to become a Burning Man

For contributors wanting to receive regular bitcoin payments they may consider becoming performing a role as one of the Bisq Burning Men. It would be worth Bisq contributors understanding the pros and cons to becoming a burning man to decide if it is something they would like to do.