Skip to content

Instantly share code, notes, and snippets.

@ahdinosaur
Last active January 3, 2016 20:39
Show Gist options
  • Save ahdinosaur/2c4f7f714c75f824d8e1 to your computer and use it in GitHub Desktop.
Save ahdinosaur/2c4f7f714c75f824d8e1 to your computer and use it in GitHub Desktop.
developer value flows

developer value flows

Vocabulary

ResourceTypes

AgentTypes

  • [Person]
  • [Group]

RelationshipTypes

  • [memberOf]

ResourceTypes

  • [technology]
  • [money]

ActionTypes

ProcessTypes

  • [create]

ExchangeTypes

  • [give]
  • [receive]

ActivityTypes

  • [intend]
  • [commit]
  • [flow]

Example Flow

A developer (D) creates technology for a client (C).

D writes an intent to:

  • Use co-working space
  • Use computer
  • Consume electricity
  • Consume water
  • Consume food
  • Create technology
  • Give technology
  • Receive money

C writes an intent to:

  • Give money
  • Receive technology

Both developer D and client C commit to their and each other's matching intents.

Technology development recipe:
  actions:
    - name: D creates technology for ${length} hours
      agent: D
      actionType: create
      resourceType: D technology
      quantity: ${length}
    - name: D gives technology
      agent: D
      actionType: give
      resourceType: D technology
      quantity: ${length}
    - name: C receives technology
      agent: C
      actionType: receive
      resourceType: D technology
      quantity: ${length}
    - name: C gives money
      agent: C
      actionType: give
      quantity: ${length * rate}
      unit: dollars
    - name: D receives money
      agent: D
      actionType: receive
      quantity: ${length * rate}
      unit: dollars

During a month, D docked the following hours for project with C.

Technology development invoice:
  actions:
    - name: D creates technology for 80 hours
      agent: D
      actionType: create
      resourceType: D technology
      quantity: 80
    - name: D gives technology
      agent: D
      actionType: give
      resourceType: D technology
      quantity: 80
    - name: C receives technology
      agent: C
      actionType: receive
      resourceType: D technology
      quantity: 80
    - name: C gives money
      agent: C
      actionType: give
      quantity: 80 * 100
      unit: dollars
    - name: D receives money
      agent: D
      actionType: receive
      quantity: 80 * 100
      unit: dollars

The client C paid the invoice a few days later, sending the money to D.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment