“Software by it’s very nature, tends towards complexity… When a program is in it’s infancy, with few features and few lines of code, adding a new feature can usually be done quickly. But as the program evolves, although adding a new feature may still be quick and easy it may cause little side effects in other parts of a program.”