I've developed a working prototype; interface and core functionality for a pretty complex system. (I need the prototype for capital-raising purposes and proof-of-concept.) I am NOT a professional programmer; it's not my gift.
It'll take significant resource to expand/refine my prototype into a full-fledged, scalable, consumer- and business-ready on-line application, for which I'll soon seek early-stage seed money. Initially, I thought I would outsource development, but have reconsidered. It's easy enough to submit RFPs to development shops (assuming I could identify the best candidates, which I'm not sure I easily could), but:
1) How do I figure out how roughly many man-hours would be required to re-code my prototype (after hiring in-house expertise)? Do I seek great programmers, for example, qualify them, then show them a modified prototype and ask "How would you program this, and how long would it take?" Should I still pursue the outsource route?
2) The application is database-intensive and performance-critical, with a rich client (Web) interface. I'm platform/language agnostic -- I just want the thing done in the "best-possible" way -- but doesn't this complicate the process of identifying best programmer candidates, or should I first settle on a platform/language stack and then find associated specialists?
3) Finally, my old-school rule-of-thumb for project management was always "best guess, then double it." If there's a decent spec. with clear parameters, do programmers actually deliver on-time/on-budget these days? Is there any reason there shouldn't be penalties if time/performance milestones aren't met?