Improve developer experience for new contributors #4036

Open
opened 2020-04-21 19:56:02 +02:00 by neb-b · 15 comments
neb-b commented 2020-04-21 19:56:02 +02:00 (Migrated from github.com)

What can we do to make it easier to contribute to this repo?

What can we do to make it easier to contribute to this repo?
harshkhandeparkar commented 2020-04-21 20:05:23 +02:00 (Migrated from github.com)

Hi! I have contributed to another open source organization before. The thing that got me started with github and OpenSource was their first-timers-only issue template.

These are issues specifically made for newcomers who know how to code but are not familiar with github and OpenSource.

Such issues with the specific label first-timers-only gain a lot of github trafic and call a lot of newcomers. I have seen issues being claimed within hours of publishing.

These issues aren't necessarily very difficult or coding related, they can even be a small typo fix but they include instructions (sometimes step by step) on how to use github and explain its principles. These issues bring a ton of newcomers.

Example: https://github.com/publiclab/image-sequencer/issues/1527

Hi! I have contributed to another open source organization before. The thing that got me started with github and OpenSource was their `first-timers-only` issue template. These are issues specifically made for newcomers who know how to code but are not familiar with github and OpenSource. Such issues with the specific label `first-timers-only` gain a lot of github trafic and call a lot of newcomers. I have seen issues being claimed within hours of publishing. These issues aren't necessarily very difficult or coding related, they can even be a small typo fix but they include instructions (sometimes step by step) on how to use github and explain its principles. These issues bring a ton of newcomers. Example: https://github.com/publiclab/image-sequencer/issues/1527
jeffslofish commented 2020-04-21 23:13:36 +02:00 (Migrated from github.com)

I recently started contributing to this repo a little while ago and here is some feedback:

Things I found frustrating:

  1. There is a repo named lbrytv that says it is "LBRY on the web", which I assumed was all the code for lbry.tv, but it is actually the backend written in go. Granted, there is a step in setup instructions that say you must clone lbry-desktop and then "Launch UI in lbry-desktop". So I went through the process of setting up docker and the backend just to run the frontend of the website. It would be helpful if at the top of the readme file for lbrytv that it says this is the repo for the backend and if you just want to modify the frontend, then you should look in lbry-desktop.

  2. The setup instructions for frontend in the the lbrytv repo fails to mention that you need to run yarn compile:web the first time you run the web app.

  3. The setup instructions for lbrytv say "Open http://localhost:8081/ in Chrome" but I believe the correct url is http://localhost:9090/

  4. The contributors guide (https://lbry.tech/contribute) fails to mention anything about the lbrytv repo.

  5. This repo summary says it is "A browser and wallet for LBRY, the decentralized, user-controlled content marketplace." It isn't really clear from this that it is both an app and also the front-end of lbry.tv.

  6. Also at the top of the readme file for this repo it isn't clear that this is used as the frontend for lbry.tv.

  7. I was having problems with a git precommit hook failing due to some flow issues in files that I wasn't working on, but those problems seem to have gone away now.

Things I found helpful:

  1. Everyone I have interacted with from the team has been very helpful and encouraging!
I recently started contributing to this repo a little while ago and here is some feedback: Things I found frustrating: 1. There is a repo named lbrytv that says it is "LBRY on the web", which I assumed was all the code for lbry.tv, but it is actually the backend written in go. Granted, there is a step in setup instructions that say you must clone lbry-desktop and then "Launch UI in lbry-desktop". So I went through the process of setting up docker and the backend just to run the frontend of the website. It would be helpful if at the top of the readme file for lbrytv that it says this is the repo for the backend and if you just want to modify the frontend, then you should look in lbry-desktop. 2. The setup instructions for frontend in the the lbrytv repo fails to mention that you need to run `yarn compile:web` the first time you run the web app. 3. The setup instructions for lbrytv say "Open http://localhost:8081/ in Chrome" but I believe the correct url is http://localhost:9090/ 4. The contributors guide (https://lbry.tech/contribute) fails to mention anything about the lbrytv repo. 5. This repo summary says it is "A browser and wallet for LBRY, the decentralized, user-controlled content marketplace." It isn't really clear from this that it is both an app and also the front-end of lbry.tv. 6. Also at the top of the readme file for this repo it isn't clear that this is used as the frontend for lbry.tv. 7. I was having problems with a git precommit hook failing due to some flow issues in files that I wasn't working on, but those problems seem to have gone away now. Things I found helpful: 1. Everyone I have interacted with from the team has been very helpful and encouraging!
neb-b commented 2020-04-24 20:19:37 +02:00 (Migrated from github.com)

The lbrytv repo description was changed to "API Server for LBRY on the web", and I just opened https://github.com/lbryio/lbrytv/pull/207 to update the readme there which includes a link to the lbry-desktop repo.

The `lbrytv` repo description was changed to "API Server for LBRY on the web", and I just opened https://github.com/lbryio/lbrytv/pull/207 to update the readme there which includes a link to the lbry-desktop repo.
neb-b commented 2020-04-24 20:20:12 +02:00 (Migrated from github.com)

I'll give another pass at the readme for this repo sometime next week. I agree it's not very clear this is the UI for lbry.tv and the desktop app.

I'll give another pass at the readme for this repo sometime next week. I agree it's not very clear this is the UI for lbry.tv _and_ the desktop app.
harshkhandeparkar commented 2020-04-24 20:22:00 +02:00 (Migrated from github.com)

If I have permissions, then may I convert some of the issues marked with
help-wanted to the first-timers-only issues as I suggested above? I
guarantee that will instantly pull a lot of new contributor traffic.

On Fri, 24 Apr, 2020, 11:50 PM Sean Yesmunt, notifications@github.com
wrote:

I'll give another pass at the readme for this repo sometime next week. I
agree it's not very clear this is the UI for lbry.tv and the desktop
app.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619171602,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJI5H22P5XRYYRP3SJAL4TROHJ6VANCNFSM4MNPUD6Q
.

If I have permissions, then may I convert some of the issues marked with help-wanted to the first-timers-only issues as I suggested above? I guarantee that will instantly pull a lot of new contributor traffic. On Fri, 24 Apr, 2020, 11:50 PM Sean Yesmunt, <notifications@github.com> wrote: > I'll give another pass at the readme for this repo sometime next week. I > agree it's not very clear this is the UI for lbry.tv *and* the desktop > app. > > — > You are receiving this because you commented. > Reply to this email directly, view it on GitHub > <https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619171602>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AIJI5H22P5XRYYRP3SJAL4TROHJ6VANCNFSM4MNPUD6Q> > . >
neb-b commented 2020-04-24 20:51:45 +02:00 (Migrated from github.com)

I don't think we will be spending very much time setting up issues for first timers only. The issue you linked looks like it would be very helpful for new contributors, but would take a really long time to build, much longer than actually fixing the issue.

At first I think we should focus on improving the experience for developers with some knowledge of git/github.

Feel free to ping me in any issues you think might be labeled wrong, or could use new labels.

I don't think we will be spending very much time setting up issues for first timers only. The issue you linked looks like it would be very helpful for new contributors, but would take a really long time to build, much longer than actually fixing the issue. At first I think we should focus on improving the experience for developers with some knowledge of git/github. Feel free to ping me in any issues you think might be labeled wrong, or could use new labels.
harshkhandeparkar commented 2020-04-24 20:53:29 +02:00 (Migrated from github.com)

The issue can be generated by a bot too. Also, most of the issue is just a
template, I probably edited only 20 or so lines.

On Sat, 25 Apr, 2020, 12:22 AM Sean Yesmunt, notifications@github.com
wrote:

I don't think we will be spending very much time setting up issues for
first timers only. The issue you linked looks like it would be very helpful
for new contributors, but would take a really long time to build, much
longer than actually fixing the issue.

At first I think we should focus on improving the experience for
developers with some knowledge of git/github.

Feel free to ping me in any issues you think might be labeled wrong, or
could use new labels.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619185061,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJI5HZTJW25NPZJLTIKY43ROHNU7ANCNFSM4MNPUD6Q
.

The issue can be generated by a bot too. Also, most of the issue is just a template, I probably edited only 20 or so lines. On Sat, 25 Apr, 2020, 12:22 AM Sean Yesmunt, <notifications@github.com> wrote: > I don't think we will be spending very much time setting up issues for > first timers only. The issue you linked looks like it would be very helpful > for new contributors, but would take a really long time to build, much > longer than actually fixing the issue. > > At first I think we should focus on improving the experience for > developers with some knowledge of git/github. > > Feel free to ping me in any issues you think might be labeled wrong, or > could use new labels. > > — > You are receiving this because you commented. > Reply to this email directly, view it on GitHub > <https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619185061>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AIJI5HZTJW25NPZJLTIKY43ROHNU7ANCNFSM4MNPUD6Q> > . >
neb-b commented 2020-04-24 20:57:15 +02:00 (Migrated from github.com)

Yes I understand that, but finding an issue as simple as that, and creating a new issue for it will always take longer than just fixing it. Since our team is so small currently, we probably won't start doing that anytime soon.

Yes I understand that, but finding an issue as simple as that, and creating a new issue for it will always take longer than just fixing it. Since our team is so small currently, we probably won't start doing that anytime soon.
neb-b commented 2020-04-24 20:57:23 +02:00 (Migrated from github.com)

I do think it's a great idea though!

I do think it's a great idea though!
harshkhandeparkar commented 2020-04-24 20:59:39 +02:00 (Migrated from github.com)

New contributors will be allowed to resolve only one such issue and then once they get comfortable, they can continue with solving other issues. These issues do the first step. New contributors are like lost when they see github issues. They get overwhelmed. They don't know what a PR is or how to edit code and stuff, so they need a step-by-step tutorial like this issue. Once that is done, it's no big deal for them to continue.

I have been contributing to OpenSource for only about a year now. The only thing that made this possible was one these issues. The story that I generalized for new contributors was my story too.

New contributors will be allowed to resolve only one such issue and then once they get comfortable, they can continue with solving other issues. These issues do the first step. New contributors are like lost when they see github issues. They get overwhelmed. They don't know what a PR is or how to edit code and stuff, so they need a step-by-step tutorial like this issue. Once that is done, it's no big deal for them to continue. I have been contributing to OpenSource for only about a year now. The only thing that made this possible was one these issues. The story that I generalized for new contributors was my story too.
harshkhandeparkar commented 2020-04-24 21:00:34 +02:00 (Migrated from github.com)

And I am saying that I can do it for the organisation. The core lbry team doesn't have to.

And I am saying that **I** can do it for the organisation. The core lbry team doesn't have to.
harshkhandeparkar commented 2020-04-24 21:04:46 +02:00 (Migrated from github.com)

Yes I understand that, but finding an issue as simple as that, and creating a new issue for it will always take longer than just fixing it.

The idea is not to get the issue solved but to attract new people who can later solve issues. This process can be slow at the beginning but once new people start contributing, more people start flowing in. I am pretty sure that a lot of newcomers are browsing the issues from the lbry repos but they just can't get started so they move along.

Also, newcomers just search for first-timers-only issues directly. It can make (and made me) a proper contributor from 0. I didn't even know what github was.

> Yes I understand that, but finding an issue as simple as that, and creating a new issue for it will always take longer than just fixing it. The idea is not to get the issue solved but to attract new people who can later solve issues. This process can be slow at the beginning but once new people start contributing, more people start flowing in. I am pretty sure that a lot of newcomers are browsing the issues from the lbry repos but they just can't get started so they move along. Also, newcomers just search for first-timers-only issues directly. It can make (and made me) a proper contributor from 0. I didn't even know what github was.
neb-b commented 2020-04-24 21:05:32 +02:00 (Migrated from github.com)

Oh I misunderstood! If you would like to try taking this on go for it! I just added you to the lbry-desktop team. You should be able to edit issues/add labels once you accept the invite. Can you see if it works?

Oh I misunderstood! If you would like to try taking this on go for it! I just added you to the lbry-desktop team. You should be able to edit issues/add labels once you accept the invite. Can you see if it works?
harshkhandeparkar commented 2020-04-24 21:06:33 +02:00 (Migrated from github.com)

Yeah it worked. Ty. I will get started on it soon.

On Sat, 25 Apr, 2020, 12:35 AM Sean Yesmunt, notifications@github.com
wrote:

Oh I misunderstood! If you would like to try taking this on go for it! I
just added you to the lbry-desktop team. You should be able to edit
issues/add labels once you accept the invite. Can you see if it works?


You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619190952,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIJI5H54Y62NCOKGDMZ75KLROHPIVANCNFSM4MNPUD6Q
.

Yeah it worked. Ty. I will get started on it soon. On Sat, 25 Apr, 2020, 12:35 AM Sean Yesmunt, <notifications@github.com> wrote: > Oh I misunderstood! If you would like to try taking this on go for it! I > just added you to the lbry-desktop team. You should be able to edit > issues/add labels once you accept the invite. Can you see if it works? > > — > You are receiving this because you commented. > Reply to this email directly, view it on GitHub > <https://github.com/lbryio/lbry-desktop/issues/4036#issuecomment-619190952>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/AIJI5H54Y62NCOKGDMZ75KLROHPIVANCNFSM4MNPUD6Q> > . >
neb-b commented 2020-04-24 21:09:03 +02:00 (Migrated from github.com)

@HarshKhandeparkar Great! Let me know if you have any issues.

@HarshKhandeparkar Great! Let me know if you have any issues.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: LBRYCommunity/lbry-desktop#4036
No description provided.