The only way to take the position of power is to not need (much) money, which leads to the ironic situation where, by not needing work, you end up getting paid more for it. Call it the Paradox of Need, you can see it in many different socio-economic situations.
The fact that living a low cash-burn lifestyle also improves you morally, is environmentally positive and gives you personal freedom are side benefits to this approach.
A good freelancer will always have power in a negotiation. There are a lot of average freelancers.
And the freelancer has what the client needs: the ability to make a web site.
A transaction happens when both parties believe they're better off with the result: the freelancer wants the money more than the time, and the client wants the web site more than the money.
OTOH, the client is talking to the developer because the developer has something the client needs: skills to provide something of value. It helps to (politely) remind clients that they are free to spend more time looking for a less-expensive developer while in the meantime nothing gets done and the client possibly loses money, or loses an opportunity to make money, and may then still end up with a less-skilled developer who will not deliver adequate results.
The only way to take the position of power is to not need (much) money, which leads to the ironic situation where, by not needing work, you end up getting paid more for it. Call it the Paradox of Need, you can see it in many different socio-economic situations.
I and many friends have found that best time to find a girlfriend is when you have girlfriend. Some goes for finding a job; it's better to currently have one while looking. Partly this signals capability (i.e. There must be a reason you do not have a job/girlfriend|boyfriend|whatever, even if I can't see it), partly it allows you to act with some (possibly attractive) aloofness.
So if you can act like you don't need the job/money/whatever then you can gain an upper hand.
I'm not a big fan of fronting in order to start a relationship, and if I got the feeling that a possible client was going to try to weasel me on cost because they think having money makes them the boss then I'd seriously consider walking away. Of course, if I was in fact in serious need of money then the game changes, but past experiences tells me that clients who are lording money over contractors are a big risk of refusing to pay.
Yes, but freelance developers are a dime a dozen. Therefore clients will always have the upper hand in business transactions.
Once you finally accept that clients are also a dime a dozen too, it'll become a lot easier to only accept the good clients, and only accept good pay.
The best predictor of how "difficult" a client will be in this dimension is the degree to which the person you deal with is paying with what they perceive as "their own money", literally or figuratively. A client selection strategy based on this observation dovetails nicely with the "charge more, much more!" approaches frequently discussed on these pages.
It took about a year to build up a good hourly rate reliably... this was done mostly just by being fast, available, and good and always keeping an eye on the next project.
At this point, I know several people who are able to make money off me, and that has always been my goal as a freelancer, more than anything. The agencies I freelance with all recognize that I'm as reliable as an employee but far cheaper as far as total cost, so they have a better margin on work they do with me.
And even though I'm charging quite a bit, since they are charging a markup on my time... well, it's just a lot nicer for everyone. If I raise my rates, they make more money (within reason, of course).
Sometimes I employ "power negotiating" skills and have some fun just to stay sharp.
Here are some of those techniques: http://www.negotiatingguide.com/negotiation/powerarticle.htm