Data Flow Is Fluid Flow

paradigm Fluid DynamicsData Processing

Categories: software-engineeringsystems-thinking

What It Brings

The metaphor that became infrastructure. When Doug McIlroy proposed Unix pipes in 1964, he imported the entire compositional logic of plumbing into software design. Data “flows” through “pipes,” gets “filtered,” arrives at “sinks.” Because the metaphor was so structurally apt, engineers built systems that actually work this way.

Key structural parallels:

The metaphor’s deepest gift is composability as a default assumption. Fluids don’t care about the shape of the pipe they just left. This insight (that processing stages should be independent) is the foundation of Unix philosophy, streaming architectures, and functional data pipelines.

Where It Breaks

Expressions

Origin Story

Doug McIlroy’s 1964 memo at Bell Labs proposed connecting programs “like garden hoses — screw in another segment when it becomes necessary to massage data in another way.” Ken Thompson implemented pipes in Unix in 1973, reportedly in one night. The metaphor was so natural that it became the shell operator |, one of the most productive keystrokes in computing history.

The lineage runs through ETL pipelines, Java’s InputStream/ OutputStream, Node.js streams, Reactive Extensions, Apache Kafka, and every system that treats data processing as flow through connected stages. McIlroy’s garden hose became civilization-scale plumbing.

References

Related Mappings