Stone Soup

November 06, 2006

Open Source (OSI) LogoOnce upon a time, somewhere in post-war Eastern Europe, there was a great famine in which people jealously hoarded whatever food they could find, hiding it even from their friends and neighbors. One day a wandering soldier came into a village and began asking questions as if he planned to stay for the night.

"There's not a bite to eat in the whole province," he was told. "Better keep moving on."

"Oh, I have everything I need," he said. "In fact, I was thinking of making some stone soup to share with all of you." He pulled an iron cauldron from his wagon, filled it with water, and built a fire under it. Then, with great ceremony, he drew an ordinary-looking stone from a velvet bag and dropped it into the water.

By now, hearing the rumor of food, most of the villagers had come to the square or watched from their windows. As the soldier sniffed the "broth" and licked his lips in anticipation, hunger began to overcome their skepticism.

"Ahh," the soldier said to himself rather loudly, "I do like a tasty stone soup. Of course, stone soup with cabbage -- that's hard to beat."

Soon a villager approached hesitantly, holding a cabbage he'd retrieved from its hiding place, and added it to the pot. "Capital!" cried the soldier. "You know, I once had stone soup with cabbage and a bit of salt beef as well, and it was fit for a king."

The village butcher managed to find some salt beef . . . and so it went, through potatoes, onions, carrots, mushrooms, and so on, until there was indeed a delicious meal for all. The villagers offered the soldier a great deal of money for the magic stone, but he refused to sell and traveled on the next day. ...

Forrest M. Hoffman, William W. Hargrove, and Andrew J. Schultz The Stone SouperComputer Site

Recently eMolecules donated a substantial amount of new code to the Open Babel project. This code, which could help developers of molecular databases write faster query engines, is now free for anyone to use for any purpose. Are eMolecules worried about having parted with something it took them time and money to develop and which could eventually help a competitor? I doubt it. Maybe they're no longer using this code and just decided to give something back to the community. But maybe they're acting out of enlightened self-interest. Scientists naturally grok the Stone Soup story. And so do people who have used Open Source software.

Jealously hoarding intellectual property in a competitive environment seems, on the surface, as rational as hoarding cabbage during a famine. Maybe the hoarding instinct comes from our understanding of the physical world. After all, there's only so much stuff to go around. If I give my cabbage to my neighbor, then I go hungry. It's a sum-zero game. That is, unless there's a smart soldier with a rock in a velvet bag visiting for the night.

Intellectual property disrupts our commonsense notions about the sum-zero game. When I give an idea to a neighbor we both can use it. But he can also use the idea in ways I would never have imagined, or make improvements to it that I either lack the time or skill to make. Rather than costing me, my donation pays me dividends. For this to work, though, my neighbor has to share the same spirit of openness that I do.

The villagers in the story didn't put every last bit of food they had into the pot, and eMolecules didn't donate their entire software infrastructure to Open Babel. There is clearly a place for maintaining a competitive advantage when running a business. What eMolecules did contribute was a small, but important ingredient to the soup they smelled cooking.

You know, I once used a cheminformatics toolkit with a 2-D layout engine, and it was fit for a king...