Blockchain development made easy: Getting started with Hyperledger Burrow
Our ‘Blockchain development made easy’ series continues with Hyperledger Burrow, a permissioned Ethereum smart-contract blockchain node. What are the advantages and how can developers get started with it? We talked to Casey Kuhlman, CEO of Monax about what’s under this project’s hood.
JAXenter: Brian Behlendorf told us last year that one could think of Hyperledger Fabric “kind of like an Apache Web Server. What is Burrow then? The Redis of blockchains?
Casey Kuhlman: Burrow positions itself as the Redis of Blockchains because it is built to be a unitary binary that is fast, lightweight, easy to get started with, and allows for network and use case evolution. Like Apache or NginX web servers, Hyperledger Sawtooth and Hyperledger Fabric are both explicitly designed to be highly extensible platforms with a broad range of tuning capacity for their runtimes, smart contract operational systems, and networks.
Hyperleder Burrow fills a different role within the Hyperledger ecosystem. It is explicitly designed to do one thing well: run EVM style smart contracts in a permissioned environment. To fill this user demand the maintainers of Hyperledger Burrow focus on making the codebase fast, easy to use, and simple to get started.
Burrow positions itself as the Redis of Blockchains because it is built to be a unitary binary that is fast, lightweight, easy to get started with, and allows for network and use case evolution.
JAXenter: What are the advantages of using Hyperledger Burrow?
Casey Kuhlman: The main advantage of using Hyperledger Burrow is its ease of use. As maintainers, we spend a lot of time making the code base be lean, fast, and easy for developers to get started. We have integrated various, opinionated abstractions that make it super simple for developers to quickly get networks started and promptly move to the meat of building any blockchain for business use case – the business logic encoded in the smart contract layer.
As a developer or group of developers continue to evolve their use case, Hyperledger Burrow’s networks evolve too. They are built to change along with the use case, from being operated by a single developer on a laptop to proof of concept style small networks operating within a cloud environment to more public networks.
JAXenter: What is the most suitable use case for Hyperledger Burrow?
Casey Kuhlman: In our view, there is a range of use cases that perform well utilizing Hyperledger Burrow. These largely fall under the bucket of “sharing processes across company boundaries.” A good example of this is the Agreements Network, an open ecosystem for sharing and operation of legal process that cut across company boundaries that a range of companies (including my own) are leveraging Hyperledger Burrow to build.
That network is focused on enabling a strongly EVM-focused system that leverages Hyperledger Burrow’s capabilities-based permissioning system to build a strong governance system for the decentralized ecosystem. From a developer’s perspective, leveraging Hyperledger Burrow gives our company and our collaborators a chance to evolve the network steadily and safely for all the participants.
JAXenter: How can developers use Burrow to get started with Ethereum Virtual Machine?
Casey Kuhlman: It’s dead simple to get started with Hyperledger Burrow. For developers operating on a single laptop, after installing a single binary, they run can run two commands and they’ll have a local network for fast prototyping of their solution. For proof of concept and pilot level deployments, integrating Hyperledger Burrow into various cloud-based systems is simple as well. For systems that utilize Kubernetes, there are public Helm charts available that allow for one command installation and configuration of networks in such an environment. For other containerized systems, there are lightweight docker images available for easy installation and configuration. Finally, for those that prefer to run systems on a bare operating system, building Hyperledger Burrow as a single, statically compiled, go binary allows for easy distribution and installation on a wide variety of systems.
As an example, for the Agreements Network, we currently have over 10,000 lines of Ethereum Virtual Machine smart contract code spread over almost 100 individual files. This system entire system is tested on a chain in our continuous integration system with a single call to burrow deploy and is deployed to our testnets also using a single command.
It’s dead simple to get started with Hyperledger Burrow.
JAXenter: What does Burrow have that other tools don’t?
Casey Kuhlman: For those that want to run Ethereum Virtual Machine contracts in a permissioned environment, all the tools they need in a single, easy to install and easy to run binary.
JAXenter: What’s next for Hyperledger Burrow?
Casey Kuhlman: The next forefronts for Hyperledger Burrow will be two-fold.
- We will continue to focus on hardening, testing, quality assurance, and security of the codebase as the systems that are built on it continue to iterate toward production status.
- We will also be focusing on how Hyperledger Burrow’s permissioned EVM runtime can continue to be leverage by and complement a variety of other complex networks from both the public blockchain sector as well as the enterprise blockchain world.
Our Blockchain development made easy series debuted with Hyperldger Fabric. Read the interview here.