I love programmers. Don't get me wrong. But after no less than 2 hours trying to renew a membership I wasn't loving ALL programmers. And here's why you shouldn't hire a programmer to do your website.
Painfully obvious, yes. But unless your website will be used by programmers and programmers only you need someone to focus on the user experience. What does that mean? Well, how will the mere mortals who actually use your website "experience" it? Will they need to know that it only works on certain browsers? (Hint: this is a trick question. Your site should be cross-browser compliant using the latest versions of multiple browsers.)
Will they make sure the form fields are easy to read and required field are easy to pick out at a glance?
Do the screens lead you through the process in a logical - again, to the mere mortal - way?
When All You Have Is A Hammer, Everything Looks Like A Nail
One of my favorite idioms, this one holds especially true. Programmers typically have a goal of creating a program in the most efficient way possible. And usually, the most efficient way to do something is a method you're familiar with and at which you are well-versed.
The only problem with that is that the quickest and easiest solution to the programming question isn't necessarily - and often isn't - the best solution from an end-user perspective.To create the best solution you often need to work backwards and decide what the user experience should look like then figure out how to program it.
Having said all this, we love programmers. Really. We do. They make a lot of really cool things happen. But when you're setting up your website or a photo contest or your email marketing you need to make sure that your visitors see the experience as being cool (namely, unremarkable) and not an experience in frustration.