Data Matters, but So Do Algorithms

I just read this post about the importance of data over applications. It reminded me of a passage from Eric Raymond, in The Cathedral and the Bazaar, where he paraphrased Fred Brooks:

Show me your code and conceal your data structures, and I shall continue to be mystified. Show me your data structures, and I won’t usually need your code; it’ll be obvious.

I will grant that data is important, especially in how it’s organized, but I don’t agree that “data is the only thing with value.” What about the algorithms and protocols used to process that data? We may want to decouple the algorithms and the protocols from the data they work with, but surely they have value. Many of those algorithms and protocols have become critical parts of the computing infrastructure. Some data, especially in large quantities, would be useless without the proper algorithms to process them. Also, that post implies the idea that if something is temporary it doesn’t have value. A human life runs out all too quickly, but it has great value, and don’t forget that data is just as temporary as everything else. It’s just a matter of perspective.

About these ads