We have been strung along by an unprofessional software developer for almost a year past the expected completion date. Progress is slow, promised dates are never kept, communication is all but impossible, and the software is riddled with bugs and design flaws. Due to the nature of our arrangement, we have already payed for most of the software. Additionally, our contract is unfortunately poorly written (vague on expectations and due dates) and does not make it easy for us to take legal action. At this point, although we do not want to, we have no choice but to find a new software developer and move on. Here are a few things we are trying to figure out:
How can we ensure that we recover all the relevant code and assets used so far in the development process from the unprofessional software developer? Or is it even worth it to try?
What action (if any) should we take against the unprofessional software developer?
Should we hire a new developer to take over the project or start from scratch? Either way, where should we look for one?
How should we set up our new contract to avoid being taken advantage of again?
EDIT: After doing some research, the rate we were paying was not the issue. We were actually paying above market rates.