The operation of any blockchain is based on the protocol consensus between its block-producing nodes. Basically the greater the number of block producers, the network tends to be more decentralized. Cardano is no exception.
To maximize decentralization, the creation of stakepools in Cardano should be very accessible, but the current practice involves many steps, and is not straightforward for non-experts, leading to a lack of number of Stakepool operators.
This MLabs proposal seeks to simplify the task of creating and operating stakepools in Cardano.
The MLabs company has a well-known reputation among Cardano developers. It has submitted 12 proposals on Catalyst, according to the information provided on the official site, Project Catalyst, obtaining financing.
MLabs has about 15 proposals for this Fund10 from Catalyst between compilers, game engine integrations, hosting services, and much more.
This project is presented in the “SPO Tools & Community Projects” category of this Catalyst Fund10, and will be fully Open Source.
The MLabs team offers a solution to creating and operating a stakepool for non-programmers: writing a NixOS module that includes everything needed to run an SPO node with a large number of configurable options.
NixOS is a Linux distribution built on top of the Nix package manager. It uses declarative configuration and allows for reliable system updates. It offers several “channels” of official packages. NixOS has dedicated tools for DevOps and deployment tasks.
This proposal significantly streamlines the process of creating a stakepool leveraging NixOS projects and nixos-anywhere, and reducing the complexity and technical barrier to entry, allowing a greater number of people to contribute as stakepool operators and, more importantly, increasing the propensity for decentralization across the Cardano blockchain.
The NixOS module operation will include everything necessary to run an SPO node with a wide amount of configurable options, adapting all the necessary IOG modules inside a flake created for this project.
The flake will implement a binary cache and NixOS tests to ensure that the combination of dependencies used work well together, and will also include a script that will be able to deploy the NixOS configuration to Linux machines.
To ensure better compatibility with target machines, the proposal will provide ad hoc NixOS modules for a set of bare metal and cloud hosting providers.
Indicators Of Success
Several key performance indicators will help assess the success of this project:
- Adoption Rate: Number of SPOs deploying their nodes using the toolkit.
- Reliability: Rate of successfully deployed nodes with no issues or minor issues resolved quickly. Bug reports will be a useful indicator in this case.
- User satisfaction: Evaluated through user comments, opinions and testimonials.
- Community Participation: Since this project is open source, the number of community contributions, pull requests, reported issues, and active participants will be useful indicators.
- Number of Stakepool Operators: Increasing the number of SPOs (including those without a strong technical background) thanks to the toolkit will be an important indicator of success.
The team promises to share the progress reports through the typical publicly accessible Catalyst channels. MLabs has a proven track record of compliance.
- 1st-3rd month
Scaffold the flake repository: A fully operational flake repository.
Configure CI and a cache: A fully functional Hercules CI pipeline and a configured cache.
Scaffold an “all in one” NixOS configuration for running an SPO: An all-in-one NixOS configuration for running an SPO.
- 4th-6th month
Automatically generated docs for “all in one” module options: Comprehensive, auto-generated documentation for the all-in-one module.
Start working on the script: The first version of the script for deploying the NixOS configuration.
- 7th-8th month
Finish the script: A finalized, fully functional script for deploying the NixOS configuration.
Make the script also push secrets: An enhanced script that securely pushes secret keys to the target machine.
The team clarifies that it applied conservative USD/ADA exchange rate to budget the work, ensuring that operations remain stable, regardless of market conditions. But in the unlikely event of a strong negative price movement above forecasts, MLabs may have to temporarily suspend work on this proposal, until the market recovers, and this decision would be made solely to protect the long-term viability of the business.
Main development tasks:
- Scaffold the flake repository: 10 hours
- Configure Hercules CI and a cache: 20 hours
- Scaffold an “all in one” NixOS configuration for running an SPO: 60 hours
- Automatically generated docs for “all in one” module options: 20 hours
- Start working on the script: 20 hours
- Finish the script: 20 hours
- Make the script also push secrets: 60 hours
Subtotal: 210 hours
For the post-development tasks:
- Testing (unit, integration, system, acceptance): 105 hours
- Beta release: 40 hours.
- Feedback and Improvement: 105 hours
- Documentation and User Guides: 40 hours.
- Support Plan: 20 hours.
- Post-release Review: 10 hours.
Subtotal: 320 hours
Subtotal: 530 hours + 105 hours (20%) change budget
Total: 635 x 95/hour = 60,325 USD x 0.21 USD / ADA = 287,260 ADA
MLabs is a development company in the Cardano ecosystem, IOG Plutus Partner.
The team is made up of developers who have helped build community projects like: Liqwid, SundaeSwap, Minswap, Optim, and many others.
By working with early-stage projects, the team has one of the largest groups of Haskell/Plutus developers in the Cardano community.
For this proposal, the DevOps and Nix developer is Andrea Ciceri. MLabs says that Andrea has been passionate about technology and computers since he was a child, with a theoretical mathematical background, Andrea worked for a few years as a full stack factotum putting his hands on many different technologies. His first contact with blockchain was with Ethereum as a developer of smart contracts for DeFi dApps. Then he discovered Nix, which changed his life forever. He currently happily works for MLabs as a DevOps and Nix developer for a wide variety of Cardano related projects.
You can see the complete team here.
I did a brief interview with Ben Hart, the CTO of MLabs.
LiberLion: Although MLabs has blockchain development as its main activity, it is not the only one. What other services do you develop?
Ben: The Cardano community likely knows us from our work with IOG and collaborations like Liqwid and Indigo. We were early adopters of Plutus and handled some of the early R&D. This work formed the foundation for our auditing division which we believe is second to none. We also operate in several blockchain ecosystems, and our experience building on Cardano has served us well as we’ve grown in this respect.
That said, blockchain is just one arrow in our quiver. We have a diverse team of developers and specialists. Our team members have expertise in several other domains, notably AI and fintech.
We are currently working hard to build out several SaaS and AI initiatives completely outside of blockchain – we can’t provide details just yet, but we are very excited. These services will perform the heavy lifting for clients and drastically improve productivity. We are also actively considering participating in the upcoming Deep Funding of SingularityNET round for those familiar. We look to make announcements in the coming weeks once the details here are finalized.
LiberLion: What is the vision of MLlabs and where do you want to go?
Ben: MLabs is a multi-purpose R&D house with several key areas of focus. MLabs operates as a consultancy in the blockchain space – providing both blockchain development and auditing for clients across the Defi, Realfi, Gaming, and NFT verticals. We’re also involved in several projects aimed at addressing climate change using technology, we’re looking to revolutionize the carbon output of AI training, and we also have mechanical engineers building the future of mass transport.
LiberLion: Do MLabs have offices or do you only work remotely?
Ben: Our head office is in the UK, and the majority of our roots are there. However, we are thoroughly a remote company. Embracing remote work allows us to work with some of the brightest minds globally. It presents its own logistical challenges, but the richness and diversity of talent it supports make it invaluable. Our clients appreciate this, and it has been fundamental to our growth.
LiberLion: Given some of the critique around the Solana blockchain, especially from the Cardano community, why did MLabs choose to engage with Solana?
Ben: The Solana blockchain has had some issues, but the majority of cutting-edge projects, even Cardano, have significant challenges as well as strengths. In general, we respect teams and communities who tackle hard problems and don’t back down despite issues and stumbling blocks.
Of course, we also respect Cardano immensely – its design principles are closely aligned with our expertise in functional programming and formal methods. This is largely why we’ve worked so hard, invested so heavily, and been so active in the space.
That said, MLabs’ primary focus has always been technology and leveraging it to improve lives. We think innovations from one platform can often be valuable to another – we’ve seen this with ideas from PolkaDot and Ethereum. To operate at the top of our game, we need experience with leading technologies. This helps us understand the problems and issues most important to our clients. Casting a wide net means we can build better, providing holistic solutions while remaining at the forefront of innovation.
You can see the original proposal in IdeaScale.