The Public API Fosters Innovation On Tezos

The Public API Fosters Innovation On Tezos

The basic premise of a public blockchain is that its immutable and permissionless. These are table stakes, without it there’s simply no point in having a blockchain. While not all applications running on a blockchain need to be permissionless, many are.

Due to the layered architecture of smart contract based dApps, the base layer is completely agnostic to the agent used to interact with it. This means that the smart contract only cares who calls it and not what – and this means that many smart contract dApps can be seen as having a public API. Guess what you can do with a public API? Build on it of course!

Blockchain dApps are not the first to have their API’s constructively hijacked. There are many examples of web services that either by design or oversight have their service layer exposed to the internet, and where third parties have either added functionality or made existing functionality more easier to access.As we all know, creating a good UX is not a skill that that many individuals or organizations possess, or even prioritizes.

Having a complete separation between the layers is a good thing, as it means that you can upgrade one without having to synchronize changes with the other.Or, completely overhaul one layer while keeping business as usual. As long as this separation and openness doesn’t expose any vulnerabilities, this is a good thing.

One of the rules of Brainstorming in the IDEO Ideation process is “Build on the ideas of others”, and the publicly exposed smart contracts enable just that.

There are two recent examples from the Tezos ecosystem:

  1. The Plenty Harvester for plentydefi.com

  2. Alternative front-ends and explorers for Hic Et Nunc (H=N)

While plentydefi.com itself looks quite slick, it quickly becomes a tedious task to harvest multiple farms. Since we must wait for every transaction to clear before moving on to the next one, it’s quite frustrating when having more than one farm.DataRunner and Manan scratched their own itch by creating a service which let’s the user simply harvest all farms with two clicks (one to connect the wallet, one two harvest).

One of the first alternative explorers for H=N was made by Mike Tyka, himself one of the earlier high profile artists who used the platform. It lets users get a random subset of available objkts in specific price ranges, which was a very welcome addition when the main site only listed objkts in a chronological feed.

A later addition is objkt.bid, an alternative front-end for H=N with much stronger focus on auctions and building a marketplace for Objkts. It provides a much more dense view, and also puts soon to end auctions front and center.

So, for both benign tasks as well as missing functionality or a user interface tailored towards another use case than what you might have, there’s ample opportunity to build upon the work of others in a constructive way that benefits all parts. In fact, it can be a fun and productive way to dip your toes in blockchain development and not have to build something from scratch.

Another option is to build the blockchain layer of a service and then get others to implement the UI services, something that Et Mitte is doing right now, so that the on-chain messaging service can be included in wallets and other user front-ends.