Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What can I do as a software engineer to help the underpriviliged?
67 points by rupertdev on Feb 20, 2018 | hide | past | favorite | 52 comments
As a white, midwestern software engineer, it's easy to live my life day to day without ever leaving my little bubble. What are some ways that I can apply my skills to help the under-priviliged?

Leave your bubble.

There is almost certainly some volunteer group in your area that could use an extra pair of hands. You might be tempted early on to offer suggestions to improve their efforts through better software; don't. Instead, just watch, ask, listen, and learn. Once you've got enough experience to be confident that you understand end-to-end how everything works in whatever group you volunteer for, you'll probably know the right place to apply your skills as a developer (which very well may just consist of, "um, you need automated backups").

Keep in mind that their priorities are different from yours. Things that you would probably consider essential or best practices are, for them, distractions and nuisances and costs to which they're super sensitive: updates, security, anything that's new and requires effort to learn.

Software developers tend to see themselves as "systems thinkers", and think they can always improve any given thing by swooping in and applying some new software to it. That is often not actually the case, but they don't get their hands dirty enough and stick around long enough to realize it.

Adding onto this, you should always use the lowest tech solution possible if it satifies the problem. Sometimes that solution is basically pen + paper + a whiteboard. Or installing dropbox. Othertimes it might be a google spreadsheet, or a wordpress site, at the end of the day the solution should be simple and straightforward if thats what the problem is. More pipelines / processes just means more headache to end users (and you), and more things to break.

I had my fair share of coordinating events during school for science competitions. One event we had was spread across campus and in areas with low wi-fi coverage. Our coordinator wanted all the results managed by google spreadsheets in real time. At the end of the day, it was completely unnecessary for logging results (PC problems, typing in broad daylight sucks, no power outlet for laptop, no wifi coverage, etc) and resorting to a piece of paper to write down competition results got the job done much smoother.

I've had to do IT for alot of my friends and families. The last thing I ever want to do is introduce them to a new piece of software, because its just going to be more work for me tweaking it to their liking and them learning a new software package. Not only that, they are just going to eventually install a virus anyhow. Then I'm going to have to reset their PC a year later, regardless of how well I teach them about safe practices on being online.

There's a japanese philosophy that revolves around these points made above, called LEAN (also, this is what agile development is based on). One rule is you adapt well proven methodologies and workflows first, unless the benefits of using a shiny piece of tech far outweighs its cons and risks. Another rule is to listen and understand, before you jump to conclusions. A 3rd rule is to eliminate waste, in development this is generally your buildprocesses / shiny tech / reliance on too many libraries.

TL-DR . Go low tech as much as possible if its an option. If not, the benefits of shiny tech need to outweigh its cons / risks. If you do pick a software package, pick one that's well adopted, easy to learn, and fits your use case.

The related keyword is http://www.appropedia.org/Appropriate_technology , which tries to limit the need for poorly available skills or hard to maintain equipment.

Almost every nonprofit--especially local nonprofits like food banks, hospice care, shelters, legal aid centers, etc--has technology issues. They don't have enough money to pay for IT of any kind, especially in hyper competitive markets like Silicon Valley, and their tech knowledge would be probably laughable to you. If you showed up unannounced at the offices of one of these nonprofits and offered to help them with any tech issues they've been having (fixing a website, making the printer work, etc) they would be most grateful. Of course it's better to ingratiate yourself to the hardworking teams over there by making yourself part of the community first, you don't want to show up like the messiah who's going to fix all their problems for them. Above comments address this.

I would strongly second this.

I had some down-time between jobs a couple of years back, and used it to volunteer at a charity to help out with some basic IT work.

There was some indeed an element of fixing and securing their WordPress-based website, and sorting out their AdWords campaigns. However, the vast majority of the work (by time, not by difficulty) was cleaning up crapware from Windows laptops, getting Dropbox to work correctly across their machines, and sorting out their software licences after they'd been screwed over by a shady ISV.

I had the same dilemma and eventually teamed up with a few others to start a non-profit technology company, to serve other charities. The industry often gets the edge of commercial tools not built for their needs, or ones that haven’t been updated in years.

For example Blackbaud is the market leader in non-profit software, they just launched the cloud version of their CRM product. You literally Citrix into a VM and screen share with a remote machine via your browser. It’s that bad.

We’re combatting that. Raisely (raisely.com) is our first product. It gives charities great fundraising tools, for free. This year for every $1 we spend building or supporting Raisely, a charity raises $38. It’s a huge ROI.

