Just to add another element to the hardware/software debate, all structural design and modelling of airframes, bridges, skyscrapers, etc, is now done in software, so there is no getting away from software, no matter which side of the arguement you are coming from. Quite clearly, there is a big difference between realtime software controlling safety critical systems and software used in CAD, etc, but the principles are the same, the outcome is dependent upon the integrity of the design and development process.