Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: How can I volunteer my software skills online?
121 points by Srishti101 on Feb 19, 2017 | hide | past | web | favorite | 58 comments
What the projects/ NGOs that I can help online using my software engineering/data analytics skills? Perhaps you can share personal projects that you were able to use to help people and community around you

(Disclaimer: not trolling.)

Consider specializing in making money and donating the money to people who specialize in $PICK_A_CAUSE_DEAR_TO_YOU, if your primary concern is about impact and not about personal fulfillment. NGOs are often not well set up to metabolize the labor of developers, and at some things which you think are helpful will be perceived by the organization as a threat (e.g. at many organizations, anything which decreases the required headcount to operate attacks a primary reason for the organization to exist).

You're also unlikely to be an expert at $PICK_A_CAUSE_WHICH_IS_DEAR_TO_YOU for the same reason you're unlikely to be an expert at heart surgery or filing business taxes. Those strike me as important enough to be done by someone who knows what they're doing; your mileage may vary with respect to causes dear to you.

Relevant LessWrong article – Purchase Fuzzies and Utilons Separately: http://lesswrong.com/lw/6z/purchase_fuzzies_and_utilons_sepa...

> There is this very, very old puzzle/observation in economics about the lawyer who spends an hour volunteering at the soup kitchen, instead of working an extra hour and donating the money to hire someone...

> If the lawyer needs to work an hour at the soup kitchen to keep himself motivated and remind himself why he's doing what he's doing, that's fine. But he should also be donating some of the hours he worked at the office, because that is the power of professional specialization and it is how grownups really get things done. One might consider the check as buying the right to volunteer at the soup kitchen, or validating the time spent at the soup kitchen.

I think about this a lot.

I think too much specialization in the name of economic efficiency is harmful as it causes alienation and apathy.

If say this lawyer is required by a law firm to work on cases that end up harming the poor and then donates some of their salary to help the poor, is it really net useful?

If this lawyer spends an hour volunteering at a soup kitchen, he learns about the process, the people, their circumstances and needs. It may be something that he can then apply to guide his professional work. Or he may spot and improve some legal inefficiencies in the operation of the soup kitchen. Or he may be reminded that he can actually donate his own excess food instead of throwing it out.

Generally, I think we need more communication and cooperation across professions and "social classes", not less. The experience, perspective or education one brings to the table may be just the simple thing the others need to improve.

I volunteer over the weekends to build Habitat for Humanity homes. Yeah, I could probably make money if I freelanced on the weekends, writing code, but honestly I need time away from the computer, and working with my hands to build something tangible feels good.

In reality, I think that we do good things as much to make ourselves feel better as to make the world a better place. So with that in mind, do what makes you feel best about yourself.

That is exactly the message of the post, hence "purchase fuzzies and utilons separately", and not "forgo all fuzzies for utilons"

The donations of the highly successful are the reason many NPOs and relief foundations exist. With capitalism it seems to be "winner takes all" where there's a first (and maybe second) place price, but not much after that. This makes the benevolence of the wealthy just as important as government aid, and in my opinion, a responsibility or duty of the "winners".

Disagree with all of it.

Money and time are not interchangeable at all.

One can take 1-2 hours of his time, when he has time free.

One cannot give 1-2 hours of money, when he has to pay for his rent, bills and family.

There is noone who can decide to work one hour more at his workplace and get paid for it, then donate the money to charity.

> There is noone who can decide to work one hour more at his workplace and get paid for it, then donate the money to charity.

There are plenty of people that can make this exact choice. I'll work extra hours on occasion when my job is willing to allow us overtime, but not requiring it. Admittedly it's generally my stove broke and I need X dollars to replace it, not me donating the money.

I get paid per hour. This isn't a freelance thing either, it's just how my company does things.

So yes, I could absolutely work one more hour and get paid for it at the end of the pay period.

> One cannot give 1-2 hours of money, when he has to pay for his rent, bills and family.

Hopefully you're also saving for retirement, rainy day funds, etc. - some of these bills are flexible.

> There is noone who can decide to work one hour more at his workplace and get paid for it, then donate the money to charity.

Anyone freelancing can take on more client work. Save less and retire later. Kick more ass at work to get more promotions or other job opportunities. I could take shorter breaks between jobs.

It's not perfectly interchangeable, but the whole point of work is to trade time for money - "not interchangeable at all" is a strong enough phrase I'd argue work-for-pay alone contradicts it.

Although "effective altruism" sounds reasonable and should always be considered, it does neglect the human side of things. How many years do we add to the life of a lonely elderly couple by visiting them?

