A 'friend' of mine asked me to write a complete CRUD system with AJAX for him for free. What should I do? Technically, its bread and butter for me. However, I am wondering if I should get paid for it. I mean it's a commercial project.

On the other hand, I was thinking that I do not care if he pays me. Do what ever you want with my code. If it makes you more intelligent and helps you write better code, then I will sense a feeling of accomplishment...

So can anyone help me decide?

  • 18
    If your friend earns from your work, certainly you deserve a part of earning.
    – Gopi
    Commented Apr 11, 2011 at 6:30
  • 4
    send him a link to an ORM. Commented Apr 11, 2011 at 13:26
  • 2
    A friend would at least deal you in some equity in leiu of the fact they cannot pay you right now. Whether you'd ever see a return is a different question.
    – ozz
    Commented Apr 11, 2011 at 15:34
  • Primarily opinion based...
    – Andres F.
    Commented Oct 8, 2013 at 19:21
  • "If you're good at something, never do it for free." - The Joker
    – Bernard
    Commented Oct 8, 2013 at 19:24

9 Answers 9


I think it would be another way of learning and as that I would embrace the opportunity. Most of the time friends will will give you something back when you do them a favour like this. And if they don't it is still a learning experience.

What I would do is:

  • Ask him to put your name (or link to your blog or linkedIn page) in the credits with a nice descriptive title: Lead Programmer or something in the credits.
  • Be very clear about the support you are willing to give afterwords. Most of the times when you do friends a favour like this they will expect full support like if you are a company. In many/most cases you will not be able to provide this level of support, so make sure expectation about support are very clear from the beginning.

Hope this helps.

  • ya, i can do this. It would be my code running on his server. If he needs support, he would look for me. Thanks
    – mahen23
    Commented Apr 11, 2011 at 7:16
  • The trade-off here is that there's little to learn on a "bread and butter" project. Writing CRUD code isn't that challenging. You might have an opportunity to test some new framework, but that's about it.
    – MSalters
    Commented Apr 11, 2011 at 7:57
  • 9
    I second the be VERY CLEAR about support... this type of thing can quickly turn from a quick little exercise to a project from hell once you are expected to support it, when you start getting the "lets tweak it here, that can't take long" requests rolling in Commented Apr 11, 2011 at 15:29

Usually the answer for the question "Should I work for free?" is NO.

Here is an awesome flowchart that helps in cases like this. It's humorous but true.


hey there!

Who's ready to stop working for free? Hopefully you are! If you have any doubts, consult this handy chart below. Start in the middle and work your way to your answer!

  • 5
    Whomever made that flowchart, has obviously never seen a flowchart before. That thing is nearly incomprehensible. Commented Apr 11, 2011 at 13:29
  • 2
    I don't want to see any of that guy's code.
    – Michael K
    Commented Apr 11, 2011 at 14:00
  • @Michael That guy probably writes a mixture of OO and functional assembly. Commented Jul 20, 2011 at 20:06
  • dl.dropbox.com/u/3514540/workforfree.jpg <-- better Commented Jun 13, 2012 at 12:49

A friend of mine is a contractor in construction, but I would not tell him "Hey, this stuff is easy for you, why don't you renovate my bathroom this weekend?" This is even more true in a commercial situation. Charging for your projects builds mutual respect and an understanding of expectations. Time is money and when someone asks you for your time and skills they might as well be asking for money. Its fine to give money away, but you might think of it differently if they were to ask you directly for the 1000 dollars, or whatever you might normally charge in cash.

  • 1
    ah, but coding is different so some folks will tell you... work at night on open source, give back to the community... phooey!!
    – ozz
    Commented Apr 11, 2011 at 15:33
  • 1
    @james: There's a difference between working on F/OSS, and working on software for somebody else's commercial benefit. I like the idea of benefiting everybody more than benefiting my cousin's business. Commented Apr 11, 2011 at 20:55
  • @David - I'm well aware of that, if you or the OP want to do stuff for free (whether OSS or not) in your spare time good luck to you.
    – ozz
    Commented Apr 12, 2011 at 14:52

It depends on your relationship with the person. If you are good friends, then you are just doing that person a favor. I wouldn't charge a good friend to help him move, nor would I charge him for my code, even if he will make money on it. I would trust I would reap the benefits from the relationship.

But if it isn't a good friend, then you should charge him. Your time is money and if they want you to work commercially, then you deserve to be paid.


Will you be held responsible for errors in your code?

If yes, you need a contract which in turn implies money which is bad for friendships.

  • 1
    I don't think formalities will be bad for friendship as long as both parties know and understand that work is just work and nothing personal.
    – setzamora
    Commented Apr 11, 2011 at 7:36
  • Keeping the money part of your relationship formal is GOOD for friendships. Everyone knows what to expect, what the agreement is, nobody ends up feeling burned. Just approach it like two grown-ups and it's the best thing.
    – Dan Ray
    Commented Apr 11, 2011 at 12:38
  • 1
    @Dan Ray, general experience show that you should be very careful with mixing money and friendship, because disagreement can cost you one or both.
    – user1249
    Commented Apr 11, 2011 at 15:11
  • @Ravn - It depends on the situation that involves the money. Lending money is bad, performing a service is fine, a contract can be good even if there is no money involved.
    – Ramhound
    Commented Apr 11, 2011 at 15:40
  • The danger is that you run into a fuzzy part of the contract where you forgot to specify something clearly and then the two of you each interpret it differently, leading to an unpleasant argument and one or both of you feeling cheated.
    – jprete
    Commented Apr 11, 2011 at 18:32

Does the friend in quotes mean it is not really a good friend. If not ask money or a favor in return. If it is a really good friend you could consider it, however if he makes money from it you should too. Remember money can do some very strange things to people.

In the past I have written software for friends and sold licenses of that software to the their employers. Some other things I have written for friends (e.g a Device driver for a htpc) I have made open source so no money could be made from them.


I'd take one of two approaches.

I could write it, and ask for something in return (money or equity).

I could write it, and make it Open Source software. I dislike working for free to support a specific commercial enterprise.

In either case, it's best to get the requirements down, including a change process for the requirements and whatever support commitments you're willing to make, in writing. Deals like this have the potential to destroy a perfectly good friendship, and it's real easy for two people to remember verbal contracts differently. Have it down in black and white what you are willing to do, and do it.


If you think your obligations to your friend will end with 20 lines of CRUD code, you are probably fooling yourself. Unless you want to enter into a potentially disruptive business relationship with your friend, potentially losing or estranging him in the process, I would think again.

In general, it is a very bad idea to replace social norms with market norms. You can't go back. This also why f.e. you shouldn't lend money to friends.

You'd be better off referring him to someone else.


You should not. Your friend is trying to take advantage of you, and therefore he's not your friend, and therefore he's just some guy trying to get you to do something for free.

On the other hand, he's done you a favor: he has shown his true colors and you can unfriend him.

Not the answer you're looking for? Browse other questions tagged or ask your own question.