We can’t get VC funding though, so if engineering is your thing and this sounds appealing - we’d love the help.

That's awesome, would love to hear more about the process of setting up an NPO.

P.S. brave browser on Android just spins trying to view raisely.com.

Always happy to chat if you’re interested! tom [at] raisely.com

Also thanks for the heads up I’ll have a look at what’s causing that.

You can apply your skills to maximize income and donate resources. I donate ~$25K/year to various animal causes.

I second the thought of leaving your bubble because there is more opportunity. I am a former midwesterner, and I live near Seattle now. There are way more opportunities at the coasts then the midwest.

Dan Pollatta said in one if his Ted Talks that it wasn't selfish for a person to stay in the private sector where they could earn more money and then give the excess to charity over working for the charity and make less.

I haven't thought through his whole talk enough to have an informed opinion but it is interesting.


For completeness sake, here is best argument I've found against the idea of "Earning to Give":


It's a nuanced piece and doesn't argue against it entirely, but the arguments in it should inform these kinds of decisions.

That's interesting. I think if you can code well and transition to leadership, then the situation is unusual and earning to give is ideal. He noted 500k as unusual.

So, for me it makes sense to stay course since I am unusual. I would further argue that you should prefer private sector until you think unusual is not your thing or just not attainable.

Yes. I can have a greater impact by leveraging my skills in a market to donate rather than rallying to a cause.

Are you gainfully employed? The best answer might be the simplest, both to describe and execute: cultivate your career and use it to generate funds for people who help the underprivileged as a specialty. The market can put your time to better use than you can helping people directly, and plenty of important public assistance groups are starved for cash.

Start donating now. Get into the habit. Ramp up your contributions over time. You'll probably find you give a lot more than you expect you'd be comfortable with.

