• You're not necessarily duplicating lots of code. You might dup some, but you're also separating out and abstracting the functions to do a specific thing. That's what's done in many methods in OOP programming. You separate out those different items that perform different functions.

    Don't forget, you copy this code and alter it a couple times. It's very little of your time. Trying to munge things together and having the end-user suffer later will happen over, and over again.