E45: The offloaded brain, part 5: I propose a software design style

E45: The offloaded brain, part 5: I propose a software design style

Author: Brian Marick December 31, 2023 Duration: 38:06

In this episode, I ask the question: what would a software design style inspired by ecological and embodied cognition be like? I sketch some tentative ideas. I plan to explore this further at nh.oddly-influenced.dev, a blog that will document an app I'm beginning to write.

In my implementation, I plan to use Erlang-style "processes" (actors) as the core building block. Many software design heuristics are (implicitly) intended to avoid turning the app into a Big Ball of Mud. Evolution is not "interested" in the future, but rather in how to add new behaviors while minimizing their metabolic cost. That's similar to, but not the same as, "Big O" efficiency, perhaps because the constant factors dominate.

The question I'd like to explore is: what would be a design style that accommodates both my need to have a feeling of intellectual control and looks toward biological plausibility to make design, refactoring, and structuring decisions?

Sources

Mentioned

Prior work
What I'm wanting to do is something like what the more extreme of the Extreme Programmers did. I'm thinking of Keith Braithwaite’s “test-driven design as if you meant it” (also, also, also) or Corey Haines’s “Global Day of Code Retreat” exercises (also). I mentioned those in early versions of this episode's script. They got cut, but I feel bad that I didn't acknowledge prior work.

Credits
The image is an Ophanim. These entities (note the eyes) were seen by the prophet Ezekiel. They are popularly considered to be angels or something like them, and they're why the phrase "wheels within wheels" is popular. I used the phrase when describing neural activation patterns that are nested within other patterns. The image was retrieved from Wikimedia Commons and was created by user RootOfAllLight, CC BY-SA 4.0.


Brian Marick hosts Oddly Influenced, a podcast that digs into the unusual and often overlooked connections between software development and the wider world. Each episode starts with a concept, theory, or practice that originated far from the realm of code-perhaps in sociology, theater, history, or urban planning-and traces its journey into the hands of software practitioners. The focus is on the concrete application: how these borrowed ideas were adapted, what problems they aimed to solve, and what actually happened when people tried them. You’ll hear about the successes, the surprising failures, and the messy, fascinating reality of translating an abstract principle into working practice. This isn’t about generic inspiration or vague parallels; it’s a detailed look at cross-disciplinary pollination, examining the mechanics of how influence actually works. The conversations are grounded and specific, avoiding hype to explore what we can genuinely learn from fields that don’t think in loops and logic. For anyone in technology or education curious about how innovation often comes from the edges, this podcast provides a unique and thoughtful perspective. It’s for listeners who enjoy deep dives into the history and sociology of their craft, who appreciate hearing stories that aren’t the usual case studies, and who are open to having their own thinking oddly influenced by the end of an episode.
Author: Language: English Episodes: 55

Oddly Influenced
Podcast Episodes
E52: Emotions as concepts [not-audio_url] [/not-audio_url]

Duration: 33:11
An elaboration on episode 49's description of the brain as a prediction engine, focusing on a theory of what emotions are, how they're learned, and how emotional experiences are constructed. Emotions like anger and fear…
E51: Constructed memories (a nugget) [not-audio_url] [/not-audio_url]

Duration: 5:39
Memories appear to be constructed by plugging together stored templates. Do concepts operate the same way?SourcesSuzi Travis, "False Memories are Exactly What You Need", 2024.Lisa Feldman Barrett, "The theory of construc…
E50: the preferred level of abstraction (a nugget) [not-audio_url] [/not-audio_url]

Duration: 16:00
We see a creature near us, and we describe it as a dog. Why that and not "mammal" or "animal"? And if that dog's a Springer Spaniel, and we know it's a Springer Spaniel, why do we nevertheless call it a "dog"? In an appa…
E49: Metaphors and the predictive brain [not-audio_url] [/not-audio_url]

Duration: 19:27
It's fairly pointless to analyze metaphors in isolation. They're used in a cumulative way as part of real or imagined conversations. That meshes with a newish way of understanding the brain: as largely a prediction engin…
E48: Multiple metaphors [not-audio_url] [/not-audio_url]

Duration: 27:29
When we name a class name `Invoice`, are we communicating or thinking metaphorically? I used to think we were; now I think we aren't. This episode explains one reason: ordinary conversation frequently uses multiple metap…
E47: Oops! The Winston W. Royce Story [not-audio_url] [/not-audio_url]

Duration: 26:45
In 1970, Winston W. Royce published a paper “Managing the Development of Large Software Systems.” Later authors cited it as the justification for what had come to be called the "waterfall process." Yet Royce had quite sp…
E46: How do metaphors work? [not-audio_url] [/not-audio_url]

Duration: 32:07
Conceptual metaphor is a theory in cognitive science that claims understanding and problem-solving often (but not always) happen via systems of metaphor. I present the case for it, and also expand on the theory in the li…
E44: The offloaded brain, part 4: an interview with David Chapman [not-audio_url] [/not-audio_url]

Duration: 43:55
In the '80s, David Chapman and Phil Agre were doing work within AI that was very compatible with the ecological and embodied cognition approach I've been describing. They produced a program, Pengi, that played a video ga…
E43: The offloaded brain, part 3: dynamical systems [not-audio_url] [/not-audio_url]

Duration: 25:42
Scientists studying ecological and embodied cognition try to use algorithms as little as they can. Instead, they favor dynamical systems, typically represented as a set of equations that share variables in a way that is…
E42: The offloaded brain, part 2: applications [not-audio_url] [/not-audio_url]

Duration: 34:10
Suppose you believed that the ecological/embodied cognitive scientists of last episode had a better grasp on cognition than does our habitual position that the brain is a computer, passively perceiving the environment, t…