top | item 17160084

Story-Oriented Programming

23 points| theqabalist | 7 years ago |brandonkeown.com

6 comments

order

dfee|7 years ago

> Today Routin discerned that Polys is playing a language game with himself, and, growing bored of the language in which Polys typically thinks, wanted to hear something in a different language for the joy of it. However, Routin doesn’t know anything about language, but he knows someone who does. He sends Reqla and Resnak to the one and only gremlin translation company.

And -

> Avoiding humility or feeling silly or stroking a big ego are not valid (moral) reasons to preclude something that may otherwise lead to progress in an area that is difficult. If you are a very intelligent person, and you find that you have a hard time letting go of the need to midas-touch everything you interact with, you may be contributing to the problem of difficult to maintain and difficult to reason about software.

If the argument is “story design your systems”, and this is what we get, it’s just too much for me.

theqabalist|7 years ago

The argument is not to design systems as stories, but to leverage the psychosocial technology of story to inform both design decisions and discussion such that you do not need to be a mathematician in order to contribute. Your system is not going to read like the story. The story is allegorical. But designing the system like the story allows you to outsource design decisions to people who can reason about the rhetorical questions at the end rather than having to reason in a domain that is extremely exclusive, like higher order mathematics.

speedplane|7 years ago

From my brief reading of this, the idea is to link programming concepts to more understandable concepts, primarily using aesthetic and story-telling techniques that many are already familiar with. A noble goal, except the variation among people's aesthetic preferences are huge.

Would you have to have two programming languages for two people who like sci-fi versus history? Or how about teen drama versus high art?

Linking programming to these extremely subjective aesthetics is a worthy effort to make programming more accessible, but one that is not entirely workable across personal preferences.

theqabalist|7 years ago

The idea is not to hide design details in specific settings. The idea is first and foremost that characters in a story are entities people reason easily about. The story example is not an example of how to design a system, it is an example of how a story captures the same essence as a possible design but enables more accessible reasoning.

When I employ the concept of narrative I am not specifically talking about common fiction. I am talking about the abstract idea of communicative flows within groups, which combine to form a story. You and I having this conversation is narrative, and forms a story about what you may or may not say next in order to navigate understanding of the underlying concept. I am arguing that this natural process is replicable in systems design where components have a simplified skeuomorphic version of this type of interchange.