️Did You Miss Loom Network’s Reddit AMA (Ask Me Anything) on /r/Ethereum? — Here Are the Highlights
You haven’t really “made it” in life until you have at least one Reddit AMA (Ask Me Anything) under your belt.
Bill Gates, Barack Obama, Monty Python, and Arnold Schwarzenegger have all done one.
If you are not familiar, the Reddit AMA is an incredibly popular Question & Answer format where anyone can ask questions from the AMA Host.
…and guess what?
You’ve all been adamantly demanding that Loom Network also do an AMA so you could get all of your questions asked in a 1-on-1 session with the Loom Team.
So much so that, it got cross-posted all over Reddit like wildfire and started a whole bunch of ancillary discussions.
So, if you participated in our first ever Reddit AMA — Thank you so much 🙇😇
If you are on our private email list, you are already aware of the AMA because not only did you demand it, you were the first to know about it.
Just in case you were busy with real life and missed all the action, RELAX.
Not only are we going to do a second AMA sometime later this year — I have highlighted the best questions and answers from the AMA below so you can easily catch up.
…and if you are STILL confused, feel free to stop by our live Telegram Chat and ask us there.
By the way…
These highlights were curated (and slightly edited for readability) by me, Dilanka.
Questions are BOLD and the Answers are Italicized for easy reading — Also, if you prefer to read the entire AMA in it’s entirety, you can do so here.
What Were The Best Questions From The Reddit AMA? 🤔
Out of hundreds of comments and questions, I narrowed everything down to the 34 best questions.
1.) Does Loom Network make EOS obsolete? What are your thoughts on EOS?
I think EOS’s biggest weakness is not having a decentralized, trustless base layer.
Even if in the short-term it does win some developer mindshare over its scalability promises, in the long-term cracks will start to show and expose the weaknesses of having a more centralized base layer. Maybe we’ll see some censorship scandals start to emerge, or maybe everything will run smoothly for a long while until a black swan event finally brings the whole tower crashing down.
Or maybe it will be totally fine. I can’t predict the future. But we do think that any app you could build on EOS, you can build on Loom instead, in which case you get to use Ethereum as a base layer for secure ownership of assets.
2.) Plasma implementation is going to be ready in June, 2018?! Seriously?
We like to move fast ;)
Our initial release in June is a Plasma Cash implementation that handles our highest-priority use-cases — namely transferring in-game assets (ERC721 tokens) onto the DAppChain so they can be used in games while being secured by mainnet.
Update: Yes, indeed! We announced our Plasma Cash Initial Release in June, 2018.
3.) What are the main benefits of using a DAppChain for game assets or game play instead of simply using a centralized server and private message network?
Please answer both from a game player perspective and from the developer’s perspective, and in a way that tells us how those benefits outweigh the transaction costs and relative inefficiency of using a decentralized network like Ethereum.
First, take a look at this post for a great high-level overview of the benefits of blockchain games. It goes into depth about a number of benefits of blockchain games from the game players perspective. As far as benefits from the perspective of game developers, you can read my answer here.
As far as benefits outweighing the transaction costs and inefficiencies of using a decentralized network like Ethereum…
Well I’d say Loom enables an entirely different type of game that isn’t possible on Ethereum alone. So it adds to the robustness of the Ethereum ecosystem by making more things possible.
Vitalik said it himself in an interview:
“…You could run StarCraft on the blockchain. Those kinds of things are possible. High level of security and scalability allows all these various other things to be built on top. Ethereum is a secure base layer that doesn’t have too many features…”
— Vitalik Buterin
Ethereum is a great base layer, and it laid the decentralized foundation that makes these Layer 2 solutions possible.
Some of the first games we’re building in-house to show off our platform are a Hearthstone-style card battle game and a Pokemon Red-Blue style monster battle game. These types of games simply wouldn’t be possible on Ethereum from a UX perspective — because you’d have to sign a transaction every time you made a move, paying a gas fee, and wait 15+ seconds for your move to get included in the next block.
So, that’s very inefficient AND expensive, and Loom DAppChains will solve those problems.
4.) What is your ideal vision for how validators should be chosen?
We’ll see DAppChains on Loom that adopt all sorts of different models — some will choose to play it safe and centralize the validators in the beginning (like DelegateCall), others will start experimental communities with karma-based systems to determine who can run validators — and over time, we’ll see which models work best.
Update: Our shared sidechain and Layer 2 hub, PlasmaChain, is live in production. You can read about the validator requirements and about how you can become a delegator.
5.) How will Loom handle MMORPG like games, where the number of state updates per second is really large and where many players change the state simultaneously? Still trying to wrap my head around this one.
Our initial games are going to be turn-based — a Hearthstone-style card battle game, a Pokemon Red-Blue monster battle game, and a single-player 2D platform side-scroller where character data and items are persisted as ERC721 assets that can be loaded into different “worlds” or levels.
These types of games are technically a lot simpler to build on a blockchain because as you said, they don’t need to deal with many players changing the state simultaneously.
This is how we see MMORPGS: You will still need a ‘realtime’ layer for moving around worlds, chat, and fast battle systems. I think at least initially, all purchases in shops in game, all transfers of items between players could happen on the blockchain.
If all the valuable transactions happen on a blockchain — that would be a great start.
Eventually, we plan to support MMORPG games when our tech becomes more mature, but have to learn to walk before you can run 😉
6.) How does a Loom Sidechain differ from a private Ethereum chain? — and why are your smart contracts available in Go but not yet in Solidity?
Loom DAppChains are not EVM-based, the underlying blockchain is a custom implementation written in Go. So Go smart contracts were trivial to implement 😉
Anyone will be able to build-in support for smart contracts in other languages, so the community will be able to add support for additional languages in the future.
We also released a Unity SDK — so Unity game developers can easily build their games on a DAppChain backend without having to learn Blockchain programming from scratch.
Update: We publicly released the Loom SDK beta in June, 2018. See the announcement here.
7.) What made you choose to build LOOM on top of Ethereum as opposed to the many other blockchains out there? — and Is LOOM tied to Ethereum going forward for the foreseeable future or do you think it can one day become blockchain agnostic?
I think the real question is, what other blockchain would we have built on if not Ethereum? There’s not really a credible alternative.
- Ethereum has several orders of magnitude more developers than any other platform. And if you don’t have developers building on your platform, you’re building a ghost town.
- Ethereum is sufficiently decentralized, which is necessary for a base layer. Other blockchains that claim to be cheaper / faster than Ethereum, it’s typically because either a) no one is using them so there’s low competition for transaction fees, or b) they’ve sacrificed decentralization by design in order to increase throughput. See our post on the subject.
As far as we’re concerned, Ethereum has already won the race for developer mindshare, and with so many active projects in the developer community like Web3.js, MetaMask, Infura, Truffle, Trustwallet, etc. (it’s a long list), it’s going to be extremely difficult for another platform to catch up.
It’s possible that another blockchain platform will spring up at some point in the future that’s 10x better, and if enough of our users demand it we can add support for another blockchain. But we wouldn’t bet on it.
Plus, any additional features another blockchain might offer such as gas-less transactions, low-latency transactions, or higher transaction throughput, can simply be implemented as Level 2 services on top of Ethereum (like Loom) rather than building a new base layer from scratch.
8.) What barriers of entry have you identified for developers using your SDK?
Mainly just being familiar with the programming languages used in our smart contracts. Right now only developers of Go and Solidity can write smart contracts.
In the future, we will be adding Node.js smart contract support as well. On the client side it’s either JS or Unity. Knowledge of protobufs is helpful as well, as it’s our native encoding format — unlike some other platforms, which have rolled their own proprietary formats.
9.) What is the incentive to hold LOOM tokens? Will developers or users ever need a substantial amount of LOOM to create/launch their DApps? — and Why wouldn’t developers buy LOOM, create their DAPPs, and sell their LOOM, continuing high token velocity and not establishing any legitimate value of the coin?
Developers and users will need to keep holding their tokens to continue accessing the platform.
Also, we have a number of other membership use cases for the token that we haven’t announced yet. One such announcement will be coming very soon.
We fully intend on continuing to deliver more and more benefits to our users over time — this is just the beginning.
For more details about the LOOM Token, please see our Token FAQ.
Update: We announced our token utilities in June, 2018. See the post here.
10.) How would you compare Loom Network’s DAppChains and SDK to the gaming SDK work being done by Enjin or Kin?
From what I can tell, these projects are totally different. We’re building an infrastructure platform for building and deploying entire applications. Our focus on games is simply because these are some of the most obvious use cases we see for the blockchain beyond financial DApps or payments.
11.) After teaching developers how to write smart contracts and providing scaling (with free transactions), what are the next opportunities you see that will bring blockchain gaming to mainstream adoption? — Do you see any open problems or particularly challenging obstacles?
Great question! Off the top of my head, I think the biggest difficulties will be:
a.) Getting the UX as frictionless as possible. We’re working with Trust Wallet to help get there with the mobile experience, for example.
b.) Getting some ETH into enough people’s hands that it’s not a big barrier to entry. Companies like Coinbase are helping a lot — and I think MMO games where players can grind and then sell their items for ETH on a marketplace will be huge here.
c.) Getting enough interesting apps online that people actually WANT to go through the hurdles to use them. Look at what CryptoKitties did — and this is one of the reasons we think games will be huge for Ethereum.
On that last note, I think it will be some time before developers stop looking at “How do we port this thing that already exists to the blockchain”, and start looking at “What does blockchain tech enable that wasn’t possible before, and what can we build that really takes advantage of it?” — I don’t have all the answers yet (interoperable game worlds is one), but when developers start getting really creative here, that’s when things will really blow up.
12.) Did you consider other models for the LOOM token? Could you share some of the thought process and iteration that led to the current token model?
ETH already serves the role of a universal currency, so we think creating anything that is currency-like is kind of pointless — you can just use ETH in your DApp for payments. Membership tokens make a lot of sense to us, because it’s like a software license that can be resold freely, and doesn’t rely on a central party’s approval who can and can’t use the software.
13.) How would the UX unfold with Plasma Cash? I.e. will the tokens be created out of thin air with the SDK? — Or will the tokens be purchased in an exchange?
So assets on mainnet like ERC721 would get transferred to a contract on mainnnet. Then they get a new serial number as Plasma Cash that can be used on the side chain.
As for the UI — we have some examples of how it might look to move the item to the contract.
Still reading all these great questions? That’s IMPRESSIVE, my friend. Go on, keep reading — just a bit more to go 😘
14.) Is one token membership the same as buying a Loom token in a exchange?
Loom Network membership is tracked via the LOOM Token and there’s no difference where you buy it because it’s still the same ERC20 token.
For more details about the LOOM Token, please see our Token FAQ.
15.) How can a non-techie like myself be of any value to Loom’s development, in the broadest sense of the word?
Right now we’re very developer-focused since we need to get developers building on Loom first before it can be useful to users.
But in the meantime:
- You can contribute to DelegateCall.com by answering questions (and earn DelegateCall Tokens — currently they have no value, but we intend to build an economy around them).
- Follow us on Twitter… like and retweet our content to help spread the word — and join our mailing list to stay in the loop with the latest news.
- As we start to release our games in the near future, get all your friends to play them 😉
16.) I presume the DPoS sidechains cannot write to the main Ethereum blockchain, but can they read from it? — If the DPoS sidechains can write to the blockchain, what are the limitations?
The sidechain can write to Ethereum as well — it entirely depends on how you implement your smart contracts.
Basically a DAppChain consists of a standalone blockchain, and a smart contract (or contracts) on Ethereum that it talks to.
An example would be a Plasma contract where you can transfer ERC721 tokens to the wallet owned by the validators of the Loom chain, then you would be credited those assets on the Loom chain (but with the ability to “challenge” on mainnet if the validators stole your tokens).
Read this post for some real world use-cases in games.
17.) Is there native oracle support provided by the Loom Network? If so, how can we trust the oracles?
Asset transfers don’t require oracles, as the smart contract handles security of transfers. If you needed a special oracle like stock prices on a DAppChain, it would work in a similar manner as Ethereum.
18.) I see you have unity integration. Are you planning Unreal and other gaming engines also?
Yes, we’re focusing on Unity first, but plan to add Unreal support at some point in the future.
19.) What is Loom’s Business Model? — How are you making money from this?
We have a number of ideas for monetization: we plan to offer some optional paid services for developers, we have an in-house games team and our games will have in-game purchases, etc., but we’re quite well-funded privately, and don’t need to worry about monetization for quite some time.
20.) Is the entire throughput of the Loom Network shared by all applications utilizing the Loom Network? In other words, is it possible for a single popular application to “DDOS” the entire Loom Network?
Essentially each DApp runs on its own sidechain with its own nodes & validators, so each DApp can optimize for its own decentralization and scalability needs.
21.) If a single application (e.g. CryptoKitties), “DDOS”es the Ethereum network, what impact would that have on Loom Network?
When you want to transfer assets on mainnet or otherwise interact with Ethereum smart contracts, Loom DAppChains are still bottlenecked by Ethereum’s transaction throughput. Developers will have to keep this in mind in their design decisions for which parts of the DApp to run on mainnet, whether those actions require very fast confirmations or not.
Loom is just one aspect of scaling — other solutions like sharding are still quite necessary to scale the number of transactions on mainnet.
22.) Do you have any plans to build different types of DApps as examples so developers know what they can build on Loom Network? As currently it seems like mostly game DApps excluding DelegateCall.
You can build any type of DApp on Loom though, so we’d love to hear what other types of DApps you’re looking to build!
23.) What sort of transaction rate would Loom Network allow for?
All statistics are lies. Be very skeptical when a platform boasts how many transactions per second it can handle — in a closed setting with a single node on a supercomputer, even Ethereum can scale to millions of transactions per second.
We care more about real world results than boasting benchmarks. Right now, we are running Zombie Battleground, a multiplayer card game, on top of a DAppChain, and it runs perfectly fine. Each use case is different depending on its needs, so we don’t publish specific numbers, but we’re seeing speeds that are more than enough for most games.
24.) What advice would you give aspiring DApp developers who don’t have the artistic resources or flair to develop incredible graphical assets like CryptoZombies?
If you want your app to gain wide-scale usage, UX / UI are at least as important as the underlying tech. If you don’t have this skillset, partner with or hire someone who does — or start learning 😉
25.) Since Loom Network seems that it will be a scaling solution for games… and since games need random numbers — Do you provide a solution for Random Number Generation (oracles or any other solution)?
There’s a few ways we can handle this.
- We have a basic pseudo-random that the validators can agree on, which is good enough for most cases not involving gambling.
- We have a way for validators to privately talk to each other and agree on random seeds, without clients of the blockchain knowing — useful for games of chance.
- You could use an external oracle for the highest security, but that’s not going to be the fastest method.
26.) Will usage of Loom network sidechains be restricted to games and social apps, or also B2B apps will be allowed — for example, supply chain tracking apps?
You can build anything on Loom — we’re just focusing on games and social apps in the beginning because that’s where we see the most potential for mainstream adoption.
27.) Will it be possible to send/receive arbitrary information to/from Ethereum mainnet — specifically, communication with some custom contracts?
Yep, you can have your DAppChains communicate with smart contracts on mainnet however you want to! Using mainnet for tokens with value that you then use to play games on the sidechain is one of the most immediately useful use cases we came up with, but we’re really interested to see what other developers come up with.
28.) What’s your plan for open sourcing the project? When will this happen? And are you going to open source everything or only part of project?
We’ve been slowly open sourcing pieces over time as they become more mature, e.g. we just released our Unity SDK this week.
Eventually, all core parts of the SDK will be open source.
29.) Where did you get those thug-life sunglasses?
Hahaha… someone noticed!
One of our developers had them lying around so I thought I’d throw them in the photo. When wearing them, it doesn’t look real, it looks like a bad 8-bit photoshop job. This was the original photo I took, but Dilanka told me not to cover my eyes 😉 — I’d imagine you can buy these on Ebay.
30.) What happens if I want to trade non-fungible (ERC721) tokens on a DAppChain? And how would it work for fungible tokens and Ether?
Assets can be traded via BitcoinStyle UXTO transactions on the DAppChains. Atomic trades are fully secure. If there are scenarios like betting an item, there is a short period of time you must trust the validators, if there is any logic that is required to transfer ownership.
There is no difference between Ether and non-fungibles converted to Plasma Cash for the sidechain.
31.) Are you using the Cosmos SDK?
We aren’t using Cosmos SDK. We are planning to support Tendermint POS when it’s available.
From this post:
DelegateCall’s standalone blockchain uses a prototype of Loom DPoS as its consensus layer. In the future, we also plan to support the PoS algorithms being worked on by Tendermint and Casper, as soon these implementations become available from their respective teams.
We are supporting Tendermint as one of our pluggable PBFT engines; Cosmos SDK is totally unrelated to us.
32.) If I had a DApp on Ethereum mainchain, and want migrate to a DAppChain, is it going to be just something like re-deploy the contracts I had on mainchain to DAppChain? Or is there some substantial rewriting I have to take?
DAppChains will support Solidity contracts for this very reason — you’ll be able to just re-deploy the same smart contracts.
33.) How are the private keys of each DAppChain secured?
If you’re asking about the private keys of nodes/validators, we have a private keystore that sits on the node (similar to how it’s done in Geth or Parity).
For users’ private keys on the DAppChain, there are a number of ways this can be handled. Either the user can hold the keys locally, or for a more seamless UX (like how we do it on DelegateCall), private keys can optionally be managed by a third-party key provider. We plan to go into this in more detail in future articles.
34.) There is no mature Plasma Cash implementation yet. Are you going to create one and open source it?
Yes, we’re building our own implementation that handles the specific use cases we need. This implementation will be open source and available to all users of our SDK.
Update: We announced our Plasma Cash Initial Release in June, 2018.
The End — PHEW.
If you read ALL of those questions and answers — please send me an email so I could give you massive respect 😇
So, those are the best highlights from the Reddit AMA.
Once again, if you asked us a question or even hooked us up with an Upvote — we really appreciate it. 🙇
Now, go get some rest because we’ve got plenty of great updates coming each week 😉
Loom Network is a platform for building highly scalable DPoS sidechains to Ethereum, with a focus on large-scale games and social apps.
Want more info? Start here.
Fan of blockchain gaming? Check out Zombie Battleground, the world’s first PC & mobile card game that runs fully on its own blockchain.
And if you enjoyed this article and want to stay in the loop, go ahead and sign up for our private mailing list.