/2010/10/14/a-holistic-view-of-nearly-everything

Finding a connection between disparate fields fascinates me -- the similarities between work habits of hackers and painters, for example. I don't believe time spent studying a field indirectly related to one's field is wasted; although the benefits are often not immediately quantifiable, better understanding other aspects of the world cannot be discounted. Relating this to my university experience, I remain an advocate for hard science majors taking soft science courses.

Technical skills are a given to do well in any CS specialization, but the truly great thinkers call on knowledge from all parts of academia. John Holland took gene replication and turned it into a well-known CS algorithm. Regarding business decisions, understanding the incentives of your customer is often a sociological phenomenon. As Paul Graham says, you have to make something people want. I see that phrase as a reminder to engineer types that the technical solution is not really a solution unless it solves a real problem a real person has.

I would argue a holistic view of CS/business problems is necessary to truly be successful at solving them in an effective way. I highly recommend Thinking in Systems: A Primer by Donella Meadows, a wonderfully simple book on looking at problems from a systems view, which is really just another way of saying, "look at a problem in terms of its inputs and outputs."

There are few constants in life, if Thinking in Systems is to be taken seriously. Ray Kurzweil hints that we as humans have a fundamental difficulty in understanding non-linear concepts, so we necessarily simplify our ontologies of the huge dynamism of the world in order to find some sort of sensible path through all of it.