Interesting read about the Development Bystander Problem. I was indeed part of it. Maybe it is time to start contributing :)
He forgot some of the biggest reasons.
- A larger codebase is generally just harder to work on. A more established product with more users tends to be larger.
- More popular projects with many users tend to have developers that don’t welcome new contributions. The investment required for a new developer to make an initial contribution is huge. Things like setting up the development environment and the stack of technologies and understanding the basic architecture are significant barriers to entry. Existing developers tend to not care about reducing that burden. After all, everyone who’s *actually *contributing to the project is already over that barrier, right?
Developers, open source or otherwise, should generally be excited about people “taking their jobs”. Because you’re going to have churn of developers over time, and if you’re not bringing in fresh blood, then your project is eventually going to die. Do you really want to maintain every project you work on for the rest of your life? Encourage new blood. Do what you can to accept new ideas and directions unless you have very good and explicit reasons not to. If someone has a sightly different vision and is willing to hop that initial barrier and is willing to put in more work than you, don’t undervalue that. Be willing to compromise a little to bring in a new developer. Sometimes you have to say no, but consider that you’re saying no to a person who wants to volunteer their time to do work for you.
On the other hand, there are tons of people who say they’re eager to work on your project. You invest a little time into them, they provide nothing, and then vanish. It’s easy to get jaded when you keep running into people who are more words than action. Be very careful what you promise you’ll do, and if someone invests their time to help you, try to actually do what you said you would.
In some cases, PRs that have no merge conflicts can sit and languish for months on end. Example: https://github.com/jellyfin/jellyfin/pull/8914. I’m not suggesting cavalierly accepting all PRs, but the devs could do a better job of communicating with prospective contributors. My desire to contribute to Jellyfin was somewhat dampened by that initial experience.
Edit: To be more constructive, I’d recommend not just a call to action (the blog post), but explicitly reaching out to devs who submitted their first PRs within the past year and finding out what their experiences were. Discovering a leaky onboarding process that you lose potential devs through could be instrumental!
I know what you mean, my pull request also sat around for almost 6 months before it got merged.
Having some feedback whether something is wrong with the PR or just that nobody had time to look at it yet would go a long way.
I am once again waiting on a PR to get merged before I can continue working on mine but it seems like nobody is sharing their thoughts on PRs anymore because there is radio silence and open questions go unanswered. I’m not an expert on Jellyfin architecture so without a maintainer stepping in and telling me how it should be done I can’t work on Jellyfin.
Probably a chicken an egg problem though. Without more maintainers responses are sparse and with sparse responses, less maintainers.
If the jellyfin android app didn’t encode the files and just served them like the web UI that would be utterly amazing.
I can play the file via VLC with hardware decoding, jellyfin should be able to do the same.
The android application has multiple “players” available to it.
- Web player
- Integrated player
- External player
Sounds like you want to be using the integrated player so that you can direct play on your device?
Honestly, I’ve been thinking about contributing for a while. This is the push I needed. I’ll check it out!
Funny how it takes a call for devs for everyone to voice their concerns and suggestions
I submitted a pull request that was shut down and the only feedback was “I don’t think this is the way we’d do it.”
I know managing community contributions is a big task but if you want people to volunteer, a baseline amount of effort should be made to enable it.
It’s also helpful to have automated tests to increase confidence that a change won’t break existing features.
There was a baseline effort there. Your PR wasn’t a proper fix, but more of a hack which also isn’t in line with how a proper UI would display things.
Link?
They are probably talking about this one: https://github.com/jellyfin/jellyfin-web/pull/3522
Come join us on Roku. We have fancy hats!!!
What’s a roku?
I’m not approving any hat expenses
How about a nice selection of American cheeses?
Government cheese for all! Little American flags for others
Edit: I’m Canadian