Saturday 17 November 2007

Hardware and Software; the chicken and the egg

In the early days hardware was always developed first followed by adaptations in the software, do you believe this is still the case today? Use examples to support your conclusion.

I think that adaptations in software have always been reactive to what is available from the hardware industry. Software has either been unable to reach its potential because of the limitations of hardware, or has been overwhelmed by developments. In the first days of computers being available in the home and workplace the available processing power was so small that it prevented software from achieving its goals. A study in Ireland in 1969 showed "that main factors holding back developments among in-house commercial users were the lack of computing capacity, the unsuitability of existing hardware" (Drew & Foster, 1994). The study showed that software packages such as payroll and economic modelling were in demand but the computer hardware failed to provide the resources to realise them.

The field of quantum computing is another example of where the hardware had to come before adaptations in the software. In 1994 Peter Shor described the first quantum computer algorithm but it wasn't until 2001 that IBM demonstrated the algorithm running on a quantum computer. The algorithm couldn't be tested and modified until the necessary hardware was available.The video games industry has historically always worked on a 'hardware first, software second' basis. The revolutionary Nintendo Wii is an example of this. It was around May 2004 that Nintendo first published news of its new hardware project and not until the end of 2005 that third party software developers began to announce what titles they had planned for the new system (NintendoRevolution, 2007). And now the rapid increase of available computing power - from single to dual to quad core processors - challenges the software industry to change to come to terms with these increases. "Some have suggested that the challenges of parallelism bestowed onto the software industry will have programmers looking into the abyss" (Tulloch, 2007). This is an example of where the roadmap for the development of hardware looks very clear - to keep increasing power - but the roadmap for software to harness the power does not.

I think that the development of hardware follows a very scientific and research based path whereas the development of software is much more down to the ideas of people and their ability to identify where a type of software can make a profit or improve peoples lives. The application of advances such as bioinformatics or neural linguistic programming may have great potential but they will always be reliant on the amount of processing power that the hardware industry makes available.

References:

Drew, E. and Foster, F. G. (1994) "Information Technology in Selected Countries" [Online] The United Nations University
Available from http://www.unu.edu/unupress/unupbooks/uu19ie/uu19ie00.htm#Contents (Accessed 17th November 2007)

NintendoRevolution (2007) Nintendo Wii Timeline [Online] NintendoRevolution.ca
Available from http://www.nintendorevolution.ca/07312006/10/nintendo_wii_timeline (Accessed 17th November 2007)

Tulloch, P (2007) "Discussing the many core future" [Online] Tabor Communications and Events, San Diego, USA
Available from http://www.hpcwire.com/hpc/1332461.html (Accessed 17th November 2007)

No comments: