The price of free time: programmer’s guide to helping a Non-profit

Congratulations! You have decided to help out a Non-Profit. Full of energy, and good intentions, you have embarked on a journey to use your professional skills to help a cause.

It’s a win-win: Surely, with a better website / CRM / tech, they will be able to help a few more people. You, on the other hand, will meet interesting folk, do something purposeful (as opposed to optimizing button colors at your day job), and learn a few things.

Here is what you need to know to not go insane:

The benefits of helping a Non-profit

You probably have personal reasons to help a Non-profit. Working on hard problems with friends is one of the most fulfilling things you can do with your life. If you are not working on a world-changing startup and you need a respite from the drudgery of corporate existence, a Non-Profit may be your best next bet – the purpose and mission are plentiful.

Non-profits are also a great place to meet interesting, like-minded people. Working side-by-side you can make real friends and create deeper connections, than you would build by exchanging the latest plots of TV shows over coffee at work.

But there also are powerful benefits directly translating to your career.

My entire programming journey started from helping a Non-profit – a scout team I was a part of. I made my first website in 1998, graduated to building one for dad’s business, and later launched a WordPress web agency. Now I work at WordPress.com, periodically reporting to the creator of WordPress himself. During that journey, I helped my high school, a local TEDx chapter, and a non-profit supporting remote work.

Working on projects is the best way to learn – you get to experiment with real-world problems and you get to try out different approaches and fail; building that tacit knowledge that makes one an expert.

Since you are not paid for your contributions, there is a shared understanding of what can be expected of you in a Non-Profit. You have a mandate to play a little, try out things your way, and goof off. To further boost learning, it feels more like play than work, encoding the knowledge much more effectively.

The traps

As with everything in life, the downsides are directly correlated to the upsides. Yes, in a Non-Profit, you can be a bit unpredictable and inexperienced. It does not feel like work and you get a breather from a corporate feel of a professional workplace.

But guess what – other people get to do that too. If you have just reserved a weekend to finish that signup page, and the people preparing the copy (texts) decided to be unprofessional – it suddenly becomes a problem.

The Hero’s (that’s you) Journey

Let’s assume you volunteered to create a website for your favorite Non-profit. Don’t be surprised, if the whole process goes like this:

  1. You start full of energy and ideas.
  2. The non-profit is eager to launch a new website because they have project X coming up.
    Project X is the most important thing, and the website (meaning you) is a blocker.
  3. You jump straight into work! You cannot be a blocker, right? You ramp up and are ready to implement the most important piece.
  4. The texts and promotional materials are not ready, despite previous promises.
  5. You try to work around these requirements – project X is most important, right?
  6. You get a call. It seems that the “About the Team” page is most important now.
  7. Let’s do a photoshoot for the Team!
  8. You still don’t have materials for project X, but you got 10 pages of UI corrections, including a bigger logo, different button colors, and some creative ideas about the slider.
  9. You start implementing those changes, still have no materials about project X.
  10. Wait, there are changes to the changes now. Can you revert to the old button color?
  11. Sometime, after a few weeks, we finally got the Project X page to work.
    The placeholder photos you chose are still there.
    “About the Team” page that got 3 meetings, photoshoot, and 12 hours of your time has gotten a total of 100 visitors this month.

Things to watch out in a Non-profit

The price of free time

Professional environments have learned a long time ago, that time is money. If everybody is salaried, the easiest way to turn a profit is to stop wasting people’s time. The correlation is clear and obvious.

I do realize that corporate environments waste mindblowing eons of their employees’ time. This is due to the scale. Big organisms being less nimble is a law of physics called inertia.

Non-profits, however, have a peculiar relationship with money. They are called Non-Profits. Duh! They get funded through donations, grants, and sometimes sales – but they are incentivized not to run a tight operation. Volunteers’ time is treated as free, so wastefulness is not controlled. It’s up to you to say no, which is hard because non-profits attract precisely the people least likely to defend their time.

It’s everybody else’s side-gig, too

As I mentioned – you can learn, and experiment with new techniques and approaches. But other people do too. If your work depends on graphic design, don’t be surprised when the designer comes up with something out-of-the-box, which naturally will be harder for you to implement, than the run-of-the-mill website.

Other people, like you, will cut corners. The designer has a family to feed, probably a day job and the thing called life. She can’t check every resolution, think about dimensions of headlines when you cram 100 characters in a title and give the proper attention to everything.

