Beyond Programming provides a unique examination of the software development process. It asserts that software development, a discipline that is less than 50 years old, is still guided by methods conceived in the framework of an older technology. To make significant progress in software development, we must re-examine our fundamental principles and construct a computer science for the technology of the twenty-first century. Blum goes on to explore the history of software development through looking at the scientific foundations of computer technology, the perspectives of the designers themselves and the methods used. The concepts reviewed in Beyond Programming are key to understanding the research and development challenges that will confront computer technology in the next century.