I’ve always been intrigued by the similarities between the Computer Science and Philosophy disciplines. Both are so abstract that they apply to everything in the world, but an objective analysis leads you to the opinion that they both have no tangible result whatsoever. That is, a computer scientist, or a philosopher never does any real work. By real work, I mean something that you can explain to a 5 year old:
“Johnny, what does your father do?”
“He’s an eye doctor. He treats people who cannot see properly”
“Debbie, what does your father do?”
“He’s a computer scientist.”
“He sits in a room all day staring at drawings, and sometimes in front of the computer typing things”
(Whole class is now making fun of Debbie because her dad is a loser)
Another very interesting thing is how very core computer science concepts have uncanny parallels in phliosophy and real life. Graph scoring and searching algorithms like BANKS and PageRank work on directed graphs where edges between nodes depict relationships between them; and it’s almost always better (in terms of speed and accuracy) to introduce “backward edges” — a relationship in the reverse direction of every relation in the graph.
Kind of like saying that there’s no such thing as a one-way relationship between two people.