Again, it's worth remembering that even if everyone in the world understood exactly how valuable, difficult, and expensive programming can be, these conversations would still happen all the time. It's just how negotiation works: Programmer offers to work for X, customer pretends to be poor and offers Y where Y << X. And so on.<p>Admittedly, when you offer to work for X and your "friend" responds by coming right out and <i>saying</i> that they expected the work <i>for free</i>, so forget it... they're not being very polite or very smart. A better response would be "Gosh, I hadn't realized it was more than an hour or two of work, and my budget is only $75. Thanks for setting me straight -- I'll have to rethink this. Can you recommend any $10-an-hour grade school students?" And then you put on your Helpless Newb Face and hope that your programmer friend takes pity on you and offers to work at half wages, or offers you some free advice on how to set up a cheap Wordpress site, or something.<p>As sure as the sun shines, people -- especially your "friends" -- are never going to offer what you're actually worth. (For one thing, they have little way of knowing. Given that most software engineers can barely estimate how long their projects will take or how much the result is worth, how can you expect inexperienced folks to do it?) You just have to do what this guy did: Ask for what you think you're worth, and be gracious but firm if they say something stupid or insulting in return.