(Also, consider convincing other people who you've had a career impact on to do the same!)

I second this. Look into GiveWell and effective altruism, if you're not familiar with them. Also look up the term "earn to give". There's some truly amazing opportunities to deploy capital in the service of the less fortunate, particularly in places like Sub-Saharan Africa where e.g. $3500 buys enough mosquito nets to result, statistically, in one life saved. $3500!

You can volunteer your skills to work with nonprofits that use technology to accelerate their impact.

The most well-known of these tech nonprofits are Mozilla, Khan Academy, Wikipedia. Some have come through YC, like Watsi and SIRUM.

At Fast Forward (org that I started, like a YC for nonprofits), we have a listing of some available tech-based volunteer opportunities on our website (https://www.ffwd.org/tech-nonprofit-jobs/opportunities/?_sft...).

For example, TalkingPoints (tool for teachers to text parents) is looking for a machine learning advisor. MindRight (text message counseling for kids who have suffered trauma) is looking for a code reviewer.

Your software engineering skills are incredibly valuable, and it's hard for nonprofits to find and afford quality developers. Providing those skills can greatly help others.

A couple of things I apply for my own doings as software engineer:

- educate aspiring software engineers from other countries online by writing on your blog for free about software engineering topics

- in the long term, try to translate the content to other languages (maybe pay someone to do it)

- maximize your income and donate money to children's education in other countries, they need to have the chance to learn the English language in the first place to be able to consume all the free educational content and open source projects which can be found online

- if you put an educational course online for $99 to educate others about software engineering, think about developing countries where it's not possible to pay the $99 for a 5 hours video course, the price can be adjusted on a country base by something like PPP [0]

- [0] https://github.com/rwieruch/purchasing-power-parity

Before you do anything at all, ensure that you understand the difference between relief, rehabilitation, and development. Know which is needed, when. Two minute video: https://vimeo.com/33174427

As an example I am aiming to use my IT skills to bring development to the island of Haiti in the form of training for internet careers. The islanders are often given food (relief) but experts on the island point out that the biggest need is personal development so that they help themselves climb out of the hole. I’ve spoken with two missionaries to the island who are generally positive about my plan.

If you bring your skills and apply them to rehabilitation when development is needed, you can do more harm than good, no matter your intentions. So ensure you know which to apply, when.

Find a religious building near you, they'll certainly have some kind of social service they participate in which could use volunteers.

Bonus: They probably could use your software skills as many of them have been operating for years with low-tech shoestring budgets.

If there are schools/libraries near you that run coding clubs you could go and help teach. If there aren't any around, you could help to start one up.

I have spent several years helping to organise and run a CoderDojo, and it has been a great way to meet new people, and you don't need a heap of technical people to run one, just one or two who can help with the really hard problems.


Leave your bubble.

Spend two or three years working in South America, Africa or Asia. Make it a goal to develop genuine friendships with some of your colleagues and neighbors. You'll have no choice but to expand your understanding of the world and your empathy for people whose lives have been very different than your own.

I would love to do that. Unfortunately I have long term financial obligations here in the states. Any suggestions for making that work?

So long as the goal is to use software engineering to help, you run the risk of staying in the bubble. Nobody can eat an app or PaaS. It won't keep anyone out of the rain unless someone has built a roof out in meat space. More intractable is that roofs and happy meals scale linearly. Spinning up 1000 more EC2 instances doesn't address acute demand spikes.

These are hard problems. There is a reasonable probability that your professional skills are not all that applicable.However, you are not in poor company. For all that Jimmy Carter can do, every board he nails together makes a difference in some family's lives.

Good luck.

Certainly you could contribute financially - and that’d be very American of you (source: am an American). However, you’ll get much more value out of donating your time and contributing “boots on the ground”.

A friend and I were talking recently about this tendency to offload the work - a very capitalistic approach (source: am a capitalist) - but you get a different kind of return on investment being present for and aware of the needs of those physically around you. That ROI might be measured in terms of mental health.

Help build "on-ramps" for the under-privileged. If you live near under-privileged communities try to set up paid internships that will actually help to teach these kids and help them, build a professional network. Get in front of these communities and invite them in. Try to get your HR department to rethink some of the standard requirements (Do you really need a college degree? Or even a high school degree?)

As in any aspect of life, leave it to the professionals!

If you are good Software Engineer, you'll be making good money and this is what the non-profits need the most: good old hard cash...

Find a worthy organization and donate, and spend your free time to better yourself and earn more to donate more...

Unless of course you you want to become a volunteer, leave your job and transition...

My coworker has the same characteristics you describe. We work for a startup giving out loans to SMEs who otherwise won't get access to credit in poor parts of Latin America. We both came to work for this company precisely because we wanted to do some good in the world. The past year has been great because of this.

There's health software such as OpenMRS, OpenLMIS, ODK, etc. I've made some limited use of learning systems such as Moodle in low resource environments. Also don't discount expanding what you're "skills" are and consider programs such as Peace Corps (if USA).

Join with engineers already working on civic engagement. Check out: Tech Solidarity, Tech Resistance, Tech for Campaigns, Silicon Valley Rising, Tech Workers Coalition, Tech Stands Up, Tech Worker Coalition, Progressive Coders Network, Techtivist, Civic Hall, HacktionLab..


We've banned this account for using HN primarily for ideological battle. That's not what this site is for, and the guidelines ask you not to do it, regardless of which ideology: https://news.ycombinator.com/newsguidelines.html. Please don't create this kind of account.

This may not be what you're after, but software engineering tends to pay very well. You could donate a percentage of your wage to charities that help those who are less privileged.

CF: effective altruism or 80,000 hours for more in this vein.

If you're employed, ask your employer to arrange unconscious bias training for all staff. Speak out in support of the under-privileged in your workplace.

indoctrination hurray

Indirectly help the under privileged by directly applying your skills to solve problems for those with the deepest pockets and then donating that money.

make more money and then give some of it to causes you support.

Quit your job so that someone less advantaged than you can take your place.

The median income worldwide is around $10,000 and a third of the world lives on less than $2/day. If you want to help the underprivileged you have to or your money has to leave the US.

It just shouldn't go to Iran.

And you just have to make sure that any charity you donate to doesn't eventually get revealed to have been a sham where the people running it were secretly funneling the money to armed militants without your knowledge because then you can go to jail for the rest of your life (unless of course your name is Reagan and you funnel arms directly to the militants yourself!)

That comment took a weird turn into Iran-Contra.

Ah, this one is easy! See, there is X money chasing Y resources. If you feel that you or your colleagues are having an easy life compared to rest of the world which you should confirm by going to difficult parts of the world, here is a plan for you:

Do something so that projects of the company where you work fail. This will offer some competitive advantage to companies elsewhere, probably one from the difficult place? That's the easiest thing you can do.

You can donate money but I don't think it works. You gotta teach a man how to fish. If you destroy your and your colleagues' fish, they'll be forced to buy fish from underprivileged.

If in America, your options are very limited and the answer very simple:

Use your money, time, voice and vote to support a modern public safety net.

Every other avenue is a divergence or distraction or otherwise ineffective.

Best answer in the thread and a very clever one, IMHO. Fixing things that lead directly to thousands of people falling in poverty each year is better than the neverending cycle of applying patches to mitigate its consequences.

We could call those “patches too. Supporting a free market always requires maintaining an environment that allows it to justify it’s means. It seems there are probably many paths to this end. This is the only proven one as far as I know. In other words, I am not aware of any healthy economies which lack healthy safety nets.

This is a false dichotomy. You can, and should have, both: free market and civil rights.

He didn't ask which political platform or policy positions he should support. He asked what he could do to help the under privileged.

And I answered with “what he could do to support the under privileged”.

In some contexts, my suggestion could be used as a political platform, but it isn’t here. It is, however, obviously, politics. How could it not be?

It is strange to me that you contextualize this way. It is no less than obvious, to me, that politics, as a field so concerned with the livelihood of society members, is a (if not the) topic at hand. I am open to other avenues but the success of such efforts remains grim, hence the concern in this post, which is anything but new.

An effort to logically separate politics from the needs of under privileged society members strikes me as a questionable pursuit at best and a damning moral quandary. Can you explain what the point is?

Why don't I address your comment piecemeal? I'm going to assume that the thing we care about the most is poverty when we're talking about under privileged people.

> If in America, your options are very limited

How are your options limited? The US has over 1 million nonprofit public charities plus 400,000 other nonprofit organizations (foundations, civic leagues, etc)[1]. 62 million Americans volunteered for nonprofit work in 2015[2]. Americans give over $250 billion a year to nonprofits, about half to religious and the other half to secular[3]. None of this giving goes to government organizations, although of course some nonprofits get federal or state funding (probably a small %). But the point is that millions of Americans find a way to help the underprivileged apolitically--that is, there is little government intervention in their giving or how the money is spent.

> the answer very simple

The answer is clearly not very simple. Poverty is not only globally prevalent, it has never been eradicated by any historical or modern society, ever. If the answer was simple, someone would have solved it. Certainly a 'modern safety net' such as it may be defined by you or by others, open to interpretation as it might be, has been tried in many countries with mixed results. France, for example, has a robust public safety net and yet boasts a poverty rate of 14%[4] (the US official rate is 12% but to be fair these numbers might be apples and oranges[5]). In any event there is significant debate about the effectiveness of top-down poverty alleviation programs or about the form in which they may take. For example, many people now advocate UBI which is a far cry from the traditional notion of a public safety net but would replace it nonetheless.

> Use your money, time, voice and vote to support a modern public safety net.

I assumed by this you meant support a political party committed to expanding the public safety net, which in reality would be the Democratic Party, but it could be literally any party, the problems are the same. I suppose you could mean volunteer more taxes to the IRS, which is certainly an indirect option to filter some % of your donation to poverty alleviation programs, but I doubt you have done that or would expect others to.

I simply don't understand how giving your money to the Democratic Party, or any other political party, is supposed to improve their odds of winning an election, let alone using their elective power to improve social safety net. Obviously money doesn't buy elections--talk to Hillary Clinton or Meg Whitman about this one. And the last time Democrats touched the welfare system under Clinton they shrunk it and didn't expand it.[6] When Democrats last had both houses and the presidency from 2008-2010 they used their political influence to pass Obamacare, American Recovery and Reinvestment Act, and Dodd-Frank, all of which didn't address the public safety net except tangentially (you could argue, for example, that Obamacare / stimulus / financial reform indirectly help the poor but that's certainly debatable). There simply is no equivalence between the Democratic Party and actual results in helping alleviate poverty. In fact, the opposite may be true. Democrats have had, for years, one-party control of California, a state with the highest poverty rate in the nation (20%).[7] They also have had, for decades, a monopoly on power in the following cities which hasn't affected their poverty rates: Baltimore (24% poverty rate), San Francisco (13.8%), Detroit (35%), Seattle (14.5%)...the correlation between progressive politics and results on poverty alleviation is at best unclear.

> Every other avenue is a divergence or distraction or otherwise ineffective

It seems to me that any effort to fight poverty through political means is extremely indirect. The $1 you spend on, for example, campaign contributions, is going to pay to win an election first, and only if the election is won (which has little to do with your donation) you might get your new representative to sponsor a bill that would redirect strained government funds into expanding the public safety net. But of course such a bill would go through multiple committees and subcommittees, negotiations with real estate developers, unions, CEOs, nonprofit boards, and every dollar allocated will be subject to a myriad of political considerations, special favors allocated, slush funds established, and more. It will take years for your $1 to make its way into the pocket of someone who needs it in whichever form your elected representatives find most appropriate.

Whereas if you give that same $1 to your local homeless shelter it buys toothpaste for a homeless person who needs it and gets it tonight.

Why would $1 to a political campaign be more effective helping the poor than $1 given to an actual organization that spends 100% of their time helping the poor rather than trying to win elections?

> It is, however, obviously, politics. How could it not be?

I hope I've shown that politics is probably the most inefficient method your time and money could be used to help the poor, and that helping the poor can be done effectively without touching politics.

[1]http://nccs.urban.org/data-statistics/quick-facts-about-nonp... [2]https://www.bls.gov/news.release/volun.nr0.htm [3]http://nccs.urban.org/data-statistics/charitable-giving-amer... [4]https://www.thelocal.fr/20160907/over-14-percent-of-the-fren... [5]https://poverty.ucdavis.edu/faq/what-current-poverty-rate-un... [6]https://en.wikipedia.org/wiki/Personal_Responsibility_and_Wo... [7]http://www.politifact.com/california/statements/2017/jan/20/...

> None of this giving goes to government organizations, although of course some nonprofits get federal or state funding (probably a small %). But the point is that millions of Americans find a way to help the underprivileged apolitically

Contrary to what you might expect from the name, a "nonprofit public charity" does not need to do anything to help the underprivileged. For instance, if the exempt purpose is "religious", and the organization does nothing but cater to the religious needs of its members and does nothing to help the "underprivileged", it is still a legitimate public charity.

>How are your options limited? The US has over 1 million nonprofit public charities plus 400,000 other nonprofit organizations...

Note your numbers claim effort, not results, a telling sign of failure to achieve them.

And when we compare our results with our purported over-the-top effort, we are faced with the dizzying proportions of our failure. Why are these measurements so astronomically unproportionate? The private charity system lacks evidence-based incentives. It is egregiously inefficient and in it's best cases relies on rich guilt and virtue signalling. This prioritizes advertising over problem solving, and even worse, it by-and-large rewards organizations who minimize problem solving. Our charities provide images, not solutions, and only a fool could wonder why. In the other cases, the charity organizations are tax dumps that either don't address a worthy cause or apply an ineffective solution (sometimes a solution that even worsens the problem) simply because success is not correlated with the intent. Many of them do nothing but invest in capital. They get away with it because investment and effort are the only measurements calculated. Results don't matter. Most free-market economies are quick to identify this as a problem. If it works, why hasn't it worked?

>The answer is clearly not very simple. Poverty is not only globally prevalent, it has never been eradicated by any historical or modern society, ever...

Your assertion that poverty cannot be eradicated is a straw man. I'm sure you'll understand my decision to ignore it.

To the question of how to fight poverty: When private solutions don't work, public options are simple to apply. And plenty of evidence provided by our own history and fellow western nations makes it pretty reliable. Less than perfect? Yes. Ugly with poor branding? Well yes, but that's not the point. The point is: it works.

>I assumed by this you meant support a political party committed to expanding the public safety net...

I wish it were that simple. But, your assumptions are premature; that is not what I meant. I am not a democrat and I don't recommend taking those measures you assume, precisely for the reasons you have already detailed. The American electoral process hasn't offered a candidate who dependably supports an honest expansion of safety nets in my lifetime. It came close with Bernie Sanders. He is the only hope I am aware of.

>It seems to me that any effort to fight poverty through political means is extremely indirect. The $1 you spend on, for example, campaign contributions, is going to pay to win an election first...

These are all good points which apply to most candidates, but it should be pointed out here that Bernie Sanders undermines them. It's very difficult to support candidates. We desperately need a modern electoral process which limits campaign spending (again, see other western democracies). Until then, you can probably count on Bernie Sander's campaign to appreciate and respectfully process your donations into political measures. His track record, consistency and refusal to accept donations from corporate/private interests offers thus-far reliable

>I hope I've shown that politics is probably the most inefficient method your time and money could be used to help the poor, and that helping the poor can be done effectively without touching politics...

Not in the least. Still open, but none of this was new to me. All pretty obvious.

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