Last-minute integration is dangerous, although large/multi-team projects unfortunately fall into this trap all too often when crucial deadlines are looming.
Fundamental software design is almost completely missing from programming. Can we learn how to design? I think so, but not yet from the software community.
Productivity has a foundation in planning. David Seah's Compact Calendar is a great tool for planning and visualizing projects that span multiple months.