Bismuth: A Dapp Building Platform that doesn’t Bite
Newbies to crypto development tend to hold the opinion that blockchain and Dapp building is a coding nightmare. This fear is not entirely uncalled for.
C++ is an object-oriented programming language that has a notoriously steep learning curve. Yet it is the language that the godfather of cryptocurrencies (Bitcoin) was built with. Therefore when aspiring developers come to this realization and attempt to try C++ they can easily be discouraged due to its unforgiving environment.
Vitalik Buterin, one of the co-founders of Ethereum decided to take a different path. While Ethereum was no doubt inspired by Bitcoin, they decided on creating their own language (Solidity) to meet their specific needs.
However, we don’t all have the luxury to create a bespoke language to fit our requirements nor the desire to become a C++ master.
If developing your own language seems like a pipe dream and the thought of coding in C++ is turning your stomach, what is your best option? Python. An extremely versatile programming language that is forgiving and easy to maintain for the budding developer. It really is quite surprising why more developers haven’t taken this route. Bismuth aims to change that.
What is Bismuth?
Bismuth is a blockchain that allows developers to create Dapps with Python.
Jan, the creator of Bismuth, has brought to life a lightweight blockchain platform that allows for changes to be made easily and for experimentation to take place effortlessly.
Bismuth’s philosophy is all about simplicity and accessibility. By allowing developers to use Python to create their Dapps, they are giving budding developers a platform to bring into reality ideas, that may have otherwise stayed in their minds. Python truly does represent an evolution in programming language and is just as good of an option for an enthusiastic amateur as it is for the seasoned veteran. However, it is worth noting that there is also support for other programming languages on the platform such as C++, Go, PHP, and C which allows for straightforward interfacing from third-party applications.
While the low barrier for entry may seem alluring, if it were at the cost of security or lack of scalability it would be pointless. Jan has made sure that not only is the platform welcoming to developers, but that it also provides security allowing what is being created to be well protected and for growth to happen unhindered. Bismuth understands how important and yet fragile trust can be, they endeavor to ensure the platform is a safe space for decentralized creations to be brought to the world.
Is Python really THAT good?
Accessibility is at the core of Bismuth’s goal. Python allows for this to be made possible. An interview with Jan recently brought to light why he believes using Python in block-based blockchain systems is the future.
“You need not compile the code after every tiny change you make, which saves hours of work. Python has multiple standard libraries and many others available, so it makes code easier to write, read and extend very quickly. It is a language with ideal performance/simplicity ratio for block time-based systems and many-participant systems that are limited by network performance.”Jan
A Lego Approach – making your life easier
To make the process of creating a Dapp even easier, Bismuth has adopted a “Lego” approach to development.
For example, a developer who wants to launch from the platform can easily choose from several open source projects or use plugins to accelerate development. All this is enabled because message encryption, tokenization, document archiving and tracking are native to the platform.
Built on an adaptive programming language, the Bismuth protocol is literally a playground for developers who can build anything. The freedom given to developers on Bismuth is unmatched. Bismuth’s goal is not to target any specific verticals but to give room for developers to freely craft the Dapp that fits their exact requirements.
In an attempt to limit network congestion, the project took a different approach to execution and scalability. This alteration means that only users that interact with the Dapp are capable of being aware of its state.
At no point are developers forced to adhere to system-wide changes. On the contrary, users can pick and choose which modules serve their needs best.
Developing made EVEN easier: The Bismuth Plugin system
The lightweight Bismuth plugin system further simplifies the experience for developers trying to bring their ideas to life.
The plugin system is an interface where optional node tweaks can be integrated, similar to WordPress plugins. This is all possible without a compilation setup and interactions are not stored in the blockchain.
It is worth noting that the plugin is triggered by events, or need, of the node. Within each node, there is a plugins directory that contains the code. Plugin use is consistent across the Bismuth ecosystem and allows extensions to be built to a node or wallet within the same accessible Python framework.
An example of an app that uses the same plugin architecture as the main nodes is the Tornado wallet.
The wallet is extensible and enhancements can be made, a Dapp interface coded and delivered with the project’s wallet. That’s the level of customization available in Bismuth. However, this is merely just scratching the surface of its potential.
Check out this excellent resource that comprises guides for building Dapps on the Bismuth framework (Hack-with-BIS).
Bismuth is a welcoming platform that hopes to facilitate the process of bringing more great Dapps into reality. Being built on Python means it is very accessible, allowing for those that are interested in Dapp development to get started without trepidation. Unlike other platforms, Bismuth gives developers a chance to create exactly what they want without any concerns regarding scalability or security.