Building a Multi-Language Blockchain

in Koinos3 years ago

I’m Andrew Levine, the CEO of Koinos Group and below you will find the third episode of the Koinos Group podcast in which I explain Koinos-Types which is an important solution for adding multi-language support to Koinos. At Koinos Group we’re developing the Koinos blockchain which will have free transfers, free accounts, and free smart contracts. These features, in combination with a number of technical innovations will make Koinos the first programmable blockchain with no barriers to entry and as a result we expect it to touch every corner of the technology space.

We’ll be using this podcast to share information about the project, interview members of the team, and interview people from other projects, not just in the blockchain space but in the tech space more generally because we’re building Koinos add value to any project regardless not just projects that want to bill themselves as decentralized or blockchain-powered. To learn more about Koinos, head on over to koinos.io.


Audio Only Version


Multi-Language Support

At Koinos Group we are developer obsessed, which means that we want to build tools that developers love using to build amazing blockchain-based applications. That’s why we think it’s important for Koinos to have multi-language support. It should be fast and easy to create amazing client-libraries, microservices, and smart contracts in the programming languages developers already know and love, and it should also be just as easy to update them. Koinos-Types is key to accomplishing that goal.

Microservices

As I explained in our last post, our use of Go for microservices is just one example of why it is so valuable to have multiple language support on Koinos, not just for the microservices, but for smart contracts as well. Using Go is enabling us to build microservices better and faster than we would have had we been limited to C++ (the language we used to write the blockchain framework).

Different programming languages are better suited to different tasks. Multi-language support doesn’t just make the platform more accessible to a larger number of developers, it gives those developers more freedom to choose the right tool for the job so that their application can be more efficient, more secure, and more scalable. Koinos-Types are key to accomplishing this goal because they will allow us to add features to Koinos and then automagically update every supported client library and programming language instantly!

One of the consequences of a microservice architecture is that every service needs to communicate with one another … a lot. And now we have microservices that are written in two different languages; C++ and Go. So we needed a way of converting these communications into a common language that any microservice can “understand” which is where Koinos-Types comes in.

Koinos-Types

Koinos-Types is a cross-language serialization framework that supports both JSON RPC and binary serialization. It’s similar to Google’s ProtoBuffs except Koinos-Types always serializes data in the same way, which is a requirement for blockchain applications.

Koinos-Types allows programs written in different languages to talk to one another in a simple and unified way by giving them access to the same objects (the “building blocks” of modern programming languages). It’s also a lot higher-level than RLP (a similar solution for Ethereum), which should make it easier and faster to develop client libraries and keep those libraries up-to-date with any upstream changes.

Koinos-Types actually solves a number of problems. It helps us add multi-language support to Koinos more generally, it enables microservices to communicate with one another, and it makes it easier to develop and update client-libraries. Obviously when Koinos mainnet launches it won’t have all of the nifty tools that other blockchains have which is why it is critical to ensure that Koinos can acquire those tools at a more rapid rate so that it can not only catch up to older protocols, but ultimately outpace them. Koinos-Types are key to accomplishing that objective.

Smart Contracts

Best of all, this work serves double-duty since it is necessary for adding multi-language support for smart contracts as well. That means that we are that much closer to supporting smart contracts written in Go and languages similar to Go.

As you can see, building a next generation blockchain requires solving highly technical problems that few teams are even capable of assessing, let alone solving! It was only thanks to our first hand experience working on Steem (now Hive) and steemit, that we saw the importance of solving these specific problems, and the dividends such solutions will ultimately play.

If you’d like to learn more about Koinos, head on over to koinos.io and if you found this content interesting or informative, please follow and share. Thanks for your time!

My Socials

Twitter
LinkedIn

Koinos Network Socials

Twitter
Facebook
LinkedIn
Hive
Discord
Telegram

Koinos Group Socials

Twitter
Facebook
LinkedIn
Medium
Hive

Sort:  

@andrarchy,
Why don't you think about forking STEEM or HIVE & add Smart Contract with it?
$tangent

Cheers~

Great question! We did consider starting with Graphene (what Steem/Hive are built on) but it was that very analysis which led us to develop the product we did. If you read our whitepaper you will be able to see the technical solutions we believe are critical to building a blockchain capable of delighting users and supporting exponential growth. These are technical solutions that are not a part of Graphene and cannot be added to Graphene, that is the whole reason we are building Koinos. People make the mistake of thinking this is somehow a threat to Hive but this is because they don't understand what Hive is. Hive is a decentralized application. Koinos will be a better, more upgradeable, more scalable decentralized application platform than anything else out there and that is a GOOD thing for dApps like Hive if they take advantage of it. Put another way, you're making the wrong comparison. Koinos is a replacement to Graphene, which has serious architectural flaws. The Graphene experiment has failed and the few apps left running on it need a better option if they want to survive into the future. We're building Koinos for those developers and their end-users.

@andrarchy,
Just a suggestion, do you have any plan to create a mechanism that might reduce these unnecessary Gas fees, or a swapper which can work with Hive Engine tokens, so it can be easy to add funds to Koinos rather than paying something unreasonably.
Anyway, this seems a very interesting project.

Thanks~


Congratulations, @theguruasia You Successfully Trended The Post Shared By @andrarchy.
You Utilized 3/3 Daily Summon Bot Calls.

TAN Current Market Price : 1.860 HIVE


Congratulations @andrarchy, You Earned 1.145 TAN & Curators Made 0.801 TAN.

tangent.token


Join CORE / VAULT Token Discord Channel or Trade TANGENT Token
TAN Current Market Price : 1.930 HIVE