Generalization, Patterns, and Abstraction

εν αρχη ην ο λογος – John 1:1

Our world behaves in consistent, predictable ways. If it were not so, biology, chemistry, physics, mathematics, philosophy, economics, engineering, medicine, and countless other disciplines would simply not work. Every discipline studies a range of specific phenomena and aims to distill the detailed observations into general principles or patterns of behavior. It is this ability to generalize that allows us really to know anything at all.

In software engineering, certain problems come up repeatedly. How to sort a collection of numbers, how to manage allocation of system memory, and how to maintain good application performance as the number of users increases are just a few examples. Some very smart people have been working on these problems for a long time, and their documented best practices for solving these problems are called Design Patterns (or sometimes just Patterns). Other disciplines have similar patterns—in mathematics, for example, someone might work out an elegant method for using matrix arithmetic to solve systems of differential equations. Similarly in medicine, physicians follow best practices for diagnosis and treatment.

We’ve seen how each discipline develops patterns to understand and solve problems within its own domain—and many of these, like General Relativity, are truly powerful in their own right. But what has been fascinating me lately is abstraction—taking an already powerful idea and stripping away the domain-specific parts, until you’ve liberated the core idea, the pattern-behind-the-pattern. Then you begin to see how that core pattern applies across wildly divergent disciplines. In the beginning was the Logos—the organizing principle on which everything else rests.

I’ll go into more detail in future posts, but just take redundancy as one quick example: we find redundancy at work correcting errors in computer hard drives and on networks, improving readability in the English language, correcting mutations in DNA, functionally replacing damaged neurons, stabilizing financial markets, and in many other places.

By Jeff Garretson

Husband, father. Data Engineer. Explorer of Powerful Ideas. Faith and Reason integrated.

1 comment

Comments are closed.