Last, but not least – without salary, recognition becomes the currency. Don’t be surprised, that “about the team” is treated as the most important page on the entire website (even if the visitors don’t care) – this is the equity paid to volunteers. Being paid with recognition also drives some folk to seek more of that compensation – they will contribute to discussions, where they have not much expertise nor understanding. These are perfect bikeshedding conditions. Beware.

Sign up to get Deliberate Internet straight to your inbox

I write about the psychological and technical aspects of the Internet, focusing on remote work, online economy, and cognitive load. Every monday.

Please wait, we are contacting the carrier pigeons...

Thank you for sign up! Now please head on to your inbox to confirm your email address.

Non-profits are passion-driven

Most non-profits have a mission to fix a particular problem in the world. Hunger, poor education, lack of equality, climate change – these are all areas society is failing at and non-profits are stepping in to help.

Many people are driven to work on these problems because they feel strongly about putting up with the collective screwups of society. Non-profits tend to attract people who approach most of the problems with passion and purpose, with no patience for tedious reasoning.

This leads to: 

Passion-driven-project-management

  • Urgency is the sole method of prioritization. Things are made urgent to ensure their completion, not because they actually are time-sensitive.
  • Since urgency=priority, the priorities are fluid over time.
  • Yesterday’s priority is forgotten today because somebody who feels more strongly comes in with more passion.
  • Flashy things are more important than fulfilling the initial purpose. If you are working on a website, prepare for multiple CTAs.

Non-profit survival techniques

These techniques helped me stay sane while working within a few organizations.

  1. Find a senior member of the organization to “report to”. Ideally somebody with corporate experience, and some tenure inside the Non-Profit. You don’t want to report to a committee.
  2. Never agree to do anything ASAP. Chances are, that before you get to it – the original request will change or be forgotten. Save yourself the revert.
    Bonus points for batching change requests into sprints.
  3. They will promise you texts, materials, and whatever else you’ll need. You WILL NOT get them on time. Plan accordingly.
  4. Record yourself changing stuff in the interface – this will be a good v1 for documentation so that everyone else can implement tiny changes themselves
  5. If you are creating a website – for goodness sake, use WordPress. It will save you from reinventing the wheel.
    1. With WP, you have ready tutorials to send people to, so you don’t have to fix every typo yourself. Chances are, that other folks have WP experience too.
    2. The next person dealing with the system will know what to do with it.
  6. Use a ready template, don’t work with an empty canvas.
    Yes, it will be less original than a custom-made design, but you will be able to get off the ground and focus on what’s important – content and functionality. You have no idea how many tiny details come together to make a template work.
    Implementing custom design without an hourly rate will lead to an endless back-and-forth on every detail. It costs them nothing to throw in another change.
    The constraints of an existing template work in your favor.
  7. Every statement you hear will be over-hyped – it’s a function of passion-driven project management. You have to do the mental math of halving the emotional charge of all statements.
  8. Remember to have fun. Despite unreasonable requests, the people you are working with are probably quite awesome. Don’t forget that, and schedule some time to meet them as people – not vendors of website updates.

Working in a Non-Profit is a process of realizing that the corporate environment has its advantages and lessons to teach you as well.

Coming to work on Monday to a well-oiled machine, where every cog (including you) is humming nicely, where the work flows seamlessly through the paths of well-established processes, where everything has its place is a refreshing experience. Of course, sometime around Wednesday you are sick of it all, yearning for the freedom and creativity you get to enjoy in your organization.

I want to be a programmer!

Ordinary World

Chuck was few years into his career. He was sitting at a desk for most of the day, doing menial and repeatable tasks, filling out Excel spreadsheets and agonizing over “ASAP” PowerPoint presentations that nobody really paid attention to during meetings that were absolutely unnecessary.

But the absolute majority of his day was consumed by Facebook. Be it boredom or burnout, he compulsively checked his stream. And to add salt to the injury, pretty often he would stumble into a story how those fresh-out-of-college programmer-people got an obscene salary, office restaurant, laundry, assistant or something as ridiculous as an office with michelin star-train chefs for YOUR DOG. No, seriously.

cmkkvd7vyaa0xxb

Call to adventure

IMG_0300

Chuck said to himself: I wanna be a programmer! I have plenty of friends in the industry and I will ask them what to do.

Continue reading “I want to be a programmer!”