Funding open source developers through bounties.
It can be hard to prioritize what Open Source project to work on. If issues had bounties based on the most pressing issues, that could fund the project work while directing attention towards the most important issues.
I finally continued this project after a longer break. And during that break, I realized that having a full-fletched VPC-enabled dev and prod environment can be expensive.
So after receiving quite a few bigger invoices from AWS, I switched my database to RDS, and switched my software stack from Elastic Beanstalk to Lambda. My total costs for up to 100.000 users will now be less than $30 a month.
I also wrote a lot of unit/integration tests. I have so far written 70, and have about 40 remaining until all the critical parts of the system are covered.
It's definitely boring work, but I need to keep grinding until it is done. I think this is also why I had a break. I needed the procrastination.
Now it's possible to see the top bounties available across the whole site.
There obviously isn't a lot of bounties to claim yet, but that's because I haven't marketed the project yet (only done a silent "launch" of an MVP here on IndieHackers).
After a lot of bug-squashing, bountyhunt.io is now finally live! It lacks a lot of convenience-features, but for an MVP, I think it is fine.
It's a bit of a shadow-launch. Not planning to share it anywhere else than here, my colleagues and closest friends.
Looking forward to the first bounty being placed on something!
This week, I implemented automatic JWT token renewal if the session is timed out.
In addition, I investigated refund policies, and asked a question about it here: https://law.stackexchange.com/questions/73317/what-are-the-refund-rules-for-a-global-digital-service-where-the-user-will-be-ch
I hope I'll get an answer soon. If not, I'll have to contact a lawyer, and those can be quite expensive 馃槒
I also finished the bounty verdict flow, which means I am almost ready for an MVP build!
It's been a while since my last post. I've been working on the project for several days a week since then, and have been making steady progress. I'll try to make more posts in general in the future.
Animations have been tweaked in the UI to provide a more professional feel.
When transitioning between issues, the UI will now seamlessly animate between the pages, instead of navigating to a separate page. This reduces flickering.
Now, when claiming a bounty, the dialog that comes up transitions from the bottom and upwards. In addition, a spinner has been added to the payment modal, and a count-up animation has been added to the bounty amount. Once again, there is no flickering.
Whenever someone says that they have solved an issue and want to claim the bounty, they submit a bounty claim request.
Once submitted, every person who added a bounty will need to vote on whether or not the given bounty claim request is legitimate. They'll receive an e-mail with a link to the verdict page.
Here's a screenshot of the bounty verdict UI the link leads to.
If a person doesn't vote and 14 days have passed, the system will assume that the person voted the same as the majority of the existing votes.
If no person votes at all and 14 days have passed, the default action of each vote will be to redistribute the funds into the open source community.
I've been adding a CI pipeline, made a new dashboard (more on that next week I think), added e-mail support to the backend, and added a new e-mail verification flow which I think you'll like (more on that later too).
bountyhunt.io is (as of writing this) not at all done. In fact, it mostly just contains UI work. Follow me to stay tuned!
In addition, this post mostly contains criticism and has some dark viewpoints at certain times. It's not a rant, but it's not exactly something that'll cheer you up either. Continue at your own will 馃槄
By day, I am just an ordinary software developer working a full-time (or soon-to-be part-time) job. But, as the sun sets and the night begins, I become a full-fledged open-source contributor 馃槑
My NuGet packages have been downloaded more than 1,5 million times, and my NPM packages have reached millions of downloads as well. Amazon's AWS team uses my packages in their projects and SDKs, and I maintain 50+ repositories or projects on a regular basis.
There are good parts to being an Open Source developer. Sometimes people will comment "I love this project - thank you!" which instantly warms my heart. Sometimes people open a pull request and contribute to my projects themselves, demonstrating the true power of open-source 馃檹
However, more often than not, people are rude, demanding, and ruthless 馃槓
Comments like "You failed to commit to the deadline", or "Your package has this bug, can you get it fixed within a day?" are popping up far too often. People expect too much and have little sympathy for the ones behind all the open-source software out there. If I reply "I'm sorry, I've been quite busy, will most likely get to it soon!", I am often met with frustration and no understanding of the situation.
This is most likely a contributing factor as to what leads some open-source developers to end their own life 馃槹
In addition, most open-source developers are not lucky enough to receive sponsorships and fund their work. They do it all in their spare time. At the same time, big corporations use open-source projects, happily making billions of dollars of revenue, while the creator gets nothing.
There's a famous XKCD that explains this pretty well:
Link to comic: https://xkcd.com/2347/
Most of the above issues are solvable by you (the "consumer" of the open-source projects).
If you want to make a difference, here's my list of advice:
When I decide which projects to work on next, I typically try to find a balance between how long something takes to make, and where there is the most pressure at the moment (priority = impact / effort
).
However, if each issue had a bounty on it, my priority would instead be based on a balance between what I would earn, and how much effort it would take to make (priority = bountyAmount / effort
).
On the other side of the spectrum, I think it's a fair assumption to make, that people would be more likely to place bounties on issues that they find extra important. So putting a bounty on something that's proportional to the importance becomes a way of getting attention to the issue at hand, but at the same time awarding whoever fixes it, for their work and time spent.
That's what bountyhunt.io is all about. Being able to put bounties on GitHub issues, and let people become full-time bounty hunters, doing what they love and getting paid for it while helping solve the biggest issues out there in the wild.
Here's a UI mockup of the concept so far. Remember it's just a concept - many things don't work yet!
https://sponsorkit.io/bounties/view/?number=10121&owner=microsoft&repo=vscode
There are competitors out there, but they either require a GitHub App to be installed to the repository where you want to make a bounty on an issue, are crazy about their hidden fees, or have shady business practices due to hedgefund acquisitions and too big of a focus on earning money.
I am brewing up a side concept for Sponsorware integration for developers, called Sponsorkit. It'll be launched shortly after bountyhunt.io.
Follow me to keep up to date!
It can be hard to prioritize what Open Source project to work on. If issues had bounties based on the most pressing issues, that could fund the project work while directing attention towards the most important issues.