Let me begin by saying, "100th post!!!!!!!!" And no one is probably going to read this now that I've trolled my own blog.
A couple years ago I ran into a site called RentACoder, or more commonly seen on the site, RAC. RentACoder is a site where people can place bid requests and other people place bids for those bid requests and RentACoder holds escrowed funds until a software project is completed. Most requests have a cap put on them as to the limit of the bids.
I've got a few hundred projects I would love to see done but don't have the time nor resources to do them. So, I decided to run a few small, semi-scientific experiments on RentACoder. My first project was for the coder to use MFC and several pre-made third-party open-source/freeware components and piece them together into a cohesive shell that will form the basis of a new software product. I'm pretty good at MFC, but it would have taken me weeks to figure each little library out. I paid $70 for the shell and was quite happy with the overall results.
So I opted to try something significantly harder for the next project: A complete solution using custom-built UI components and several obscure technologies. Someone bid $200 and said they would be done in two days. I wasn't in any big hurry so I gave the project a three month deadline. A competent coder who could have pulled it off in two days would have earned the $200 and major kudos from me. I expected results in the first two weeks. Instead, this coder was clearly incompetent - having taken on five other projects besides my own and was incredibly irresponsive to status reports. Not only that, they did not complete the project by the deadline to even a functional level. The stuff they sent me via on-site uploads simply did not work. On top of that, I had to babysit the entire process to get the coder to do anything. When someone tells me they will have something to me in "two days" not just one time but multiple times, I expect that person to carry through on the promise.
I could probably build the aforementioned solution in two weeks time. So, in the time I wasted with RentACoder, I could have written it myself.
Needless to say, I have mixed feelings about RAC. I mean, they can't really control the quality of the coders on the site. The first coder was perfect for the job but the job was easy. The second job was significantly harder and more complex but even it could have been built using components from existing source code on the Internet and a little hacky magic. The coder clearly did not realize this.
The RentACoder staff needs to be more involved with projects and create an environment where they get notified of projects that appear to be failing and start an interaction process to keep things running smoothly...sooner. The people making the bid requests have one option available during the project: Arbitration. This usually means the project has gone south. There should be a project status rating system that allows people placing bid requests to rate status reports. If such a rating system were in place, RAC could have detected imminent project failure two months ago (based on other projects using identical timeframes and project difficulty levels).
So what exactly does all this mean? For simple projects where the technology is fairly well-known and it would take a coder using that tech. a couple days vs. you spending 3-4 weeks on it, RAC is a perfect solution. For complex projects using obscure, rarely-used, hard-to-develop technologies, RAC is a bad idea unless you are after a specific coder on RAC that clearly has the solution you are after (e.g. the project history has 5-6 directly related examples of solutions involving the technology).
I should probably mention that there are other sites out there that bring freelancers and those that want work done together. RentACoder, however, is still the top site because they have been around the longest and have a reputation for being fair in arbitration.