January 18, 2024: Jupyter, Bringer of Jollity ππͺ
How Vyper slithered its way into Jupyter Notebooks, Google Colab, and Remix
Jupyter
We track a lot of important flippenings in crypto, but the flippening nearest and dearest to our hearts was Python overtaking Javascript in 2018 and never looking back.
Among Python users, the Jupyter Notebook ecosystem is dominant. Per JetBrains, Jupyter tends to land at the top of the pack in their yearly surveys⦠(with related tools like Google Colab and JupyterLab also landing in the top tier)
For the non-coders out there who may be unfamiliar with coding, Jupyter Notebooks may be your gateway drug. Jupyter Notebooks are popular in part because they provide a simple interactive environment for presenting and working with code. They gained popularity within academia and have spread to the work world.
Coders enjoy being able to break their code into short chunks, easy to manipulate and display results. Non-coders enjoy the ability to run and see the gorgeous visualizations and interactivities that emerge from the code.
Vyper, being a Pythonic smart contract language, played very well with Jupyter notebooks from the introduction of Titanoboa (a pythonic native Vyper interpreter).
Except it missed a few key pieces. For example, it was essentially impossible to execute transactions against live blockchains without entering your private keys, which violates the most basic tenets of cryptocurrency wallet security.
Thanks to Daniel Schiavini for solving this problem! Now you could just use an extension like Metamask to sign your transaction.
In other wordsβ¦ imagine you ask me to help you, say, post a Curve governance vote. I could send you a python script that works on my machine, where Iβve taken pains to install a working copy Brownie and Ape. But I canβt sign it cause Iβm in the retrograde USA, where using blockchains is a one-way ticket to the electric chair.
I can send you the script, but youβre not good on the command line, so you get stumped on just installing the tools. We get on a call to screenshare and waste a few hours fighting dependencies before I just recommend you buy a new computer. Ugh.
Better ideaβ¦ what if I just send you a Jupyter notebook. Jupyterβs easy enough to install and youβll have a nice easy local tool.
βOh no, Iβm afraid of the console, make it easier!β
OK, try navigating to https://try.vyperlang.org/, which provides a working online environment with all Vyper dependencies already installed. Just upload your notebook there and youβre in business
βI found the upload button, but I canβt even find the notebook on my machine!β
OK, maybe your grandparents are too obtuse to find their Download folder, no judgement. You can just upload your notebook to Google Colab and share it with them. No installation needed, you just share a link, they can press the βrunβ button, sign the wallet popup, and itβs deployed!
Even if your coding skill is minimal, perhaps you can figure out how to work in something like this?
Hint: you would only need to replace the red text in this exampleβ¦
Vyper continues to become normie friendly, and sneks are rightly stirring with excitement about this development:
Whatβs the big deal! If it looks easy on the frontend it must be easy on the backend, right????
Oh sweet summer childβ¦ these things are always ugly under the hood. In this case, Ser Schiavini had to do battle with ancient curses to deliver the nice experience you see before youβ¦
A partial snapshot from Github shows off just how much work went into thisβ¦
The full story is well worth a read on his Medium, easily comprehensible to even lay readers with much more background on everything that transpired.
This is the Remix
Itβs not the only big development in Vyper UX as we attack 2024. Remix has long been aspiring blockchain developersβ first entry point into coding, because getting started requires only opening a link in your browser: https://remix.ethereum.org/
Historically, their Vyper support had been a bit janky, but it just received a big upgrade:
If you want more details about how to get started using Vyper with Remix, James Bachini provides a great tutorial.
Big Picture
Vyper got hardcore devs hooked early on, but thereβs only so many 100x coders out there. To gain market saturation, you also need a way to get entry-level developers onboard. As Vyper penetrates to every developer environment, it provides a path for any dev to make their way to Vyper.
Once upon a time, weβd recommend users interested in learning blockchain development start with Solidity because thereβs just so much material and Vyper was too niche. Our recommendation was to learn the basics of Solidity, then youβll have an easy enough time migrating to Vyper.
In 2024, however, Solidityβs gone off the rails. Meanwhile, Vyper has evolved to become the better framework for everybody from beginners to experts.
Give Vyper a shot this year and see how good itβs gotten! Join the Discord! Or check out our series of video tutorials that can get you up and running in minutes:
Or watch the talks from last yearβs Vyper Day, which got posted recently, to get a sense how amazing this community has evolved:
Great post. Thanks for all the compliments π