Well - the more phases/deadlines You have - the less likely is not to reach them

Plan Your work with some milestones peaople

I did a lot of work in PHP - never have problem with this. Just plan what You are doing in verificable phases and left some time for the risk...