When I lost my job a few years back, I took a go at working for myself and running my business fulltime. I had plans to have a few different streams of income from different sources, including developing apps and websites for myself as well as providing services for others. These services that I offered included app development, web development, internet marketing and SEO, etc. Most of my income actually came from creating websites for clients but it was by far the most stressful aspect of running my own company. I didn’t create any applications for clients, but if I had I think it would have just as stressful, if not more so. I would say that most of my customers were polite, cordial, and easy going and were satisfied with the end result. Many people knew exactly what they wanted in the layout, design, and functionality and when I delivered what they asked for they were very happy with it. Others were not quite sure what they wanted and so I walked them through the development process and provided them with ideas and proofs to help them decide what the site should be. These clients were happy with the end result as well.
However there were a select few clients who were completely unsure about how the site should look and how it should be laid out. These people were what caused me the most amount of stress and agitation. At first they would give me a brief description of what they wanted the site to do and how they wanted it to look. Then I would do some work and show them an alpha version and they would absolutely hate it and change their mind about what they wanted in the first place and give me another description of what they wanted. This would go back and forth for a while until they were either happy enough with the site or they would back out of the deal completely. If they had not paid me yet and they backed out, I never saw a single penny for all the work I did. Obviously I was not too happy with this as I took time out of my schedule with no compensation. After this happened more than once I started requiring the client to pay up front before I did any work of any kind.
So while I still do client websites here and there, I am very picky on what clients I take on and give upfront and strict directions on how I will make the site. This helps reduce the amount of time spent on client sites, however I still don’t like to make sites for clients and have upped my rates to make it worthwhile for myself when I do.