In the building trades, it is pretty easy to ask around and get bids for work needed. I'm assuming this is also how the programming world works. Are there standardized costs for programming in different languages or is it all done hourly? Any advice or suggestions?
As people are saying, you get what you pay for, but you can also end up over-paying if you aren't careful, resulting in a doomed project. There's no set rate - you can get quality at any price if you know where to look, but it may cost you more than the savings to find the low-priced quality programmers.
Ultimately, even with project-based pricing, you will still end up paying hourly, since it is nearly impossible to know at the onset of the project how much time it will take. (I've written about this several times on my blog.) Your best bet is to get a few referrals for a few different development firms, and compare their quotes to each other.
As well, be careful when looking at quotes. Always make sure you know what the company's hourly rate is, even if you're paying by the project. Also, be sure that you define the scope of the project as clearly as possible - the better defined the scope, the more accurate the quote, and the lower the risk of hidden costs. If you aren't technical enough to understand the details, try to find someone who is to help you with looking at quotes and contracts to help you evaluate the risk.
As an aside, you should generally look for a referral for ANY development company you use, since there is such a large divide between quality and garbage (I'm in the industry - I've seen both extremes in action and it can be hard to tell from the initial quotes and discussions). Get a referral from one or two people who have had successful projects, and use that as a starting point for finding prospective companies.
It is all done hourly at least under the hoods, and for non-trivial projects any other calculation does not work because you do not know what you want first place - not in a good enough degree to justify proper calculation. Unlike houses custeroms do not get proper blueprints before development starts.
My advice is to first decide where from you want people. note - India etc. is cheap, but often crap due to first a diffe5rent cultural undertanding, but also the time difference and distance in general. Culture is a major part, and it can make or break something. Example: many asian people will avoid telling you they can not do something - they do not like loosing their face, but thn you pay for crap work.
If you stay local, then - basically - the hourly rate you get quoted is what is fair value. Ask around what is normal. Note that it varies widely depending on skill and experience. Even if you agree on flat pricing, it will be based on an hourly calculation, so at the end the hourly price is the core number for you.
In web software you really get what you pay for. If you do not know what the proper hourly rate is then you would be in a real bind going for a low-cost option.
Your best bet is to go with a firm who will scope out the project with you and you may be able to get a 'fixed-bid'
Remember that hourly price is irrelevant when comparing two people with different skill sets. Productivity and quality are much more important.
Most people have to learn the hard way (I have x 2) but you really "get what you pay for" in software development!
My assumption here is you've never hired a developer nor do you have someone you can trust. I did this when hiring a painter. After painting my hallway (high ceilings = I don't have scaffolding), I was impressed with the job so much, I had him paint the entire house and discovered he's also and excellent carpenter.
Start out with a small piece of the over-all project. Some shops may not like this because they want projects of a certain size, but you can let them know that there will be more in the future if you are satisfied.
Compare several developers and pick one. After they build the first piece, start looking for ways to have other developers review the code. You may be able to post some of it online or hire another coder to look at it. What you want to find out is the quality of the code your developer created. If everyone comes back and indicates the code is terrible and they could never work with it, you may want to look elsewhere. Otherwise, finish the project.
When you scope the project, don't forget to include: documentation, testing, and debugging. You don't want them to come back and say, "Well for the amount of time we had, you can't expect us to blah, blah, blah.
It's pretty well all hourly (or quoted in response to an RFP), since with programming you never do the same job twice.
Rates vary by city, programming language, application area, industry, ...
(It's a case of supply and demand, coupled with how well the programmer has to understand your industry and existing software)
This table sent to me by an Indian company looking for outsource contracts might give you some idea of the international range of hourly rates.
No connection to this company. They just sent me an unsolicited commercial email with the rate table in....