Understanding Goguen: Cardano's Smart Contract Phase

Shelley brings decentralization to Cardano. However, in its following phase, termed Goguen, Cardano will implement smart contracts in the network. In the Cardano Shelley Summit 2020, we got a chance to interact with the genius behind Cardano, IOHK scientists, and blockchain researchers. These are the people who are building the network.

The Cardano Goguen presentation was given by Nebojsa Vojvodic, Product Manager, IOHK. Following is an excerpt from the same.

About Goguen

cardano goguen

Cardano has five main development themes. It starts with Byron and builds up to Voltaire. With Shelly which we will be rolling out now, we have added extended decentralization. Goguen adds functionalities like issuing custom tokens and building smart contracts. Voltaire will bring in the Governance. It will become a more self-sustaining system.

What is Cardano’s Goguen used for?

It is a Global financial operating system. You can build applications like property registration, payment systems, etc. Since we are building it as a service platform, it needs to be useful and easy to use.

It is an ecosystem of interacting components. We are not building it in isolation. We want it to integrate seamlessly into existing applications. The process will need a lot of external effort as well.

Which developers can leverage Cardano?
  • (Mobile, web, and desktop) application developers. These applications will integrate with Cardano blockchain
  • Blockchain protocol developers. They can check possibilities of interoperability
  • Embedded developers. You can run stake pools on embedded hardware
  • Fintech developers, smart contract developers
  • Researchers, students

We want to start with Haskell developers with good experience. They will build great products on the infrastructure we have prepared for them. We would also focus on the growth of the Cardano developer community.

Developer community development
  • Build domain-specific languages on top of Plutus/Haskell to increase reach and lower entry barriers for developers
  • Build alternative development environments
What can developers do with Shelley?

Shelley already has basic scripting functionalities. A developer can use it to

  • Submit transactions to the Cardano Blockchain
  • Query wallet and Ledger state
  • Monitor network health
  • Attach Metadata to transactions
What does Goguen deliver?
  • Multi-asset ledger: It can define, forge, and transfer your tokens on Cardano. Custom tokens can be created in any Cardano wallet and explorer. It will also have an easy to use User Interface. Token types might include
    • Utility Tokens
    • Branded Currencies (Gaming)
    • Loyalty and Reward Programmes
    • Collectibles
    • Crowdfunding, Auctions
  • Applications
    • Plutus applications: These will be built on top of the Plutus platform. It allows you to write in Haskell and then compile them. It is more secure, concise, and reusable code. One can plug Cardano into existing solutions. Plutus will be released in 2 main phases
      • Plutus Foundation: Onboard in the early phase. We are building documentations for that. Shelly has basic scripting functionality. In Plutus Foundation, we are adding to that, shorter release cycles and developer feedback loop. This is suitable for early adopters. You can build escrow based DEX, ICO with vesting periods, payment channels, centralized stablecoins, track, and trace.
      • Plutus application framework: This is built on the Plutus Foundation. Fix bugs through updates. This is a rigorous approach where we apply formal methods. We will implement a very agile approach. Use cases include lending, microfinance, stablecoins, derivatives, tokenized securities and assets, Identity, voting. Future upgrades include oracles, decentralized identities, regulated assets, application store, etc.

We are working with Cardano Foundation and Emurgo to work on a strategy to organize developer events

  • Marlowe contracts: Marlow is a language that works specifically for Finance. With Marlow contracts, we will get several tools, which is the Marlowe playground. It is a web development environment. You can play around with it. We will provide a reference implementation of standard financial instruments. We are also looking into applications of Marlow beyond Traditional finance, towards decentralized finance. If traditional finance does not want to move immediately, they could take a phased approach.
Domain-specific languages
  • Plutus platform as a basis for domain-specific languages
  • Use your domain expertise without the steep learning curve associated with software development, blockchain, and smart contracts.

We are making a smart contract domain-specific language for traditional finance. However, we envision a steep learning curve to adopt blockchain and smart contracts technology.

Timelines

Cardano Goguen

We will start with the Multi-asset ledger. Look out for a testnet release fairly soon, maybe in a couple of months. We will release it in phases, invitation only.

Later this year, early Q4, we will have the Plutus Foundation release in the Kovan Testnet, in which we will stabilize in the testnet environment. This will lead to the mainnet release of Goguen

There are advanced developer tools and SDK available. This is building on top of the Plutus foundation and makes it easier to develop applications on the Cardano network.

What can you do in each of these phases?

It is already possible to do application development in Shelley. The next step is delivering the Multi-asset ledger. Token builder is the graphical user interface that allows you to build user issued tokens on Cardano. We are hoping a few innovators in Haskell will join us and provide feedback on the testnet phase. Once we move to the mainnet we will extend our reach to the developer community.

Summary

The work for Goguen has started in parallel with Shelley. Users from technical and non-technical backgrounds will create and execute functional smart contracts. Goguen will create Plutus, a purpose-built smart contract development language and execution platform using the functional programming language Haskell. Plutus is already available for testing. Marlowe is a domain-specific language (DSL) for financial contracts built on Plutus. Marlowe Playground will allow financial and business experts with no previous technical knowledge to create smart contracts.

Previously, we covered Cardano Architecture as explained by IOHK. Stay tuned, we have more coverage on what happened in the Cardano Shelley Summit 2020.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.