OMP (Open Marketplace Protocol)



I’d like to start a discussion about OMP - the Open Marketplace Protocol for Particl.

I see OMP as key to the operation of Particl; having significant influence on the way it can grow and how it’s adopted.

After reading the current OMP documentation ( I’d like to make some observations (below). Hopefully, this can lead to robust, courteous technical discussions that add to and build on the good work already begun.

Overall, I think OMP a great start and on the right track. I recognize its a work in progress.

First, I’m glad to read that the authors choose a human-readable encoding for the protocol. I agree with the author’s reasoning in choosing this approach over, say, a binary encoding.

Second, I’m also glad to see OMP being an explicitly defined protocol. Communication between entities of a distributed system requires there to be protocol, which can be defined either explicitly or implicitly defined. An example of an explicit protocol is HTTP, as defined by RFCs 2616 and 7231. An example of an implicit protocol is that used by Bitcoin nodes, which is defined entirely and solely by the actual behavior of the Bitcoin reference implementation. Clearly, each approach has its advantages and disadvantages (which I’ll not enumerate here for the sake of brevity, but I can expand upon later/elsewhere should that be desired). For Particl, a marketplace, to gain widest adoption, it should support diverse agents operating on diverse platforms. Thus, I claim, its protocol should be explicitly defined, as it is.

I’ll pause here to allow others a chance to comment and offer other perspectives / other details.

I realize OMP is a work in progress, so I hope this post and ensuing discussions can add meaningfully to it.

I’m a firm believer that distributed marketplaces will become more popular as users decide to move away from corporate-controlled marketplaces. We just need to provide them the alternative.