Unix Philosophy

I came across an interesting rule by Rob Pike while reading the first chapter of The Art of Unix Programming.  “Rule 5. Data dominates. If you’ve chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming”.  While there can be numerous ways to solve a certain problem, I always felt solutions that use data structures that are well fit to the problem always have more simpler solutions and are easier to expand in functionality.  It felt good to have something I thought was intuitive affirmed but the text went even further in the Rule of Representation by stating “where you see a choice between complexity in data structures and complexity in code, choose the former”.  There was no intuitive affirmation or rejection of this statement on my part.