The solution for Google is to either adopt a more open stack in parallel to what they currently use, or to open source their internal technologies (as Facebook and Yahoo! are doing) in the hope that they will spread and gain adoption from more developers.In fact, the above statement can be applied to any enterprise IT shop. All big shops I worked for rely on more or less sophisticated custom component libraries and application frameworks. While there is nothing wrong with a custom approach, oftentimes such libraries and frameworks are built to work around bugs and functional limitations in existing open source projects. E.g. I've seen quite a few components that wrap log4j.
An alternative approach that appeals to me is to get involved in the respective open source community and contribute your modifications and extensions to the underlying project. There are several benefits of such as approach:
- The custom in-house code becomes focused on the business domain and specific infrastructural issues providing a competitive advantage.
- The commodity infrastructure becomes more robust as quality open source projects tend to evolve and improve faster than their branched or wrapped in-house counterparts.
- New developer ramp up time decreases as the amount of the custom code they need to learn decreases.
0 comments:
Post a Comment