I think the point is that people with a surplus of money can be most effective by well-targeted monetary donations, while people with extra time should be spending it with the elderly. We can be collectively more effective with some specialization.

That's a good point

That was incredibly interesting. Thank you!

You should start off by limiting yourself because it's easy to get in over your head once you start down the path of unpaid work. I volunteer 20% of my time (one day a week) to non-profits so they know what they're getting.

Most of the jobs I got at first were through volunteering in other ways. I was a driver at a summer camp for underprivileged kids when I found that they needed a registration system they couldn't afford. And an animal shelter where I used to walk dogs had a little gift shop that sold handmade items so I set up an online store and their revenue went up 800%. Little projects like that can make a huge impact with little effort.

Then I blogged about the projects and now I regularly get requests through that. There are a lot of NGOs searching online for people like you so all you need to do is make yourself visible.

could you please link to your blog?

If the project isn't primarily a software engineering/data analytics group, ask yourself what they'll do when you're gone. Its not unlikely that setting up something complicated can be short term profitable while you're around and long term a net loss after you're gone.

There are hacks against that such as doing grunt work where its not about the volunteer who is interchangeable with any other volunteer (perhaps installing wifi or cat5 cabling, whatever) or helping something with a closed timeframe (An election campaign has a clearly defined ending and presumably you can commit to not leaving before the finish line).

Your best bet would be to find whatever FOSS they use and then work on the FOSS project. Your research shows that people and community users of some FOSS project would really benefit from feature whatever or bugfix whatever or documentation whatever, so ...

The UK has a bunch of open data sets.

You could find one that interests you and wrangle the data into something useful for the public.

I'd be interested to see some of these sets combined. For one example, the Office for National Statistics releases information about death by suicide, and the NHS releases prescribing data. (Also available on the excellent openprescribing.net site)

I'd like to see something that combines the two. Maybe a map of deaths by overdose and by prescribing of the top 5 meds used.

This work could help reduce death by suicide which is a significant cause of preventable death, and attempted suicide which is a significant cause of avoidable harm. (Sadly we can't just say "reducing human suffering is the right thing to do", we have to say "it's the cost effective thing to do".

Open Prescribing: https://openprescribing.net/

ONS "Suicides in the UK": https://www.ons.gov.uk/peoplepopulationandcommunity/birthsde...

National Confidential Inquiry: http://research.bmh.manchester.ac.uk/cmhs/research/centrefor...

I have posted this before, countless times, but techies who want to volunteer their skills and knowledge to advance the democratic process should think about joining the PROGRESSIVE CODERS NETWORK[0]. They are a non-profit that helps organize and direct volunteer coders, programmers, designers into open-source political projects. They are about connecting and facilitating projects, not dictating what projects should be. They are party-neutral, but seek to empower the people and provide tools for running successful campaigns and being engaged as a citizen.

If you can take away the need for millions of dollars to run a campaign then policy makers aren't beholden to the few wealthy supporters that helped get them elected.

They help connect volunteers to projects that range from building an open-source voter database to an Uber-like app that helps the mobility-limited get transportation to vote. They are extremely transparent and always interested in growing the network. Many members of the network are engineers, product managers, or independent coders.


I have volunteered for the UN Online Volunteer [1] program about a decade ago, but (sadly) I won't recommend it.

Most people volunteering there have no experience in the field, they are mostly students or retirees who "want to try". I joked at the time saying that I would not have accepted that work if it was paid for. Worst part is, you can't really tell people they won't do, because they're doing this for free and with good intentions. Actually, scratch that: worst part is that survey at the end of the mission where you had to rate people you worked with on tons of criteria ; that was horrible.

I would say, if you want to be helpful but not have the worst "work" experience you can have, you should probably find yourself a problem and fix it with a side project. Either host the service and allow people to find it, or just open source it with easy install steps (but there are more chances here that it won't be actually used).

[1] https://www.onlinevolunteering.org

Here are a few ideas:

- Digital Service https://thedigitalservice.org/ (this was made by YC partner, Adora Cheung)

- Bayes Impact http://www.bayesimpact.org/

- DataKind http://www.datakind.org/

I have been writing software, pro-bono, for non-profits for over a decade now. I get most of my "work" through idealist.org, which is a trove of opportunities. You might have to monitor for a few months before you find just the right project for you. Be patient.

My most recent gig, however, was found through the United Nations volunteer program. I can't find the link atm but I'm sure it'll come up for you with a bit of Googling.

It has been incredibly rewarding, and you might be able to write off some of your computer, conference, books, internet and travel expenses.

I love this kind of work for many reasons, but from the developer's perspective it's rewarding because the client is always very grateful for what you are doing and there's never a deadline, so there's always time to do it right and not take shortcuts.

I have traveled to some very interesting places, albeit mostly (but not always) at my own expense, with this work. I am fortunate to be in a financial position that I can do it, and I can't recommend it highly enough.

There are two big problems with your question:

a) By the time some NGO can specify requirements like "data analyst should do X to prove Y" they also have someone who can formulate those, i.e. some person who at least had some exposure to professional IT work. That person most probably has a list of 100 or so people s/he'll ask first (people known to work for the cause anyway are prime candidates).

b) "Perhaps you can share personal projects that you were able to use to help people and community around you."

