My brain hurts!: Offloading coding working memory with a diagramming tool

By Seth Viebrock from
Lightning talk
Target audience: Lightning
Tags: abstraction coding diagramming problemsolving psychology visualization

You can find more information on the speaker's site:

Functional programming, higher-order procedures, data abstraction, OO programming...all are methods of abstraction that make Perl such a nice language to program in. One reason why abstraction is useful is that it allows us to write code without filling our "working memory" with the details that have been abstracted away. Working memory is a term for the mental queue of details that we have attentive access to, a queue that is persistent for longer than a few seconds but not held in long-term memory (unless it is consolidated). Even with all the great abstraction in Perl, our working memory can still become overwhelmed. Have you ever written a complex recursive subroutine in a foreach loop within a foreach loop and felt your mind melt as you try to track the implications of what you just wrote? Maybe it wasn't the best way to write the code but it was how you were able to solve the problem at the time. The working memory required for complex code can be offloaded, and often even further abstracted, onto diagrams that are visually (and even notationally) representative of the code one writes. The program I use to demonstrate this is called FlyingLogic.

Perl Sites : perl | books | dev | history | jobs | learn | lists | use   
Yet Another Perl Conference North America