Programmers, like everyone else, need to use their time as efficiently as possible. So, when they have to create a new application, the best way to do it is to re-use code they've already written. Generic Programming has been designed to allow them to do this.