Yes, I can but I won't: My stories don't help you except for maybe serving as inspiration. You can find enough inspirational stories via google, so I won't have to write down yet another one. But, much more important: NGOs are usually not set up to deal with any offer of help by someone who is not an expert in their specific domain. Your great ideas will be ignored simply because people don't have time to think about it. While you might see the potential "800% increase in revenue" (mentioned in another comment) the others won't be able to see it or won't trust you to stick to the project for long enough (drop out rates in NGOs are very, very high in my experience).

Summa summarum: Find a cause you want to fight for, make a list of NGOs in that area. Then: Try it and don't be disappointed if they don't see the value you could bring but only judge you according to what you do in their specific domains (i.e.: no praise for the idea of a souvenir shop of the dog shelter, lots of praise for walking the dogs). Once you found a pleasant environment to work in, start hacking it: Make PoCs at night, after doing the official work. Swear in your room at all those idiots who fail to see the benefit of your work but turn it into something productive; create some turn-key solution that creates some real benefit for the NGO. After doing this you will have a much better standing when you explain your next project idea - they might not get it, but they will trust your expertise enough now that they have seen that you deserve that trust.

Sounds like you could volunteer for DataKind:


They're an awesome non-profit that connects your kind of expertise with traditional NGOs that have data and domain knowledge, but typically don't know how to make full use of it.

You can volunteer even for a weekend project, and it makes a real difference.

If you live near a large city with a big newspaper (i.e. Washington Post) you can often find volunteer software development and web designer opportunities for various organizations in their employment section. Just note that many are truly volunteer or offer a small stipend in exchange for your work. On the flip side these can be great opportunities for someone just getting started to build references, a portfolio, and gain experience.

One initiative that comes to mind is the Humanitarian Toolbox: http://www.htbox.org/

I saw Richard Campbell talking about the Humanitarian Toolbox at his NDC London keynote - seems like an interesting option if you want to use your dev skills for good causes. https://vimeo.com/204070784.

Thank you for the pointer to the video - the guy really knows what he is talking about (at least it 100% reflects my experience)!

Think about the problems in your neighborhood and try to imagine creative solutions to them that you can implement with your skillset. It doesn't need to be a global problem to be worthwhile solving - sometimes helping our just a handful of people can feel extremely worthwhile.

This is how I got involved with a personal project. A few years ago I had trouble finding a listing of all Karate dojos in my vicinity. I compiled a list of such dojos in Excel, and later decided to put them online [0]. By putting this dataset online, and maintaining it up to date I am helping other people who are looking for a new place to train a sport.

This project not only helps the community (who can now easily find karate and other sports clubs easily through the project website) but also helped me learn new technologies and practice skill that I don't excel at, like design, writing, marketing, etc. Just yesterday I took the project to the next level and started doing same simple data analysis of the dataset [1].

While the project may not have a very large impact on the community, it does sufficiently so to feel worthwhile. Moreover, being able to play with different skills in a low stress environment makes is very enjoyable.

[0] http://www.klubi.si/ [1] https://medium.com/@pedro.kostelec/analyzing-the-market-size...

Check out https://www.project501.com/

It's platform for skill based voluntary work

Consider sharing your knowledge to help graduate students and guide them take good career decisions. This is a forum for discussing computer science careers with more than 150,000 students. https://www.facebook.com/groups/core.cs It is like stackoverflow - but for students who can't express their questions in a rigorous format expected by the stackoverflow community. We help students with their questions on various CS topics like algorithms, datastructures and programming. We are a group of 30 moderators answering thousands of questions posted daily and obviously our knowledge is limited and would like to expand to other areas like machine learning / datascience. It would be great if you can share your knowledge with the community. We believe that giving knowledge is the best form of giving, as it empowers the receiver for life time.

First - I run a platform that connects creative/technical volunteers with non-profits for project-based volunteer opportunities. There's a bunch of organizations looking for people like you - take a look: www.project501.com

Second - really interesting conversation here. It's incredibly important to make monetary donations, but that isn't an option for anyone. It's also possible that your time/expertise could save the organization far more than what you might have been willing to donate.

I'm a fan of the guiding ideas of effective altruism (few have mentioned it already). Basically, give what you are able to give to the cause that needs it most. There's plenty of behavioral issues though that might prevent us from giving more of our money than we probably could - it seems easier to donate our time when doing what we love doing and do best.

One idea is: build a platform where people can submit what projects they would like to see realized, and where they can specify a rudimentary requirements-analysis and/or design. It may include a mechanism where people can upvote projects, and perhaps a way for people to collaborate on designs.

I am surprized no one has mentioned FSF yet. They have a very good list of what is important for the community:


If you're into functional programming (Haskell + PureScript), I know that UnionizeMe [1] is looking for volunteers.

[1] https://unionize.me/get-involved

This is as impossible to answer as:

What charity should I give money to?

I would love to have a talented teacher, so I would say mentorship, ect.

The EFF although they have more technical resources than most.

Depends on 100% what you are passionate about. Without that info the target is any non-profit

Not quite the same question to me. Finding lists of charities that take donations is easy and obvious. Finding lists that would take volunteer coding is less easy. OP seems to be looking for a list, not specific advice on which organization to select.


5 month, paid fellowship to research, develop, test, and the launch tech products that fight poverty.

I'm not affiliated with Taproot, but am aware of them and that they have been successful with their model.

Taproot Foundation - WHAT WE DO: The Taproot Foundation connects nonprofits and social change organizations with passionate, skilled volunteers who share their expertise pro bono. Through our programs, business professionals deliver marketing, strategy, HR, and IT solutions that organizations need to achieve their missions. https://taprootfoundation.org/

My friend Robinson recently launched a site called Project 501. It matches non-profit organizations with talented professionals who want to donate their skills.

Site: http://project501.com Medium post: ‪ https://medium.com/@robinsongreig/project-501-a-platform-to-...

Find a project on github you like, fork it and submit pull requests.

Could use some more people on a code modernization project I'm running for OpenEMR (free EHR solution that is used all over the world).


Feel free to email me.


Over at Security First (www.secfirst.org) our small, non-profit team builds Umbrella App - a free open source tool that helps people like activists and journalists manage their digital and physical security.

We are always looking for people who are able to volunteer some time to help us on things like Android Development, back end work, UI/UX, design, marketing and copyrighting.

Have you heard of Open Source software? You can literally find hundreds of thousands of software projects that publish their sources under free licenses for you to improve upon. I am sure you have some hobbies or niche interests where software could use a little help.

Indeed but what about when your skills set don't involve software developpement? What's interesting in this question is actually that what work for FOSS might be working for other tasks.

Like for instance à project like "let's develop together a good blueprint for a eco-neutral house" where architects/carpenters/engineers/electrician/phd/lawyer/mason/painter/layman/etc could contribute in a Git Like fashion.

Yes but who benefits from this volunteering? Mostly people and corporations making a profit leveraging what you did for free. Needy people... not so much.

Check out https://www.catchafire.org

I haven't completed any projects yet but it integrates with LinkedIn and seems like a pretty good platform to find skills based volunteering opportunities.

List of unsolved problems in computer science https://en.wikipedia.org/wiki/List_of_unsolved_problems_in_c...

Try this: http://www.doinggoodfellows.org/ It's by a friend for this exact same purpose

I think here [0] is a great general introduction

[0] https://opensource.guide/

thorn ( https://www.wearethorn.org/ ) is another project that takes technical volunteers: https://wearethorn.typeform.com/to/pZtK7Z

I don't think you should restrict yourself to NGOs Even commercial organizations help people and community You should identify what kind of work interests you and use that to drive your decision.

Freenode #newguard and #oldguard

I'm in the process of launching http://letsopensource.com which is a commercial software alternative marketplace. It will be also relevant towards data science, design projects not just software.

You can contribute your time towards open source projects that people request and will fund.

You can contribute your money towards open source projects you need and other features and functions for your business.

My vision is to help developers who have a track record of open source work but also looking to help fulfill business open source needs.

You get money or portfolio cred backed by real references from backers. You get business value from open source software developers contribute to in a much more directed way. You can vote on features and functions with money.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact