I've implemented nearly a hundred smart contracts with Solidity during my short blockchain career, but I'm ready to drop Solidity right now if I think about WebAssembly on the blockchain.

Interested to learn more? Let's take a look at what WASM can do for blockchains!

🧵👇🏻

1/
Before we jump in:

If you don't exactly know what WebAssembly is, this thread might help you understand the basics first. 👇🏻



2/
1. The status quo

The blockchain world is currently divided. There are many languages one can use to develop smart contracts on different blockchains.

3/
The Ethereum Virtual Machine has its bytecode that is a target for Solidity, and Vyper, for example.

Neo and its VM support Python, JavaScript, C#, etc.

Tezos has Michelson that can be a compile target for Python, LIGO (OCaml, ReasonML), etc...

4/
This list could go on and on. What we can take away from this is:

Many languages are supported but often not a single one that all blockchains can agree upon.

Developers usually try to settle on a few languages, not many. This hinders adoption and portability.

5/
There is often no native way to get smart contracts from one chain to another.

Bridges between a few blockchains exist that enable exchanging data and contracts, but they are not universal.

What's left is to implement a contract again and deploy it to another chain.

6/
This is certainly not the most effective solution, but having the ability to do so, could help increase the portability of contracts and standardization of libraries.

Blockchains with different opinions are fine. It enriches the ecosystem.

7/
All of them doing their own thing could, however, well hurt themselves in the end.

If developers have to decide, they usually try to settle on what's best supported, has the largest community, and the greatest ecosystem.

8/
Relearning a different language, ecosystem, and more is costly, both in time and money.

This fragmentation hurts the whole space.

9/
2. What WebAssembly can change

WebAssembly is already a compile target the community could agree upon for web development and even server-side use cases.

The tooling is already being built, and the specification worked on consistently.

10/
WASM runtimes are sandboxed and make it difficult to escape.

Performance is also a key concept of them.

All this ticks many boxes necessary to make a great smart contract execution environment.

11/
What's even greater for the community and all developers is that WebAssembly is a compile target.

You can still use your favorite language, create your smart contract, and then compile it down to WebAssembly.

12/
WASM modules can even be used as libraries in any language.

You've written a library in Rust? Let others use it from Python or JavaScript (AssemblyScript).

This can result in a massive boost for the ecosystem.

13/
JavaScript became so huge because the ecosystem is so huge.

There is a library for nearly everything, and it involves only some languages (all that somehow compile down to JavaScript and are frequently used).

14/
Having the choice to contribute to an ecosystem in nearly all languages could have a similar effect, only at least a hundred times larger.

The potential of this already has enough fuel to lift more than one rocket off the ground.

15/
3. What is currently done for WebAssembly on the blockchain?

The blockchain space is still in its early stages regarding WebAssembly.

There are some early adopters and some specification efforts already going on, though.

16 /
Ethereum, in the process of moving toward 2.0, has begun work on a specification for an Ethereum Virtual Machine that executes WebAssembly.

There are also already some experimental implementations. 👇🏻

ewasm.readthedocs.io/en/mkdocs/

17/
Polkadot and its Substrate framework are built from the ground up with WASM support in mind.

This is one of the most prominent use cases of WebAssembly in blockchain space already live right now.

polkadot.network 👇🏻

18/
Some other minor efforts are going on that are not as prominent as the ones shown above.

Especially Ethereum and its eWASM (the new virtual machine executing WASM) have a huge potential to influence the whole blockchain space.

19/
Ethereum has set standards in the past, and it will probably continue to do so in the future.

It's definitely worth keeping an eye on this project and see where they land.

20/
4. Thread end

Well, you've made it to the end of this thread. 👏🏻

I hope you learned a thing or two and enjoyed reading all this!

If you like content like this, follow me for more. I regularly post valuable tweets and threads.

And btw: I love new friends! 💛

21/
Want to comment on this thread?

Respond to the first tweet, this is the most visible one! 👇🏻



22/

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Oliver Jumpertz

Oliver Jumpertz Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @oliverjumpertz

23 Jun
I've developed software for over 21 years now, which is way over half of my lifetime, both professionally and as a hobby.

Here are some of the most valuable lessons I learned along the way.

A thread.
1. You will never know everything

Especially at the beginning, I thought I could learn everything, and I thought this for a good portion of my developer career.

But each time I learned something new, a whole new world of other concepts and techniques opened up.

1/47
It may seem tempting to try and learn it all, but it's a never-ending endeavor.

There will always be another library or framework and another cool thing you could also learn.

2/47
Read 48 tweets
22 Jun
Web 3.0 is the next evolutionary step of the internet and an awesome one, to be honest.

Every web developer, beginner, junior, or senior can and should contribute to it, and it doesn't even take too much effort.

Let's see how. A thread.

1/
If you are still unsure what the term "Web 3" or "Web 3.0" really means, you might want to read this thread first. 👇🏻



2/
1. Why you should care

The Web is inevitably going to evolve. The question is not if but when this is going to happen.

This process won't happen fast or overnight, though. Instead, it will be a slow transition, nearly unnoticeable.

3/
Read 21 tweets
21 Jun
I have spent a significant part of my dev career in web development and nothing else excites me more than WebAssembly.

Let me introduce you to the language that will not only change the web but even more.

🧵👇🏻

1/
1. What Is WebAssembly?

WebAssembly (short: Wasm or WASM) is a binary instruction format for a stack-based virtual machine.

It's a byte-code that can be executed and mainly targets the browser and the web (hence the name).

2/
WASM has two formats:

- A binary format that executed by WebAssembly runtimes
- A human-readable text format for debugging purposes

You can convert one to the other and back again.

3/
Read 28 tweets
7 Jun
Here is a collection of visual JavaScript tips and explanations that can help JavaScript developers of any skill level!

🧵👇🏻
The anatomy of a for-loop in JavaScript. 👇🏻
The anatomy of a while-loop in JavaScript. 👇🏻
Read 17 tweets
6 Jun
@ashnichrist Hey, Blockchain engineer and crypto investor here.

Sorry for the long answer, but I like to give people deeper information as crypto is both difficult and volatile.

I'd highly recommend you to start with actually finding out what lies below.

1/X

udemy.com/course/blockch…
@ashnichrist After this, the Binance Academy actually has awesome articles that at least touch the surface enough to be of real help.

2/X

academy.binance.com/de
@ashnichrist When you have an idea of what crypto approx. is, I'd start by getting into stable coins first.

Those are coins tied to some real-world value like the dollar or gold.

They aren't volatile, and you can still get pretty good interest rates with them.

3/X
Read 6 tweets
6 Jun
Here are 5 Svelte UI Libraries that will kickstart your next project!

🧵👇🏻
1️⃣ Svelte Material UI

Material is Google's UI design system.

Svelte Material UI brings this design system to you in the form of pre-made Svelte components.

sveltematerialui.com
If you love a flat design and are a huge fan of Material, you'll love Svelte Material UI!
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(