Show HN: Rysolv – Fix open source issues, get paid
rysolv.com
rysolv.com
In order to have a net positive effect, such a program would need to be able to generate an income, not necessarily a engineer market-level one (because you could have students working on this) but at least something above the minimum wage[1], not just tips.
[1]: and at this level, you'd still not attract more affluent kids who don't need a job.
I don't think that is weird at all. After the lead student on a project leaves, the faculty, especially non-technical or not so organized ones, may not even know how to access the data anymore. Who knows what arcane scripts or processes are needed to get it in a shareable form.
There can also be hoops with the IRB to jump through and a lot of effort in general to give someone access to data. I had an IRB insist that all raw data be deleted after 2 years of collection anyway, so by the time the paper got published the raw data had to be deleted forever.
I wish it were easier to release data and replication kits, but sadly the incentives aren't there.
The pay scale is going to be tough. Looking quickly through the top bounties, none of them are really student level. Issues that are truly good for beginners or someone unfamiliar with the codebase in any moderately popular open source project usually get scooped up immediately for resume building.
I can see this as being useful for abandoned projects, or as a way to promote something new. It's a much better signal that the ticket is actually meaningful and impactful than a GitHub tag.
Whether that is enough to get past psychological barriers behind transactions, I don't know. I do like the "buy the author a coffee or two" mentality of support, which I think does remove some of the transaction aspect of it. Not sure if this is what Rysolv was going for -- it feels a bit more formal.
I have funded a couple issues at like $25 that were marked "Good First Issue". And I had a couple people reach out saying they were excited to have done their first pull request.
So I think that even with small bounties, rysolv can have the positive affect of introducing more people into OS contributing.
And if the site ends up making money, I think there should always be a list of "First Time Only" issues.
> Spend a week working on this issue for $50? No way! I'd never work for so little.
I can certainly see it having this affect. And hopefully there will be ways to mitigate it. But I don't see any harm in trying to bring some additional funding into OSS development.
Also I feel like it would be nice supplemental income for sole maintainers, who would likely be tackling these issues anyway.
My guess is this is eventually going to be built into GitHub (via acquisition or otherwise).
Since there is the chance that the money gets refunded, people are willing to up the contribution.
My main goal is to bring some more support into open source development, and to encourage new people to contribute to projects.
Would love to hear any feedback on the site, or bugs you find!
For our open source project (https://github.com/papercups-io/papercups). We participated in hacktoberfest recently and one problem we ran into is people submitting low quality PRs. Which ends up taking up way more time to review than to merge.
I would love to be able to filter by users who have merged multiple issues or some sort of quality bar for our bounties. Obviously since you are just starting out your users won't have too many issues merged. You might be able to work around this by finding the number of Github issues an author have merged previously to any projects that is greater than x number of stars. This way you might be able to bootstrap some credibility of the authors. Then a open source maintainer can gate on only allowing some reputable contributors.
One inspiration I would recommend is taking a look at how 99designs has different tiers of designers you can have a bounty for your design. If you could build 99design for open project that would be amazing. Best of Luck!
Never the less something like this is likely needed. With reference to the digital ocean free shirt pull request saga :)
Are you joking here, or do you literally mean, that (besides fixing) this would cause bugs? I hadn't thought about that.
> Obviously since you are just starting out your users won't have too many issues merged
Sponsors may very well be looking for a temporary fix, something that can last them a year, or one project. No credibility necessary, just a fix.
Not really a problem, though; a sponsor can fork on Github, then put a bounty and accept the PR even though upstream would never merge it.
But I wouldn't necessarily want to block new developers from being able to contribute to a project. I think it would be best to have anyone able to contribute, but perhaps a flag on the project owner side to see that user's rating.
i.e. How does this not become the Brave issue all over again: taking funds from people without a confirmed way to pass those funds on to the person they think it's going to.
> Anyone can import an issue to the site and contribute towards the bounty. Whoever submits a pull request closing out the issue earns the bounty.
Imagine this scenario:
John files an issue on Project Foo, submits that issue to Rysolv, and pays some money to "contribute" to getting it fixed.
Joan sees the issue filed on Project Foo's issue tracker, and submits a patch.
According to the statement from the parent comment I replied to, that money would be paid to Joan. But Joan has no existing relationship with Rysolv, and thus they have no way to pay her for the fix.
So what happens to that money?
The bigger question is how do you handle disputes. Who decides that the issue is actually resolved? What if the fix involves multiple people?
But "you took my money where did it go" is without doubt a bigger problem - Brave had essentially the same issue, and (rightfully) received a lot of shit for it.
If you don't have a confirmed contact/way to transfer funds, claiming to collect on their behalf is bordering on fraud IMO.
rysolv is holding money to solve a particular issue, until that money is claimed. if the issue is never solved, the money won't be claimed either. the problem what happens with the money is the same as if the issue is solved without anyone claiming it.
so presumably there needs to be a process for unclaimed money regardless.
brave was collecting money to give to the project as a whole for work already done. they didn't expect that it would be rejected or remain unclaimed.
But this could definitely be a problem if the site grows and I don't have enough time to track down people.
Another suggestion I've had for abandoned funds is to redistribute across the repo. i.e. A $100 issue for OBS was closed/abandoned/etc, so the $100 is split and the remaining OBS issues get $100/n added to the bounty.
- Please clarify what happens to funds when a bounty isn’t claimed. - Is it possible to retract funding? - As another commenter pointed out, what about situations where the involved parties would rather not use Rysolv? If a funded issue is closed, what happens next?
Also it would be nice if I could fund in €.
Concretely, I wanted to list https://github.com/grncdr/otssh/ on there. I’m offering 500 € for the creation of a fairly simple program, but I want to know what happens to my money before in the above situations before handing it over to Rysolv.
Also, is it limited to GitHub? There are a few bugs in Firefox that I would pay to see fixed but AFAIK FF dev isn't on GitHub for example.
If I was to set a bounty for an issue that would be laborious and therefore expensive to fix, I'd want to be able to withdraw my funding in case the issue does not get fixed in a reasonable amount of time. Leaving money tied up on the service indefinitely is not really an option when you start talking about the kind of money that would actually motivate someone to do a lot of work.
This creates a problem where it's really risky for a developer to take on any hard problems. If funds can be pulled at any time, you might not get paid. Also, of course, there's duplication of effort- someone might beat you to closing the issue, meaning you get nothing and have wasted your time.
This, in turn, means that pricing on the service must be very high to account for the risks of non-payment, or be so low as to be insignificant.
There are some mitigation strategies available. Funding could have an end date, after which the funds are returned to the funder. This still leaves the issue of parallel effort, which seems harder to solve. Preregistering to close an issue by some deadline might work, but likely would result in a lot of issues going unsolved, and now you need some kind of ranking system for developers on the service...
This is something that I've been going back and forth on for a while. I've considered having the money be a 'pledge' like Kickstarter. Where people pledge the funds and pay out when the issue gets resolved.
But that can add some technical concerns (keeping track of peoples bank details to charge them) as well as less assurance that the developer will get paid.
And I especially don't want to have a platform where a developer puts in the work and doesn't earn the bounty.
Parallel effort is another tricky one to solve. And I see it all the time even without funding involved. Someone comments that they're working on an issue, and then everyone else drops it for 6 months only to realize that person dropped it too.
I think that splitting bounties could be a good solution. Have multiple people contribute towards a branch, and the funding gets distributed evenly.
Adding to this [1] bug report, when I change pages using the numbered buttons at the bottom of the issues listing and then press the Back button of my browser it takes me back to HN. Navigating back should instead take me back to the previous-numbered page of the issues list.
For usability, please also consider not requiring people to scroll to the bottom of the listing to change pages.
1. Figure out what the project's contribution guidelines are.
2. Check out code, figure out how to build it and run tests.
3. If it's a complex task, might want to build some credibility with maintainers first, so might contribute tiny fix first.
4. If it's a complex task, try to engage maintainers to see if they'll accept it, and to get hints on how to approach it. They may be hard to reach, so this might take a few days or a couple of weeks, though I'm not working during that time, it's just delay.
5. Do the actual work.
6. Go through whatever code review process. Sometimes I might need to gently ask for reviews if it sits for too long.
$80 total for all the above is laughable. And to be fair I ask for a good amount of money because I am good at what I do, and there are people who live in much cheaper places than Boston area and could charge less.
For $80, you'd have to both have an extremely low cost of living and already be an expert on the project for this to be in any way worthwhile.
And given that they will likely be fixing the issues at some point anyway, it could just be another bit of supplemental income. As well as give them an idea of what issues people are struggling with the most.
I think it's unlikely that rysolv bounties will ever pay an engineers salary. But I see so many projects with thousands of download get like $4 / month on Open Collective. And I figure I could at least beat that.
"What's it called again, doesn't show up on Google."
"It's spelled Rysolv".
"WHAT!??"
"R Y S O L V".
--
Sorry, but I have always found names of this sorts bad for all kinds of ways. IMO the way you say it and the way you spell it should be relatively obvious. Ofcourse there are exceptions like Lift..ggrr..Lyft. To be fair, its quite difficult to satisfy all aspects of a company name. You can't Kodak like the old days!
EDIT: actually, searching for rysolv -> resolve :)
Although ~9 months after launching the site it stopped giving this hint. Not completely sure what changed it, although in the meantime we added the domain to the Google Search Console and incorporated.
What do you mean "you can't codec"?
But the .com domain was $9.00! And that was enough for me.
Also your comment is now the #3 result when I google "rysolv". Congratulations!
Also I'm tracking the problem of 'Monetizing open-source projects'[1] at needgap and I'd like to mention Rysolv in it.
[1]https://needgap.com/problems/80-monetizing-open-source-proje... (Disclaimer: It's a problem validation platform I created).
> addressing a need gap Immediately, no. But rysolv is ~2 months old right now. And I'm still building every day.
A few things I'd like to add: - First time only: accepted bounties only if it's the users first PR - Projects: Kickstarter approach for new projects. Pitch an idea and have people crowdfund it. - Gitlab support
> mention Rysolv Sure! Go ahead. And feel free to give me a ping if you want any additional info on the site. (tyler@rysolv.com)
On one of my own projects someone randomly added a bounty to an issue that was mostly an upstream issue. Of course the original poster had good intentions, but didn't fully understand this.
Why would that be a bad thing? Contributors should be getting paid.
That's the hope is to bring some more people into OS contributions who haven't tried it out before.
I have funded a couple issues at like $25 that were marked "Good First Issue". And I've had people reach out saying they were excited to have done their first pull request.
Most open source bugs never get fixed (or get fixed slowly), and this project would select further for issues that are not already being addressed for whatever reason. So it's not unreasonable to think that many PRs would not be merged inside 6 months, even if they are valid fixes. (Raise your hand if you've ever contributed a PR to an OSS project and had it linger for > 6 months.)
That risk, plus the low bounties identified by other posters here, seem very tough to overcome.
So the original developer would have to raise a dispute somewhere (issue, email, etc.) and I could go through the commit history to see who wrote the code originally.
Although I think that would be an extreme edge case. Especially with a low bounty. I don't think it's worth the effort of ripping off another contributor.
And if the bounty was like $10,000. I would pay a lot more attention to the solution before sending out the money.
This approach might work well for issues which require a lot of thought, but produce a simple fix and can be easily merged
This might go horribly wrong if outside contributors try to implement a major feature to a project which they don't have a good mental model for, produce a large patch that may get rejected by maintainers, or end up being rewritten-by-code-review, which would cost such maintainers more time than if they implemented the feature in the first place.
It would be interesting to follow!
You could gatekeep certain jobs to certain experience levels as well.
I agree this will be interesting to follow.
Private email address
Private profile information
Followers
Looks like a cool application but I have no idea why you would need write access to any of the above.
There's an open issue for it, and I'll try to get to it in the next week.
That said, I think we need a mechanism to assign an issue to a developer on rysolv, so that if someone outside of the maintainers fixes the issue in a way that is considered acceptable by the provider of funds, it can be closed and the developer rewarded.
I have had PRs open on OSS projects for 5 years, just one merge away from delivering value, just because tons of OSS projects are not maintained. Other times maintainers are just not willing to share responsibility with others (and I doubt it will be much better with money), forcing you to fork their project or wait forever.
This would also solve the issue of waiting forever for a fix without being able to unpledge the money: there's someone assigned to the issue you can ping about status or terminate.
Best of luck
How are refunds handled if a bug is never fixed?
The 10% cut is kept either way?
Right now, if an issue isn't fixed after 6 months, the bounty can be refunded to the user. But I'm still exploring better ways for this to work out.
Since other sites have run into issues where they refund money to a user's account, and then it sits in limbo forever because the user forgot about it.
I've contemplated instead of refunding the bounty, having the funds move into a repo account that get's distributed among other issues for that repo.
i.e. and issue for OBS with $100 was closed and not solved. So all the other OBS bounties will have an extra $100 / n added to them
> If an issue remains open for more than 6 months, a user may request their contributions be refunded to their account.
I think there should be a lot more to this. Like having a choice how long my bounty can stay up (in months maybe, minimum 6). Receive an email after that time to remind me. Show in each issue how much of the bounty is up for how much longer for sure.
Add an RSS feed and weekly newsletter where I can subscribe to see new additions for a specific language.
It is not clear who is holding the bounties while waiting for issues to be resolved? It is not clear what fees are involved? How is this platform financed?
I also suggest you add the faq link to the header ;)
> RSS, Newsletter Definitely something we want to pull together. And I think it would be a great way to keep people engaged on the site.
Something like: "10 new Python bounties posted this week" based on what languages people choose.
1) Rewards at this moment do not seem very high, but I can see that improving over time.
2) There are multiple people competing to complete the same tasks as you.
But I also don't want the site filled up with $0.00 issues.
If anything, I may do a small minimum. Like $5, so that way every issue has some value to it.
And for #2: I'd like to add in some collaboration features so people could split the bounty if they both worked on the solution.
- Listing those issues separately.
- Make posts without funding last a limited amount of time.
This has caused serious contention over similar projects in the past: https://news.ycombinator.com/item?id=8542969
The creator essentially stepped down from a development position but their patreon still makes money, so may be some opportunities there.
The result of that is that the easy stuff with a known fix will always be prioritized, and the hard stuff that require real engineering time will never be fixed.
Feedback: Please reduce the range of your price filter. All the bounties are under the $500 range. This makes the range slider pointless beyond the first 1%. On a mobile device it's near impossible to select a meaningful range that returns results.
Solution: Make the upper bound max value a dynamic variable of the current highest bounty with some padding and rounding up to a nice number.
U=ceil(M+N)
It also has a hardcoded list of languages that totally don't exist on the site. I went ahead and raised an issue for this. https://github.com/rysolv/rysolv/issues/19
Thanks for the feedback!
They contribute to be a part of something, for the actual process, to up their skills, etc.
Though, this is perhaps the very reason open source issues go unfixed. I'm curious to see if this works.
But I think often times the bounties will go to the people who are already maintaining the project. Who likely would have resolved the issue anyways.
And rather than a ton of people commenting "same" on an open issue. They could chip in a couple dollars and support the developers.
https://github.com/fossjobs/fossjobs/wiki/Resources#bounties
Personal user data Full access This application will be able to read and write all user data. This includes the following:
Private email addresses Private profile information Followers
I didn't discover bountysource until after starting on rysolv. But from their stats page you can really see the rise and fall of contributions on their platform.
They've been acquired a couple times. And I wonder if issues came from changing ownership / poor marketing. Or if OS funding is just inherently unprofitable.
HN discussion here: https://news.ycombinator.com/item?id=25882021