Post-Currencyism 1: Outline

NOTE HXA7241 2014-01-19T11:23Z

What is a specific, concrete way to describe the core idea? What software form would it take?


How about an economic system built around its underlying network structure? The idea can be summarised as: discretising and tracking what is wanted and what is available, processing the resulting graph structures to match things optimally, and dividing this work into data-sharing peers.

The key parts are:

  • supply/demand signals (issued by agents)
  • social-like network/graph (of agents and signals)
  • automation/optimisation of matching (as functions on the network/graph)
  • distributed hosting (of matching, on peers/agents)

The most basic information needed is what is wanted and available, which is captured in supply/demand data chunks, or ‘signals’. Then, with people and other agents agreeing ‘matchings’ of those, this forms a series of network/graph structures over time. Any analysis or optimisation of the system's work is essentially functions over that graph of agent/signal interactions. And such an inherently distributed overall purpose suggests a distributed implementation across all its users.


  • Data
  • Algorithm
  • Decentralisation

Agents issue signals of supply/demand, and since these plug together they form a graph – or really a series of graphs depending on the duration considered.

There can be two basic data objects:

  • Agent : of type UUID
  • Signal : of type product-type {
    • offer/request : of type (enum of 2 values),
    • agent : of type Agent,
    • timestamp : of type ?,
    • amount : of type (int unsigned 64 bit),
    • description : of type abstract/open,

There can be two secondary data objects:

  • SignalsLog : of type (list of Signal)
  • MatchesLog : of type (list of Match)
    • Match : of type product-type { UUID, Timestamp, Signal, Signal }

And the main data structure would be:

  • Graph – continually changing, built from logs, with agents as nodes and matches as edges

Various functions can be run on this series of graphs, with the main purpose being to decide how to match offers and requests. These seem in principle similar to PageRank – the structure of the graph itself reflects the ‘density’ of flow of supply and demand.

The matching functions might be:

  • matchFind : of type (Graph, Signal) -> Signal
  • matchMake : of type (UUID, Timestamp, Signal, Signal) -> Match
  • matchAgree : of type (Match, Agent, Agent) -> Boolean
  • matchSubmit : of type (MatchesLog, Match) -> MatchesLog

Graphs are naturally decentralised and dividable. Each peer (agent) can hold a copy of their local region of the graph – something like: all the other agents they interact with directly, and all the offers/requests/matches between them. Each peer/agent can then run their copy (or version) of the algorithms on that (possibly on their phone-puter).

Each agent needs a way to decide:

  • whom to add/include in their network-group
  • what new additions to broadcast to their peers

– that is, the network-groups are defined by differential rules.

Each agent needs to communicate:

  • broadcast new members/contacts to their peers (send)
  • broadcast delivered matches to their peers (send)
  • search distally somewhat/sometimes to do matching (send & receive)


How would this be used? What would a user actually do?

You ask your phone-puter: whenever you want to interact economically the system can tell you where to get things and where to give things. You (probably implicitly) identify yourself and request something, and the system can see your previous contributions in the network and so then tell you how much of the requested thing it can give you, and you can decide if you will agree or look for an alternative.

Outwardly, usage-wise, this is not really different to the currency-based way, where you check how much money you have, and see how much of what you want is affordable, and decide if you will buy. It is a kind of negotiation between what is offered and requested. Compared to the network-oriented software system, money can be seen as acting as a very primitive storage/computation of your relation to the network.


Prima facie, this seems enough: the system knows what is wanted and what is available, and it has all previous interactions to use to decide how to match up the latest ones. All needed information is there.

However, the system is just the basic layer: it only represents supply and demand in abstract. Features of the goods transacted is not included – and that is good: that whole aspect can be added in a modular way, as another layer.


The primary inspiration for this ‘network-oriented’ economic system is #PunkMoney. #PunkMoney is centered on supply signals (promises), but omits the demand counterpart found here.

Related is Ripple, which is also centered on a social-like network/graph structure, but which is also centered on currency.

Very similar is EconomyApp (also:, where this basic network-oriented idea is named ‘network-barter’.


As a rough guestimation of plausibility:

  • There are more Google searches per day (3x10^9) than basic economic transactions in the whole of Norway (Pop. 5x10^6).
  • There is roughly similar computer power in Norway's smartphones (2.5x10^6) as at Google (servers: ~1.5x10^6).
  • So perhaps we could tentatively and thought-provokingly propose that Norway could run an network-oriented post-market economy on its smartphones.