The paradox of time and money
When doing software development time and money are always limited. When I'm doing code review I sometimes hear statements like 'Yes I know I've got to refactor this but we don't have the time'. So if this is true you would get the best possible project if you would have unlimited time and money, don't you?
A year about changes
When I started as a professional programmer there were many situation I wished I had more time left. I did a lot of extra hours and working on weekends was quite usual. Of course this was no fun and after changing my job things got better. I don't know if it was just the new company or my experience but I got much better in delivering my projects in time and extra hours got pretty rare. But even if I worked fewer hours the quality of my software got better. This seems paradox, but realizing I won't have any time to clean up things later, I started doing the thing right in the first time (or at least a tried).
More time, better software?
Today my situation is different. When I'm envoled in software projects there is sometimes a lot of time. People are uncertain about their decissions and have a lot of things in mind but loosing business focus. So development priorities are neither ordered by technical or business needs but to personal goodwill. So todays software is good in terms of technical depts but suffers business depts. It does what it does but nobody wants this. The situation seems strange but I've seen it more than once. People need a deadline. You need a goal to get things started and you need a limit on time and budget to prioritise things. A lot of people seems to start work just before a deadline (or at least a meeting) so if a work organisation lacks deadlines a lot of work is done but you'll reach no goals. Give your team the time to get things done, no more no less to achive the best results.