As a student studying Computer Science in college, I often hear from friends working on various humanitarian projects, and I want to do something myself. But it seems that programmers don't have as many obvious avenues to help out as, say, doctors or teachers. What are some ways in which programmers can put their talent to use for people in poverty?
36 Answers
When I was in just out of college, there was a Guy who would stop by my house on recycling day and pick out all our cans and bottles that had a deposit. I became kind of friends with the Guy, I’d ask him how’s business, he’d ask me how I liked my cube and we’d have good laugh.
One day we got to talking about what I do and I told him”I made things to help people do their job better with less work”. He tells me he could use one of those things….
So, I had an old Palm3, I wrote an app where he could enter his Cans collected at each address and after 2 month he would know which Houses drink the most soda and what where his best blocks. (No route generator :-( ) I presented it to him the next week on recycling day.
Increased his productivity by 30%!
So there you go, Programming to help people in poverty!
- 14,706
Use your talent to earn lots of money, and donate a good part of it. As programmers, we are in the lucky situation to be able to earn more money than we need for our personal needs.
- 1,061
- 8
- 12
- 28,434
Contribute to open source software
By making a contribution to open source software (or creating your own) you can have a direct effect on the overall cost of a computer system. This in turn lowers the cost poor or needy people (or charitable organizations) incur to provide them with computers.
I know it's not very fancy but it could help!
- 121
I've had the same question, and I've thought of two things: doing web dev work for a nonprofit, or assisting with computer courses, like an adult education course. There could be poor people there trying to catch up with technology, depending on where the class is offerred, the area, etc. Maybe you could volunteer to manage computers at your local library- they have useful resources for people who can't afford their own computers.
If you just want to help people, you can always just go serve meals at the soup kitchen. Among the poor, I think general manpower is in greater demand than algorithms.
- 260
I live in India but I want to make this answer more general, probably the answer will go to some political or on a non IT way, so apologies in advance.
Poor people are poor because they can not enjoy some basic things like food, water, home, jobs and transportation. The lack of these basic things are the main cause of poverty.
Our job is to make programs, and our target audience is most probably those who have some extra bucks to spend on a server and a website. Mostly in India IT is not seen as necessity, many firms and govt organization avoid this if they don't have enough money.
Here the govt. spending the major part of money and manpower to make above mentioned resource proper and after that more better.
They have to build and keep better roads, better house and constant electricity. They have to watch and forecast weather and keep some proper storage if weather goes out of control so everyone can have proper food no matter how good or bad the whether is. They have to create and manage a good transportation system to keep business alive anywhere. They have to provide better medical and emergency services.
That's where I think a better programming helps, to provide a good and reliable programs to people and (Government and Non Government) organizations who handle them. And It's way better than programming for some freak clients who are like Dogs chasing cars. Atleast it makes me (And probably you too) feel proud by giving back the society.
P.S. As a mobile developer I felt proud once by developing an application for Blackberry to help people to cope with some medical emergencies.
P.S. 2 There is also one easier way, earn more by programming for these clients and spend more earned money to charity.
- 46,547
- 1,059
Unfortunately most causes of poverty don't respond well to programming solutions. Google made a valiant effort with the Google.org project, but after 6 years of trying, they've largely found that only donating money to lower-level "on the ground" organizations has much effect. A recent article in the New York Times highlights the problem: Google Finds It Hard to Reinvent Philanthropy
Using your skills to earn more money and donate it to causes that help relieve poverty is likely your best bet. When you donate to at an organization like Charity Water, where $20 provides clean water for one person for 20 years, you can do a whole lot of good just working an extra hour a day and donating the results. The Developers Against Poverty campaign is an example of programmers promoting doing good this way.
- 1,719
You can also participate in hackathons organized by Random Hacks of Kindness.
From their website:
Random Hacks of Kindness (RHoK) is all about using technology to make the world a better place by building a community of innovation. RHoK brings software engineers together with disaster risk management experts to identify critical global challenges, and develop software to respond to them. A RHoK Hackathon event brings together the best and the brightest hackers from around the world, who volunteer their time to solve real-world problems.
- 32,069
I have a suggestion,
We can develop a website, which will have the details of hospitals, free medical checkups, government free medical services. In case of emergency, people can search for the blood donor near by their state/region/town.
Not only poor, you can help every single individual who really need someone in extreme emergency.
+1 for this nobel step.
- 256
I live in Brazil and here, the software costs are prohibitive. This situation has been changed in last years, for the economic development. But it still is unconfortable. Almost every commercial software application imported is too expensive due to the differences in people's income and the minimum wage in relation to a rich nation. All the imported technology stuff costs, effectively, more than it would be cost in a full developed nation. An iPhone 4, for example, in Brazil costs more than a thousand dollars. If you compare the minimum wage of Brazil with US, UK, Germany, Japan, etc, the cost increases too much. I think that with India, China and Russia the situation is no different.
In my opinion, a good way to help poor people to be technologically included is provide free and open-source software for education and small businesses (that creates jobs). Imagine the development of better OSes, Office Suites, CAD tools and other software products that would help the development of a nation... I believe that we, programmers, analysts, software engineers and related, can do much to reduce social inequality.
- 109
- 101
Schools are always looking for people to come into the classroom and talk about (or demo) their jobs. I guarantee you the kids will love it.
-Ralph Winters
Help the people doing the humanitarian aid and/or help alleviate the issues causing poverty.
For example, you could:
- Develop software which enables doctors/teachers to help/work with remote villages more effectively.
- Help farmers increase the efficiency/yield per acre in poverty stricken areas
- This list goes on...
- 11,181
- 6
- 57
- 82
"Deliver Good" would be a site built by a programmer to help match charities and donors that I believe is in the same ball park of what you mean. The site was started by someone in Calgary, Alberta, within the past year so it may still be gaining adoption to some extent.
"Talking Shop: Beef up your resume by doing volunteer IT work" is an old article about how your could volunteer your IT skills.
- 16,775
Bill Gates has been pushing to help eliminate Polio world wide, you can check the Bill and Melinda Gates foundation web site and see it there is anything you can do to help that effort.
Maybe organize a local fundraiser or something. Its not specifically programming related but it will definitely help people in poor countries! Or how about a hack-a-thon fundraiser?
And for the record I have been a Linux geek since about 1994, so not a Microsoft fan. But I am a fan of good public health policy, so for this I will give Bill a big round of applause.
- 10,413
I'm no econ expert, but I've heard a lot of people say that lack of education and access to shared knowledge is what helps to keep poor people poor.
If that's the case, then one could make a case for saying that FOSS could help lower the bar economically and allow the lesser privileged folks access to those realms. I know for a fact that a lot of schools that are on tight budgets have to spend massive sums on windows and office licenses, which if replaced by ubuntu and open office, could have been spent on more computers/professors.
Those projects are always looking for help.
- 169
- 4
Something as simple as showing people in charities and non-profit organisations how to use computers and various platforms effectively can be a big help. Small groups particularly often lack people with technical skills and IT tasks often go undone. Sometimes basic things like setting up a website or Facebook page can seem daunting to those outside our field. It can be as simple as letting them know they can call you up with technical questions or helping out with setting up data security and backups.
- 1,199
This can be a top town approach and things can be done at all levels. You can help the world by participating in developer challenges like the one from the World Bank Apps for Development that tackles the Millennium Development Goals. Those guys have a lot of data that can be processed in a lot of useful ways. Also you can search Google with "PROBLEM-NAME developer challenge". That gives some interesting results.
At a lower level you can offer your services to one of your national non governmental organizations. Surely they have some ideas and are in need of some skilled programmers. And of course there is the 1 to 1 approach. Volunteer your time to teach people how to use a computers/the internet in ways that help them do stuff with less money. Teach children computer programming.
"If you've come here to help me, you're wasting your time. But if you've come because your liberation is bound up with mine, then let us work together."
— Australian Aboriginal Elder Lilla Watson.
- 572
As a service learning project in my senior year of college, we built a system for the local Salvation Army to help manage their annual Christmas gift donation drive for needy families. While it may be rare for such an organization to need the help of a programmer, it doesn't hurt to ask around in your area.
- 2,323
- 1
- 22
- 26
I am a (computers) student in India, and I have had the fortune to know and work with several people who are passionate about using technology to help people in need. Check out these webpages - Microsoft Research India, act4d and Gramvaani.
Personally, I feel that you are looking at in the wrong way. If you think that you can help people with programming ability, you are probably thinking of building some kind of website/software. However, the fact of the matter is poor people largely (I am talking about the developing world here) don't have access to computers etc. and don't usually speak English. If you think that technology alone will solve the world's problems, take a look at this. This is the text of a talk by a person who was involved quite heavily in this field.
In my view, if you really want to make a difference, you have to combine technical engineering with social engineering. Try to realize what obstacles are holding people in poverty - it could be lack of education, lack of access to opportunities, lack of money etc. Then try to think of some way that these can be overcome, and then you can perhaps be ready to help them. If you are really interested in helping out, remember that technology is typically geared towards people with money, and you have to remember that technology is only useful if it actually meets the needs of people. Think less about new technology, and more about better ways of using existing technology.
- 656
- 5
- 11
Contribute your time and efforts to improving Open Source projects such as Ubuntu linux. The philosophy of Ubuntu speaks directly to your cause. Humanity to others...
By improving this excellent free operating system and software you contribute directly to assisting people in poverty. Since this Linux operating system is free and very easy to use, it can assist people in all walks of life gain the tools they need to manage their information needs.
- 105
I am living in the Philippines and I shifted my career to IT because I want to help other people... and I plan to give my service for FREE... For example, I want to develop a program for our public CITY library because currently they are still using a manual catalogue system. Another thing is that if I became an expert in programming, maybe I could teach children who cannot afford to have a proper education some computer skills.. :)
- 771
Programming is for the well off and well connected.
There's only two things a programmer can do:
1. Donate his time.
2. Donate his money.
Since every human being has only a relatively limited amount of time to donate, I would prefer the second option.
Earn enough money to make a significant impact and then set out to change the world.
PS I am not advocating against giving time, just that given the scale of the poverty issue, especially here in India, money is much more valuable as a resource.
Additions:
Disregard the previous answer. I later remembered a fantastic TED talk I had seen earlier and went to find it again.
Now I agree with Mr. Anil Gupta's answer. It's a must watch.
A year earlier, I had also seen another TED talk related to technology and poverty. Though I couldn't find it now, the idea was to give a computer with internet connection in a slum or in remote villages. Even without being taught how to, children learnt how use them very quickly.
Edit: Found it: Sugata Mitra: The Child Driven Education..
It's doesn't directly relate to poverty but since education is the key to break the vicious circle, this idea is brilliant.
- 199
One thing that programmers are often exceptionally good at, in comparison to the rest of the population, is collecting and organizing information. I live in a relatively poor neighbourhood compared to the rest of my city and there are literally dozens of disparate programs designed to help people. The problem is, is that nobody knows about them. You ask anyone working for these programs, and one of their biggest issues is connecting people with problems to people with solutions.
In our community we've started a extremely local web site (for roughly the 4x8 block area in our municipal neighbourhood). We've actively sought out the various mailing lists and organizations that offer programs, and we filter and organize them, and add them to the website. Nearly everyone in the area has access to the internet in some form or another. But we're also supplementing the site with a monthly newsletter. The intention is to centralize the information that is already out there. We've even given some organizations the ability to post directly to our site. So far the response has been quite positive.
- 239
There are tons of charitable open source projects out there--it's finding them that's the rub. Sahana comes to mind; can't think of any others offhand...
If you don't find anything that resonates with you, then start something! Think of how automation and information transfer (the core of software's strength) can improve the lives of those you wish to help. I find Dean Kamen a great source of inspiration here. When you have your great idea developed--make it happen. It's that simple.
- 101
Have you heard of the Venus and boinc projects? search for them and see what we can all do.
http://www.thezeitgeistmovement.com/wiki/index.php?title=BOINC
http://www.thevenusproject.com/
get informed mate ;)
sincerely,
LSonic
...
The reference to the BOINC project didn't work for me. However, I have found a BOINC project that serves a a good introduction to BOINC:
World Community Grid
http://www.worldcommunitygrid.org/index.jsp
Click on each of the pictures under the big picture to see all their current subprojects, some of which should help mostly people in poverty. I've given them years of computer time already.
A few more BOINC projects of interest:
http://www.malariacontrol.net/
for malaria
http://dnahome.cs.rpi.edu/dna/
for tuberculosis, but early in development so I recommend it only for those with experience in testing new software
http://www.rnaworld.de/rnaworld/
likely to help with research on RNA-based viruses, but not giving much detail yet; not quite so early in development but still not recommended for beginners
I'd recommend selecting at least two BOINC projects so your computer can still do useful work if one of the projects goes down for a while.
BOINC is used mainly when some research project needs much more computer time than the computers they can afford can deliver within a reasonable time.
Robert Miles
Whilst not programming, I have done quite a bit of voluntary work within IT drop-in centres. Primarily teaching the elderly and those with learning disabilities on how to use popular software.
A lot of people in society don't realise the benefits that things we may take for granted, can give them, such as the internet. This is prevalent with the groups I mentioned above and it can be extremely rewarding when you see the progress they make and the benefits that they inevitably gain.
Maybe this is an area you could look into, as I think most major conurbations would have such set-ups. If not, ask your University would they be interested in giving something back to the community and volunteering their resources for a few hours a week.
- 2,175
It's more of a long-term strategy, but you could teach kids in poverty or in a developing country. If not as a full-time job, then teach programming for an after-school program at a boys/girls club in a poor neighborhood, or simply mentor at-risk kids. If you instill a love of learning, knowledge of programming and other scientific/technical fields, and inspire them to pursue an advanced education generally, you greatly increase the chances that they will end up with a life in which poverty (for themselves and their families) is very unlikely.
How many poor kids spend hours a day on the basketball court or football field hoping to strike it rich but in reality have a 1 in 10,000 chance of doing so and a 9,999/10,000 chance of getting nothing in return? If they spent the same amount of effort learning programming, math, science, etc., they would probably have a 95% chance of being solidly middle class for their whole life. Given decent smarts and hard work, a lot of them could do it, but it's just not an option in life that they see by example or know anyone to guide them toward. You could be the one.
- 541
Has no you yet posted a link to hackers for charity? They have a list of volunteer positions that need to be filled, many of which can be done over the web.
- 3,576
Despite the many answers, I feel like I can contribute to this subject - a group has been considering (In a different context) what "Good" means and some of what they have written about is charity.
First, harsh words (That have been posted in other answers as well)
In the "Buy A Brushstroke" campaign, eleven thousand British donors gave a total of £550,000 to keep the famous painting "Blue Rigi" in a UK museum. If they had given that £550,000 to buy better sanitation systems in African villages instead, the latest statistics suggest it would have saved the lives of about one thousand two hundred people from disease. Each individual $50 donation could have given a year of normal life back to a Third Worlder afflicted with a disabling condition like blindness or limb deformity..
Most of those 11,000 donors genuinely wanted to help people by preserving access to the original canvas of a beautiful painting. And most of those 11,000 donors, if you asked, would say that a thousand people's lives are more important than a beautiful painting, original or no. But these people didn't have the proper mental habits to realize that was the choice before them, and so a beautiful painting remains in a British museum and somewhere in the Third World a thousand people are dead.
Second, words on what you can do AS A PROGRAMMER that doesn't feel as cold.
Money: the Unit of Caring, by Eliezer Yudkowsky
The bolding underneath is mine, to draw attention to the important point.
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 to work for five hours at the soup kitchen.
There's this thing called "Ricardo's Law of Comparative Advantage". There's this idea called "professional specialization". There's this notion of "economies of scale". There's this concept of "gains from trade". The whole reason why we have money is to realize the tremendous gains possible from each of us doing what we do best.
This is what grownups do. This is what you do when you want something to actually get done. You use money to employ full-time specialists.
Yes, people are sometimes limited in their ability to trade time for money (underemployed), so that it is better for them if they can directly donate that which they would usually trade for money. If the soup kitchen needed a lawyer, and the lawyer donated a large contiguous high-priority block of lawyering, then that sort of volunteering makes sense—that's the same specialized capability the lawyer ordinarily trades for money. But "volunteering" just one hour of legal work, constantly delayed, spread across three weeks in casual minutes between other jobs? This is not the way something gets done when anyone actually cares about it, or to state it near-equivalently, when money is involved.
Third, the thing I actually came here to post:
Purchase Fuzzies and Utilions Separately, by Eliezer Yudkowsky
If I had to give advice to some new-minted billionaire entering the realm of charity, my advice would go something like this:
- To purchase warm fuzzies, find some hard-working but poverty-stricken woman who's about to drop out of state college after her husband's hours were cut back, and personally, but anonymously, give her a cashier's check for $10,000. Repeat as desired.
- To purchase status among your friends, donate $100,000 to the current sexiest X-Prize, or whatever other charity seems to offer the most stylishness for the least price. Make a big deal out of it, show up for their press events, and brag about it for the next five years.
- Then—with absolute cold-blooded calculation — without scope insensitivity or ambiguity aversion — without concern for status or warm fuzzies — figuring out some common scheme for converting outcomes to utilons, and trying to express uncertainty in percentage probabilitiess—find the charity that offers the greatest expected utilons per dollar. Donate up to however much money you wanted to give to charity, until their marginal efficiency drops below that of the next charity on the list.
Obviously, you are not a billionaire (I guess. If you are, thank you for considering charity), but even so, that third quote is applicaple. You want to feel good about being a good person and you want to be a good person. You are allowed to do both - especially if you are more likely to help people if you feel good about helping. The important part, after all, is that people get help.
If you feel that helping people, personally, so you can feel that you are helping, is more likely to happen than you spending that same amount of time earning money to give away, then help personally. The important part is that people get help.
And if anybody, anywhere, ever accuses you of just doing it to feel good? Remember always that you have helped, and they have not.
- 673
I don't think you can contribute a lot in that field: what you do on computer often stays on computer, while poverty is material thing.
What you can do is teach kid how to use a computer or how o program, but again, they need a computer to continue learning, and most kids tend to learn alone.
I've had this idea for a long time now, but obviously the thing that would improve our society from the bottom, is some kind of clean, location based, goods/service exchange for everyone website.
I'm not thinking about you regular "selling" announcement website, but something which makes a lot of emphasis on locality.
Some sort of craigslist + google maps, but better and not necessarily based on emails. There would be people who search, and people who propose...
I don't think successful companies like google or facebook put much emphasis on how the economy has to organises itself, while it is like the biggest feature that internet allows: transportation of information.
Try to think that the current economy makes people pay for meeting each other and delivering services, while what you really need might be much closer of where you live.
Delivering information organised in this manner would greatly diminish poverty, which to my sense is just a big lack of organisation money can not always solve effectively.
SOrry for the political post :)
- 2,280
You can work on Mifos: http://mifos.org/ - the software used by Grameen bank.
"Participate in an open source project that's building technology to end poverty faster" - quote from the website.
- 1
You can always help indirectly - eg. make some software, that would help some humanitarian project. Our you can make free ( or symbolic price ) web for em. if you are web programmer - this can help to get more other people know about project.
- 101
CHARITY AND DONATION IS STUPIDITY.
Try to earn as much as possible. Spend ( instead of invest ) as much as possible. If all the people were doing only those two things economy will take care of poverty easily.
Help people to EARN money. It is always shameful to be on receiving end of charity and donation. If you spend it , somebody going to earn it. simple.
If you feel even more want-to-help-poor-people guy. Start A BIG business that can employ lots of people.
Always always let people earn their money instead of give it to them. Preserve their and your pride.
edit: Also never feel guilty about not doing anything for poor people. To me ( and I hope to most other people ) Doing best according to your ability ( whatever it is ) is far better public service than doing something inferior ( in terms of wasted efficiency and time ).
Sorry for not directly answering to use of "programming ability", but basic rules are same, whatever the profession is.
edit: please also read comment which have good discussion on subject. sorry again for drifting off the topic. ( but giving appropriate answer. )
- 101
Form a coalition, or just a group of programming friends, and make yourself available to small, but effective non-profit organizations. Offer to build them a website for free in your own time, etc. I'm currently building a site for a non-prof to allow people to sponsor educational materials in my free time. The work I'm doing can ultimately educate a village, I haven't left my office. This takes building business relationships with these organisations, so may take time build a rep, but once that's established, you wont fall short of opportunities.
- 101
Write software that helps people communicate freely and efficiently.
Efficient and unhindered communication is the key to a free world with no poverty and pollution? That's what causes dictatorships to fall, and that's why all dictatorships censor?
For example, you could contribute to the Tor Project, or build another helpful communication system like Twitter and Facebook. — You've read about how Twitter, Facebook and video streaming sites have been used in the Arab Spring?
- 351