Monday, March 06, 2017

CS Divisions

Thanks to a recommendation from Marc Donner from old google days who now runs Uber, NYC, I am reading Sapiens by Yuval Harari. The author tries to explain the history of humans, succinctly, and succeeds by having an insightful view of anthropology, sociology, behavioral theory, and of course, science and religion too.  One of the interesting parts for me was the need humans felt to divide people into categories (think commoner/noble, castes, etc).  Alas, with division into categories, comes an imposed order among them and fights to invert the order. The author argues that this imagined order among humans keeps societies stable when it works, and unstable when it doesnt.

I have always been suspicious of divisions. In CS, folks divide areas of research. These are not islands.  In any area of research (say AI, social networks, Robotics, Brain, whatever), there are (a) theoretical foundations and optimizations, (b) new systems research into hardware and software needed to program them, compile into executables, execute them efficiently, (c) new data and UI systems to use, analyze, report, mine and troubleshoot, and so on. A great research will include conceptual breakthroughs, cacophony of math symbols no more than what is needed, potential for pretty plots, and a storyline for NY Times for societal impact. Most individuals' research doesnt hit on all these metrics, doesnt have to, we rely on the cumulation of research to hit all of the metrics. Any research area will be potentially less engaging without ALL of these elements, no order amongst them is needed. 


Post a Comment

<< Home