Crashing the project means bringing in additional resources to work on tasks and complete them sooner. Bringing in additional resources to work on your project will not have the desired effect if they do not have the right skills and ability to learn what needs to be done to work on the tasks.
Crashing often works best in construction where there are specific trades and tasks that require those trades to complete. In knowledge work such as programming, unless you have detailed designs and have broken the work down into discrete tasks, you may spend more time having a programmer come up to speed on what has been done already. You may also get a programmer that has a lesser skill level than the current staff which will take more time.
If you have laid out the project work carefully and get the right skill levels, crashing should shorten the project time all the time. Projects that "shoot from the hip" or "start work now and ask questions later" will not always see the benefit.