When you develop a project you have to take into consideration a lot of things, but one that it is often forgotten is to build components you can later reuse in other projects, there are a lot of reasons for this to happen (short projects, not enough time, specific specifications, etc…).
Well instead of looking at this topic as a cost you should be looking at it as an investment, because the work that you can reuse is definitely going to improve the quality of your next projects, let me elaborate:
- The already developed components can be applied directly or with few development work.
- This will gain you project time to either improve your components or to focus on more troublesome areas.
- By improving your current components or building new ones you will have a broader base to reuse.
- and so on . . .
What is the cost of building reusable components? Well, you just have to look to the future and try to identify possible aplications of the component, and build them in order to be generic enough to be reusable and specific enough to answer your current project specifications.
Why did i remembered to post on this topic? because I am eating my own doogfood . . . in my current project I am reusing a lot of components that are the result of previous projects, and therefore testing my own theory.
So much more can be said on this subject, that i will probaly will post a part 2 on this topic.