I can't help but think part of the technology problem is also caused by budget constraints. Less budget means less actual testing and experimentation and more theoretical planning, work and design. I imagine more real world experience with tests and experiments for those involved would help these problems get solved sooner, possibly before they even come about.