All great cities and villages need a place of gathering, a place to facilitate a public economy - an agora. Agoric strives to be that for the greater Cosmos ecosystem.
The literal meaning of the word "agora" is "gathering place" or "assembly". The agora of ancient Greece and Rome was the centre of the athletic, artistic, business, social, spiritual and political life in the city.
In other words, an agora was a central place for people from all walks of life to meet and handle various activities in their daily lives - whether that would be political, social or economic. In the same vein, Agoric tries to offer a gathering place for all kinds of developers, with one shared ability - the knowledge of the world's most used programming language, JavaScript.
Enabling developers to use familiar tools to write smart contracts, in an extremely secure language, opens up a huge pool of developers. Many of which have yet to break into web3 development.
Currently, at the time of writing, just 0.06% of the world's developers have created an asset class worth an astonishing $1.90 trillion. That is almost incomprehensible, now imagine what several more %'s of the worlds developers can achieve in tandem?
Before we dig deeper into the underlying protocol and look at what Agoric is capable of, let's take a trip back in time to 1988.
Let's take a look at how the idea for Agoric came to be, by looking at the concepts behind Agoric Open Systems developed by the Chief Scientist of Agoric, Mark. S. Miller. Now, Mark is a bit of a visionary, so it might come as a surprise for some to see that many of the sentiments we share today were developed much earlier than many might think. I think it's important to understand the ideas of the people behind the protocols we use, so let's go back to a cold January day in 1988:
Miller lays out his ideas for a computational economy in his paper on Agoric Open Systems. He comments on the idea that computation can be viewed in economic terms. In his view, already in 1988, computer science had moved from a centralized to an increasingly decentralized model of control and action - and by the use of market mechanisms, we could extend that development. Trade and price mechanisms caused by decisions from a wide variety of parties globally could cause computation in large open systems.
We've seen this become exceedingly truer, day by day, as both decentralized finance and decentralized applications have taken the world by storm.
Miller describes the value of agoric systems as such,
agoric systems can serve as a software publishing and distribution marketplace providing strong incentives for the development of reusable software components. It is argued that such a system should give rise to increasingly intelligent behavior as an emergent property of interactions among software entities and people. - Mark. S. Miller - Markets and Computation: Agoric Open Systems1
So what is an Agoric System?
An agoric system is characterised as a software system utilising market mechanisms, based on foundations that provide for encapsulation and communication of information, access, and resources among objects(any application).
Adoption
Now that we have looked at the background of some of the ideas that Agoric are based upon, let's take a look at how Agoric can help drive crypto and blockchain adoption.
What's the best way to drive adoption? Ease-of-use, and having a large selection of useable products.
What Agoric unlocks is the ability to build smart contracts in the most popular programming language, JavaScript. Hence by enabling JavaScript developers to easily build applications on Agoric, we can grow the developer pool working in web3. If we grow the developer pool it will most likely also grow the user base, as there will be more applications available for the user to use. Experimentation and the development of new ideas will also grow exponentially with the developer pool.
So, what does writing smart contracts in JavaScript facilitate?
In the traditional world, contracts enable parties to cooperate safely via the exchange of rights. Smart contracts on blockchains are quite similar. They are applications whose behaviour enforces the terms of a contract, which are set by the writer of the said smart contract.
What Agoric tries to accomplish by writing smart contracts in JavaScript is to provide a safe, easy and elegant way to write smart contracts for a wider audience.2
Agoric
Agoric is like any other Tendermint built blockchain based on Cosmos SDK, a proof-of-stake chain. Agoric has spent years trying to perfect a way to use JavaScript to make smart contract programming accessible to a wider range of developers. The hardened JavaScrypt of Agoric will enable millions of developers to easily and safely build a wide range of applications.
Since Agoric is built upon Tendermint it is also natively supported by the IBC, which naturally connects it to the whole Cosmos ecosystem. The composability of the Agoric technology (which we will touch on later) will, hopefully, enable an exponential growth that we've seen with other JavaScript ecosystems such as Node.js3.
Although developer growth in crypto has been strong, the community of smart contract developers is still relatively small compared to the global developer pool4.
Agoric in this case is uniquely positioned to acquire the largest pool of developers in the world — JavaScript developers — and thus stimulate expansive growth.
Composable DeFi
Agoric offers a huge pool of developers an easy way into writing decentralized applications by providing reusable and composable components created by some of the grandfathers of the internet.
In this section, we're going to take a look at the composable parts of Agoric that will enable a new era of DeFi.
Zoe - Agoric's smart contract framework
Zoe is developed to be the recognizable link between web3 and web2 devs with a pluggable composable framework.
The major difference between Zoe and other smart contract frameworks is offer-safety (guarantee to either get what's desired or get back a full refund of what's submitted5), which assures that on-chain transactions either settle and close, or return to users.
On blockchains like Ethereum or Solana, users are provided with no such protection: For example, if a user sends tokens to a smart contract on UniSwap and the contract fails due to bugs, malicious code, etc. Then the user has no way to get their provided assets returned.
While with Zoe, you provide tokens to the Zoe smart contract infrastructure, not the contract itself. This means, that the infrastructure itself guarantees that the user acquires what they want, or that they get their provided assets back. Zoe does this by automatically escrowing all users digital assets and handling their subsequent payout6.
Offer-safety allows users and developers to avoid catastrophic errors, like those frequently seen on other blockchains.
ERTP
Electronic Rights Transfer Protocol (ERTP7), is Agoric's token standard for creating and transferring tokens and digital assets. This will eventually also incorporate components such as NFTs, and assets from other chains. It also enables projects to launch their own token quickly with the security of JavaScript.
Endo
Endo is a JavaScript platform, that is still under development, that will enable secure communication of objects between various endpoints and protocols. Endo is based on SES, which is a secure JavaScript environment that allows for the safe execution of compartmented programs8.
Dual-Token Economy
BLD
BLD is the native staking token that will provide chain security. Stakers of BLD are not just paid out in BLD, but also in RUN (Agoric's Native Stable Coin) which I will touch upon underneath.
Correspondingly, BLD will also be the token for protocol governance, as with any other token in the Cosmos ecosystem.
This means that as a holder of BLD, you'll also be able to vote for changes to both the BLD and RUN protocols. Likewise, fees generated by the operation of the RUN Protocol flow to BLD stakers.
RUN - Agoric's Native Stable Coin
RUN will be pegged to the USD since it will be backed by on-chain collateral and natively supported by an Automated Market Maker (AMM).
Smart contracts on Agoric will be able to be paid for with RUN. It will also be used to pay for the execution of transactions and other critical chain services. Fees that are paid in RUN on Agoric will accrue value to stakers of BLD, as the fees will be paid to BLD stakers, thus boosting the security of the chain.
RUN will be fully backed by user-provided collateral, which could include BLD, assets minted on the Agoric chain, and funds from the wider Cosmos cross-chain ecosystem through IBC.
BLD stakers can also lock their already-staked BLD (Liquid Staking) to mint RUN - similar to liquid staking on other chains, such as sONE/sFTM. Â This allows BLD stakers to participate in the ecosystem while still securing the chain.
Another thing that could be possible is that when we get liquid staked ATOM, we could technically use that to collateralize RUN, which would unlock new yield strategies on Cosmos (something that's lacking so far).
Inter-chain
To appeal to the largest smart contract platform Ethereum, Agoric users will be able to on-ramp through the Gravity Bridge(Eth-Cosmos Bridge), and in the future EVMOS too. Assets on Ethereum will therefore be able to collateralize contracts on Agoric.
Since Agoric is built with Tendermint, the Inter-Blockchain Communication (IBC) protocol guarantees that Agoric can link natively to any Cosmos chain and any chains which adopt IBC in the future.
Agoric chain assets such as BLD and RUN will also be available on IBC applications, such as Osmosis, Evmos, and other IBC-enabled protocols.
Likewise, we will also be able to use IBC assets like LUNA, ATOM, and OSMO within the Agoric platform. As the adoption of IBC grows and more protocols enable it, so will the usage of IBC assets, as shown by the network effect.
Decentralized Application Templates
Agoric has already built a library of templates that are free to use for any developer interested. Creating a new dapp is as simple as writing two lines of code.
For example:
agoric init --dapp-template dapp-fungible-faucet my-fungible-faucet
There's a variety of templates available already such as a Fungible Faucet Dapp, an NFT minter, an OTC desk capable of exercising call options, an Oracle dapp and many more9. These are just a few examples of what's already available to be built upon, by many new developers just getting into building in the web3 space.
This makes the barrier to entry to develop on Agoric even lower (if enabling JavaScript was enough already).
ICO and Release
The hype around Agoric has been slow over the last few months, but is starting to grow as euphoria from the Cosmos narrative comes to fruition.
The ICO prices of Agoric were $0.65 for the first 25M tokens locked until 1 Nov 2022 with a 12-month linear release, and $0.8 for 45M tokens locked until June 29 2022, with the same 12-month linear release schedule. The Sale ended 5 Jan 2022, raising $52.25M10.
Token allocations:
Mainnet Phase 1 (RUN launch) is set to release in the first quarter of 2022, with phase 2 in Q2 (smart contracts).
I will conclude this piece with a relevant quote, not a new quote, but rather one from more than 50 years ago that describes a problem that still persists to this day:
Perhaps the central problem we face in all of computer science is how we are to get to the situation where we build on top of the work of others rather than redoing so much of it in a trivially different way. -R. W. Hamming, 1968 from One Man's View of Computer Science
https://agoric.com/assets/pdf/papers/markets-and-computation-agoric-open-systems.pdf
https://papers.agoric.com/papers/distributed-electronic-rights-in-javascript/abstract/
https://blog.coinlist.co/a-deep-dive-into-agoric-javascript-smart-contracts/
https://medium.com/electric-capital/electric-capital-developer-report-2021-f37874efea6d
https://agoric.com/documentation/zoe/guide/offer-safety.html
https://agoric.com/documentation/getting-started/intro-zoe.html#for-users
https://agoric.com/documentation/getting-started/ertp-introduction
https://github.com/endojs/endo
https://agoric.com/documentation/dapps/dapp-templates.html
https://cryptorank.io/ico/agoric