At RedMonk we don’t think forking is a bad thing. On the contrary it enables innovation through fast iteration and cross fertlisation of technology and ideas. Forking allows for a biological metaphor for systems design. As Stephen explains:
Bacteria – viruses too – evolve more quickly than do humans. If you’re reading this, that should not be a surprise. The precise mechanisms may be less than clear, but the implications should be obvious. Part of their advantage, from an evolutionary standpoint, is scale. There are a lot more of them than us, and each act of bacterial reproduction represents an opportunity for change, for improvement. Just as important, however, is the direct interchange of genetic material.
i was reminded of this when I saw a ZDNet post this morning with the title: Google Has Forked Android. As if that it were a bad thing. Of course conventional wisdom states that developers don’t want to target multiple environments. Yeah – that was the wisdom that got us a decade of Java uber alles thinking, and a 20 years of Oracle-for-everything architectural decision making. The truth is Android so far has been been pretty decent on phones. I really like my HTC Desire. I am also lucky enough to have a Dell Streak loaner to play with; another solid device, that makes for a great armchair TV companion. But Android wasn’t designed for a bigger form factor, like Apple’s 10 inch iPad, at least in its early versions.
Of course the Apple development experience has been perfectly seamless across iPods, iPhones and iPads, with perfect backwards compatibility. Or not. The truth is…