E45: The offloaded brain, part 5: I propose a software design style
Download MP3In 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
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
- Andy Clark, Being There: Putting Brain, Body, and World Together Again, 1997
- Ray Naylor, The Mountain in the Sea, 2022
- Erlang processes (explained using Elixir syntax)
Mentioned
- Brian Foote and Joseph Yoder, "Big Ball of Mud", 1999
- Tetris
- Illinois
- New Hampshire
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.
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.