Skip to content

Instantly share code, notes, and snippets.

@alexk111
Last active April 6, 2019 13:37
Show Gist options
  • Save alexk111/cd56fafce80daf8a5a091b70ea68f18d to your computer and use it in GitHub Desktop.
Save alexk111/cd56fafce80daf8a5a091b70ea68f18d to your computer and use it in GitHub Desktop.
Tips On Better FOSS Workflow

Tips On Better FOSS Workflow

  1. Product can't be the best for everyone. Focus on people who actually use it and make the best software for them. Make the best software for yourself, use it each day.
  2. Do not be afraid to decentralize power and give responsibility to other people. If you notice that someone is taking initiative reward him with - responsibility. Delegate and give people responsibility. Allow people to express themselves.
  3. Grow organically and grow slow. Release often, don't be afraid to make mistakes. Ask for forgiveness not for permission. Don't know to code? There are tons of other things you can do from just using software to translating or writing docs.
  4. When people contribute to the product, because of that culture, they feel like they're on a mission from God, changing the world. While that's great, such energy needs to be channeled to specific goals. Otherwise, it gets chaotic.
  5. That's where you need to come in. Schedule calls with people, listen and help them find their passion and focus.
  6. User feedback is a gift. User frustration is an even greater gift.
  7. Everyone makes mistakes. When you make a mistake, admit it and fix it. That builds an enormous level of trust in the community. Admitting you fucked up, asking for help and fixing it.
  8. Encourage people to fork the software and build their own solutions. Don't be discouraged when someone creates a clone. That's a good sign, it means you're growing.
  9. Best ideas win, no matter who suggested it. Listen to community's ideas. Even when they're unrelated to your software, encourage them to pursue their ideas.
  10. You can have the best software if nobody knows how to run it. Try to make deployment of the product easier each day. People don't know how to clone from GitHub, deal with it. Colab with hosting providers, make deployments 1-click.
  11. User documentation is so important. Good documentation reduces the time you have to spend on support. Collect FAQ from users and document it.
  12. People like videos. Make walkthrough videos, try to explain your software step by step. It's so important but often overlooked.
  13. Create community chat, create channels where people of different interests and ideas can team up and work on their own things.
  14. When questions are often asked, it's your problem, not users. As the community grows, don't try to answer every question, allow other people to grow and feel important by helping others. Don't be control-freak open-organizations thrive from chaos and weirdness.

This gist is a compilation of tips on how the team behind BTCPay Server created their workflow: https://twitter.com/pavlenex/status/1114207394496569350 Thanks to @pavlenex for sharing it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment