Moduler fra scratch eller selvbygde komponenter?

Fra min erfaring med php build, har jeg kommet til problemet med å finne middelveien mellom når man kan benytte opensource moduler og når man bør starte fra scratch.
Noen som har laget en generell regel for dette?