When building reusable components, you want to allow rapid component discovery, assembly, and testability. Without these characteristics, it will become difficult for developers to use the reusable components in a productive manner. Below are five things to do to accelerate component adoption:
- Provide examples on how to wire the reusable component with widely used proprietary or external frameworks
- Make it easy to use sensible defaults with frequently used features – if almost every application needs a particular feature, why not make it the default option?
- Open up the source code and invite feedback and improvements – chances are high that your development community has tons of ideas to make use of reusable component in new and innovative ways
- Engage early in the development lifecycle – don’t want till the very end to evangelize / educate teams about the component – actively and continuously engage with the developers to look for integration opportunities
- Tie code review feedback to component adoption – spotting code that has traits such as duplication, inefficiency, unmaintainable? Treat every defect as an opportunity to remove technical debt and increase consistency
These are by no means exhaustive and key is in performing them in a disciplined manner project after project.