Image Image Image ImageImage
Creative Services for
Roughly Drafted
Daniel Eran

Image Image

Unraveling The Copy/Paste Development Myth
According to proponents of this myth, complex software development is a something like making funny madlibs from refrigerator magnets. Pick out features, line them up appropriately, and voila: an operating system! They're wrong, here's why.

Page 1 | 2
Why the Myth was Woven
This myth is of the wishful thinking type, but rather than being just hopeful speculation, this myth conveys a false perception of how things really work. That makes it not just an irritating distraction from reality, but misinformation. It's more difficult to detail the motivation for this myth, because this myth is self weaving.

The Myth Weavers
Anytime you have a vacuum of information, apparent logic will spontaneously weave together threads of fantasy into myth. When there's a scarcity of information on a given development project, a simple block diagram or marketing driven powerpoint presentation of abstracted ideas can act as a catalyst for the immediate formation of apparent examples of copy/paste development. Start some conversations on the subject, and those apparent examples can weave themselves into a believable myth.

Of course, there are also many tech writers who weave this myth. With a quota for filling up that narrow space on web pages between all those ads, these guys frequently compose freeform, sensationalist headlines using refrigerator magnet buzzwords. They know nothing about how anything really works, and do no research to find out; everything they say is based upon anonymous "industry experts," or the blogs of some other tech writers who occupy themselves assembling their own buzzword madlibs which present wild conjecture as fact.

Since this myth weaves together the Mac OS X Microkernel Myth and the Mac OS X Needs a Linux Kernel Myth, it's time for its unraveling.

Unraveled with Extreme Prejudice
Ask anyone in construction if they'd recommend taking two, existing "fixer upper" houses and tacking them together to make one large house, or alternatively, tearing them both down to build a larger house from scratch instead. Unless they're billing you by the hour, they'll advise against the remodel idea. Why? Because putting things together is a lot of work, frequently more work than building from the ground up.

In general, integration in large, complex projects is far more work than just assembling the component building blocks. If things look really simple, it's probably because they haven't been looked at closely enough.

Kernel Copy/Paste?
Consider the widespread idea that NeXT computer took Mach, copy/pasted in some BSD, and ended up with a kernel for NeXTSTEP. This legendary factoid suggests that copy/paste kernel development is something like discovering the joy of Reese's Peanut Butter Cups in a "hey, your chocolate is in my peanut butter!" type of experience.

In reality, NeXT did nothing of the kind. Mach began as a modified BSD kernel, and had been in ongoing development prior to NeXT's involvement. No copy/paste here, just many years of sophisticated kernel engineering at CMU, NeXT, and eventually, Apple.

Continued: Mac OS X Copy/Paste?


More Journal Entries | More Tech Articles | Get Tech Support | My Resume | Links | Contact RoughlyDrafted

Articles Copyright © 2006 Daniel Eran. All rights reserved.
Suggestions and comments welcome. Contact RoughlyDrafted.

Read more about:
Click one of the links above to display related articles on this page.