Back to All Episodes
Season 4Episode 154

Getting Started with Fuel Network

March 8, 2025
37m
1 Guest

Listen Now

About This Episode

In this episode of DevNTell, Narb welcomes Nazeeh Vahora, a Solutions Engineer at Fuel Network. Nazeeh shares his career journey from a Web2 frontend engineer to a Web3 developer, emphasizing the role of open-source communities like Developer DAO in his growth. He provides a comprehensive technical overview of Fuel Network, explaining how it functions as an operating system purpose-built for Ethereum rollups. Nazeeh details Fuel's unique architecture, including its use of predicates for stateless contracts, scripts for transaction batching, and a UTXO-based account model that enables parallel transaction execution. He also demonstrates the Sway programming language and tools available for developers to start building on Fuel.

Key Takeaways

1

Fuel Network is an operating system designed to solve scalability issues for Ethereum rollups without sacrificing security.

2

The FuelVM addresses limitations of the standard Ethereum Virtual Machine (EVM), such as low throughput, state bloat, and high gas fees.

3

Parallel transaction execution is achieved through a UTXO-based model, which identifies specific state elements touched by a transaction.

4

Predicates allow for stateless smart contracts, where the bytecode is provided with the transaction rather than living on-chain, reducing state bloat.

5

The Sway programming language combines the best features of Rust and Solidity to offer a performant and developer-friendly experience.

6

Fuel provides a suite of developer tools, including the Sway Playground, TypeScript and Rust SDKs, and the `create-fuels` CLI for rapid project scaffolding.

Featured Guest

NV

Nazeeh Vahora

Solutions Engineer @ Fuel Network

Fuel Network

Episode Transcript

Narb

GM, GM. Welcome to what's going to be another great episode of DevNTell. So if you didn't know, DevNTell is a weekly podcast hosted by Developer DAO, allowing founders, hackers, and anyone in between to come on the show and showcase what they've built. And today, I'm ecstatic to welcome Developer DAO OG and Fuel Network Solutions Engineer, Nazeeh Vahora. If you didn't know, Fuel is an operating system purpose-built for Ethereum rollups. Fuel allows rollups to solve for parallelization, state-minimized execution, and interoperability without making any sacrifices. So if you stick around for today's episode, you'll see Nazeeh give an overview of Fuel, what it is, the problems they aim to solve, the Fuel way of solving them, and how to get started building with Fuel Ignition today. Alright, let's get into it.

Narb

GM, GM. Welcome to the show, Nazeeh. Pleasure to have you on. It's been a while and happy to finally get you on the show here.

Nazeeh Vahora

Yeah, thanks for having me. It's great to be here. I mean, like, it's like coming home after a really, really long time.

Narb

Totally, man. Totally. Yeah, I guess for folks who aren't interested—or, sorry, not interested—folks who aren't familiar with you, would you like to give a brief introduction about yourself?

Nazeeh Vahora

Yeah, sure. Definitely. I would love to. So hey guys, I'm Nazeeh. I'm a Solution Engineer at Fuel. I started my Web3 journey back a couple of years ago with Developer DAO, obviously. Developer DAO was the first open-source community that I joined and I got a lot of exposure to the Web3 community. And just after joining Developer DAO, I got to meet a lot of cool folks like Narb and a lot of other people and like, I did a lot of open-source contributions there. And after that, I also started actively contributing to some other Web3 communities like Gitcoin DAO and BuildGuild and through which I found my first Web3 gig full-time. And just like that, I did a couple of multitasking work like publishing articles, creating video content and like a lot of other things. And yeah, I think since almost one year now, I am with Fuel as a Solution Engineer. So I think that's a bit of a rough overview about me.

Narb

That's wonderful, man. And just curious, like, what brought you to Developer DAO? Like, what was the allure? I know a lot of people say that it was like the NFT craze at the time, but yeah, just interested to hear.

Nazeeh Vahora

Yeah, so I think for me, it was the situation. So I was into college at that time and it was the COVID time, so I was doing a lot of exploration. I was actually working in a Web2 job at that time and I was a frontend engineer, by the way, during those times. And I was looking to explore some new stack, so I came across this whole Solidity. And I started learning Solidity and then I got exposure to the whole blockchain world. So I did some crash course from Udemy to learn Solidity and then started following some educators on Twitter and that's how I got to know about Nader and once I was watching his live stream where he just like minted the NFT collection and we kind of ended up in a DAO. So that was kind of like the whole story of me joining the DAO. And I still remember, like, when I joined there were like only nine channels in Developer DAO. Yeah. And we had only one voice channel for like the meetings we have had. So yeah, it was really early back then, like just a group of people hanging out every night and building cool stuff. So yeah.

Narb

Yeah, man. That's basically the soul of Developer DAO and yeah, we know the Discord kind of got out of hand with all the channels, but we're bringing it back to the old days, reducing it just to like the bare minimum. Yeah.

Nazeeh Vahora

Definitely.

Narb

Yeah, sorry, go ahead. Yeah, I guess, what was your fascination with tech? Like, what got you interested to come into the tech scene? Were you always a builder at heart even from a younger age, or...?

Nazeeh Vahora

Yeah, so for me, I think I was always into technical stuff. And by technical, I don't mean like coding, but I always liked to go into the rabbit hole of how things work. So when I was in school, I was really much into physics, like I used to like go into the rabbit hole, okay, how this thing work, how this thing work? And that kind of carried away with me throughout to the college. So I used to question things like, okay, how these things work and how the whole entire thing works. So I think that curiosity got me into the development. And initially, I was an Android developer because I had this cool thing in my mind that you can just ship apps and you can put it on Play Store and you can earn money with that. So that was my intention to like earn some money while in college. So I did Android development back then for an almost like a year, but I didn't like it much. So I started doing web development. I remember like I didn't know how to like build a basic web app and I participated in a hackathon and now I somehow got through it. So yeah, that kind of built curiosity around tech scene and the whole coding. So after that, I also did a bit of competitive programming back then to get into some tech giants but yeah, I again left that and yeah, here is where I am.

Narb

And here you are, exactly, exactly at Fuel, Fuel Network today. Awesome, man. Yeah, I'm always very fascinated to hear everybody's origin story. Everybody has an interesting flare to theirs and you're no different.

Nazeeh Vahora

Yeah. And I guess, now that you are at Fuel Network, what drove you to basically go there? What interested you the most?

Nazeeh Vahora

Yeah, so ever since the beginning, I am very much into making the life of developers easier because being a dev, I understand what's the pain point of a dev and what they struggle with. So since earlier times, I'm always into like building infrastructural tools. Even if, even when I was not at Fuel, I was building all the dev tools and infrastructural tools. So I was always wanted to work on such a project or such an infra that helps to make lives of people and essentially devs easier. And Fuel was one such platform which is building really cool stuff and which are solving the things that they are doing from the complete scratch in a really, really different way from the scratch. So that kind of got me interested and I thought of giving it a try.

Narb

Excellent. Yeah, love it, man. Yeah, I think that's a perfect segue to get into what Fuel is and what you have prepared for us today.

Nazeeh Vahora

Yeah, sure. So I have actually a presentation. So if you wouldn't mind, can I share my screen?

Narb

Yes, sir. Awesome. So let me just do it. Let me know if it's visible. Yeah, screen's all yours. Go for it.

Nazeeh Vahora

Yeah, so firstly let's talk about Fuel, what that is and what we are doing and why we are doing the way we are doing.

Nazeeh Vahora

So firstly to get started, I am Nazeeh. I am Solution Engineer at Fuel. Again a bit of history about me, I used to be a frontend engineer, open-source contributor and I also create written as well as video content. And you can find me on X at this handle.

Nazeeh Vahora

And now, before talking about Fuel, let's talk about EVM and what problems we face as an EVM. So firstly, everyone of us have used Ethereum and I think most of us have struggled with one or the other things. To start with, the bad UX. I mean like, Ethereum is sometimes not a really good chain to use during the high congestion time or like the peak period. There are certain reasons why we are facing these issues. To start with, the lower TPS. So I'm not saying Ethereum is the issue, I'm saying EVM is the issue. I mean like both are a bit different. So firstly, EVM offers lower TPS. So lower TPS I mean like the lower throughput and that also contributes to like higher gas fees. By higher gas fees, I mean like it is still one or two dollars now but earlier back then in 2020 or 2021, one has to pay like fifty dollars to just mint an NFT. And I don't want to like pay like such a high bucks for a free NFT. So this is one really big pain point. Imagine you are like launching an NFT collection which is token gated and next thing you know that, okay like Ethereum is not usable because the gas fees are beyond the roof. So that's a really big problem. And another thing is the large state growth. So the way Ethereum model and Ethereum has designed, its state is like growing like tremendously and every time I make a transaction, the block builder has to go through the entire state growth and just deal with the entire state. And this state keeps on growing, piling up and up and eventually it will be like unhandleable at one point. And that is also a reason that Ethereum is so slow, otherwise it will just pile up this state growth tree really quickly. So all in all this, this points towards the direction that Ethereum is not really scalable on at least on a consumer hardware.

Nazeeh Vahora

So all this contributes to like a some Layer 2 solutions like for example, let's say if I would want to you know like make it scalable like Ethereum is not the one or like not the solution. And if you can just like go and Google like bad design decisions for EVM then you can, I'm sure like you can find really, really good articles on it. So let's talk about how we can fix this. And here comes the FuelVM. So FuelVM is designed to withstand like large amount of transaction volumes along with providing Ethereum security. And that gives I think the tagline to FuelVM that FuelVM is Ethereum without limitation. Now imagine that all the things that you are experiencing or like all the problems that you are experiencing with EVM, it just vanishes away and you can just have this superpower EVM without any limitations. That is called the FuelVM.

Nazeeh Vahora

Now let's understand like what FuelVM is, what does it provide. So firstly due to like the unique architecture and the unique design of FuelVM, we have been able to achieve the Ethereum security even though like FuelVM is not an EVM chain. It is a non-EVM, so it does not compromise on security. You can still achieve Ethereum security on FuelVM.

Nazeeh Vahora

And along with that, it also provides native assets. And what do you mean by native assets? For let—so for example, let's say on EVM you have got like all these ERC-20 tokens. Those are not really native assets. You need to like deploy the whole contract and like do all the stuff. While on Fuel, each token is a native asset. And by that, I mean like you can actually pay gas fees using like any of the token. I mean like I can just deploy my own ERC-20 token and it can behave as a native token. Now another thing that FuelVM provides is a parallel transaction. Now what does it mean? So currently on EVM, it can only execute one transaction at a time. It does not let's say bunch—bundle transaction and execute all at once in a single batch. And that is also a reason of like lower TPS. So Fuel fixes this. Due to like the unique design that Fuel we have, we offer parallel transaction out of the box.

Nazeeh Vahora

Now another thing is native account abstraction. Now you don't really like to have to use like another EIPs or like other things, you can just use FuelVM and it will provide native account abstraction out of the box. And due to all these design goals, we have been able to achieve 600 TPS on Eth DA. Which is like a really high TPS especially on Eth DA and we are also working on our another upgrade of the network called Redacted, which would be like Ethereum on steroids—sorry FuelVM on steroids—because we will be using Alt DA and we have been able to achieve like 150K TPS on Alt DA. So that would be like FuelVM on steroids.

Nazeeh Vahora

So due to all these things, I mean along with all these things, we also provide great interoperability. And by great interoperability, I mean that you can, even though Fuel is non-EVM chain, you can use any wallet on Fuel. Let's say it's MetaMask, it's Solana wallet, or any wallet. Even though I have Phantom installed, I can just use that and interact with Fuel. So these are like some great user experiences and the powers that FuelVM provides out of the box and at the native level without doing any some kind of tweaks. I mean this is not the only Layer 2 that provides such thing but there are other Layer 2s as well, but this is the only Layer 2 that provides all these things combined in a single solution. I mean other L2s do provide, but they do one or the other tradeoff and compromise either on the security or the interoperability. But Fuel provides all of these experiences in a single solution.

Nazeeh Vahora

I would like to highlight one such tweet from one of my friend. So due to such great TPS and such great design on Fuel, you can actually do 8,000 transactions with one dollar gas. Like, which is like really, really highly efficient way of doing the transaction and it's actually signifies that how scalable Fuel is. While on Optimism, you can do 11 transaction and 14 on Arbitrum and likewise. So like there are, you can see like there is massive difference between the number of transactions you can do with just like one dollar on Fuel. Now let's talk about how Fuel is doing that. So we have a couple of design choices that we have made fundamentally different and one of them is the predicates. Now I would like to give a high-level overview of what predicates is because it is relatively newer concept. So you can imagine predicate as some kind of safe which gets unlock when you provide a key. So for example, let's say you have some USDC locked in and you have put the password in it and you are telling this predicate okay like only allow someone to access the fund when they provide this password. Now what it does? Whenever you make a transaction request, it needs to come with the password. This predicate will check the password and if it satisfies the condition, it will allow the transaction to pass, otherwise it will block the transaction.

Nazeeh Vahora

Now let me just show you some really, really good example. Just a second, my keyboard got disconnected. Yeah. Oops. Yeah, here we go. Now let me show you some good examples of predicates. Yeah, searching through the GitHub UI is always interesting experience. Yeah. Alright, so yeah, here is some easy one. Let me just zoom in for better clarity. Yeah, so you can see that in this I have store the password and I have this function over here that will return true if my password matches this 1337. So you can put in basically any condition over here. It could be let's say EVM signature. I can check for the signature over here and it can behave like an account abstracted wallet out of the box. And that's how Fuel provides native account abstraction as well. So this is a really cool architecture and the main highlight about this is that this is whole completely stateless. I mean like the bytecode does not live on chain. You can actually provide the bytecode with the transaction. So you can imagine this as a stateless smart contract. I mean this could be anything, this could be like stateless order book where you are not storing state on chain and the entire transaction or like the entire state is like in your transaction and it does not really bloat your state.

Nazeeh Vahora

So it solves a really massive problem that we have with EVM. Now due to predicates, these are some really, really good benefits that it provides. To start with native account abstraction. So I just mentioned that instead of the password we can just check for the EVM signature and it can behave as the account abstracted wallet. Now these are stateless contracts and by that I mean it doesn't really store state on chain and due to this it also provide parallel transactions. Now let me just give you high level overview of how that's possible. So with EVM, when a transaction goes through, it does not really mention that which state changes it will touch. And that's the reason that EVM is not able to provide parallel transaction. While on Fuel, we have UTXO based account model, which is totally different from the traditional account model on EVM. And with UTXOs, you are certain that okay this transaction will touch these state elements. And with predicate you can actually you know release those funds in a in a different way that it doesn't really touch each of the states or like each other states and that provides parallel transactions out of the box.

Nazeeh Vahora

Now this was one of the main key feature of the FuelVM and another one is scripts. Now scripts is another architecture of Fuel where it lets you to batch transaction in a single transaction. Now let's say that I have 10 different functions, right, and I want to batch those transaction in a single one then I can use scripts and it will bunch the whole transaction and it will just put that as a single transaction in the VM. So this optimizes the whole transaction architecture in a really really good way and up to a very high level. And let me give you an example of what it's capable of. So let's consider that I have token A and I want to reach token D and in between there will be token B and token C. Now if I am on EVM I have to let's say first swap from token A to token B and token B to token C and then token C to token D. So this is three whole transactions. And if I am on Ethereum I will also have to give allowances so like the whole transaction will get doubled. So like from token A to token D there are six different transactions.

Nazeeh Vahora

Now if on Fuel, what we can do is firstly there will be no allowances as like all the assets are native assets. And what we can do on Fuel we can just mention like hey like I want to swap from token A to token B then token B to token C and token D to token D. Now instead of doing this whole three different transactions, what I can do is I can just club those in a single one and I just need to like send one transaction from my wallet and in return I will have token D in my wallet. So that enhances the whole transaction architecture in a really really good way. So this was—these were like one of the key architectural changes that we have done and that lets you do such a high TPS. I mean like these are not the only one, I'm just mentioning the main ones over here. I mean of course like we have better op codes and like a lot of different things. I mean like we also just launched this decentralized sequencer a couple of weeks ago, so like there are lots of different things but I'm just mentioning the high level overview.

Nazeeh Vahora

Now this was from the user perspective but I think like a successful L2 is only possible when it is also for developers and it's really good for onboarding new devs. So let's see like what we have for devs. So firstly to start with we have our new whole Rust-based DSL called Sway. And Sway is basically the combination of Solidity and Rust. It extracts away the best part of Rust and Solidity and fuses them in. It is really, really good to get started with. You might think that okay like it is completely new but let me just show you this Sway playground. So this is similar to what we have for Ethereum. What you can do is like you can click over Solidity and it will give you the Sway code for the Solidity code. We—you can also use this for your own smart contracts. We have our transpiler Charcoal that lets you transpile the whole Solidity code into Sway code and you can just get started with it. Now another thing is UTXO-based transaction model. I touch a bit on that in a couple of previous slide but to give you an high-level overview, UTXO behaves like coins. So let's say in a traditional world, you can have coins let's say 5 dollar coin, 10 dollar coin. So whenever you are going to a grocery shop, you are telling the shopkeeper okay if you are buying let's say 12 dollar item so you can say okay I want to buy this 12 dollar item and I have 15 dollars.

Nazeeh Vahora

So you will just give 15 dollars to the shopkeeper and he will keep the 15 and give you 3 dollars change. So UTXO behaves similarly. I mean like you have UTXO coins and you can just spend those coins. And actually this is the one of the reason that that's why Fuel offers parallel transaction out of the box because whenever you have UTXO coin, you are certain that okay my transaction will touch this and this state so you can execute multiple transaction in parallel. And also let me touch this another really cool thing about UTXO. So in account-based model, whenever you want to let's say get balance of a user address, so what you have to do you have to like calculate the all the transaction history of the user and you have to like add up all the transactions and then give the user balance. So here you have to store all the transaction of the user. Like imagine if my address has done like thousand transactions, so for the entire time of my life, Ethereum will have to store all the transaction and then give the address which is like not really efficient way of storing things out. So what UTXO does is basically let's say I have 50 coins of let's say 20, 10, or let's say like another 10 or 10. So I have like such coins of UTXO. Now whenever someone asks for my balance, I just need to like adds up the UTXO and give the balance. I don't really matter or like I don't really care what transaction I have done previously or how many transactions I have done.

Nazeeh Vahora

So it also reduces the state bloat in a lot way because I just need to like look at the existing UTXO and give out the balance. So UTXO is another architectural change that enables such a high throughput on Fuel. And another one is our own execution client that is Fuel-core and following up with that is our own orchestrator Forc. And for building on Fuel we have a really good SDKs and tooling. Firstly wallet SDK. I mentioned previously that you can use any wallet on Fuel and that is possible because of our wallet SDK. I mean you don't have to do any other thing or out any complex thing to implement it. If you're building on Fuel and you want to add support for MetaMask or Phantom you can just use our wallet SDK and you will be good to go. Now another thing is our TypeScript and Rust SDKs. I mean these are really, really good SDK if you are building on in TypeScript or Rust. Using Rust you can test the whole smart contracts and with TypeScript you can build the frontend out of it. And with this whole tools you can get a really flexible development environment out of the box. I mean I have mentioned the main ones but we have many more. If you just visit our docs over here you can just scan the QR code you can really find some good getting started guides. Let me just show you. Yeah you can just follow along these guides and you will be good to go. If you want to run node you can just go over here.

Nazeeh Vahora

And also I would like to highlight over here that a lot of other chains claiming some high TPS and some high really really million TPS. So I would like to mention that Fuel enables scaling on consumer hardware. And by that I mean that you don't need a supercomputer. Someone will say like okay like we are offering 1 million TPS, but on what hardware? If you are asking me to use 1TB RAM or like some 15-core CPU, then I'm not up for it. So if you just look at the node requirements for Fuel, yeah, you can just run Fuel node in your own MacBook. I mean you can just spin up the whole Fuel node in your MacBook and you will be good to go. So Fuel offers scaling on a consumer hardware which is I think really really good way of scaling things out and not a much other L2s offer that. So that is the rough overview about Fuel and yeah, I mean you can just go over here read about what is Fuel, what we are doing and you can quickly get started with it. So yeah that's the rough overview about Fuel.

Narb

That's amazing man. And yeah, it certainly seems very, very feature-packed. Like, what would you say is the best way for developers who want to start working with Fuel, what's their—what would you recommend as their Hello World or, yeah?

Nazeeh Vahora

Yeah, yeah, let me show you again. Yeah so if they want to get started I think they can firstly get some understand what Sway and how things work. And first thing they will—they can do is if they want to learn Sway then we have Sway by Example, just like Solidity by Example. And this is the Hello Sway program that will get them familiar with the whole smart contract language. And another thing is we have create-fuels. Yeah we have this create-fuels. So this is kind of a the super command I would say that lets you scaffold the entire project for you. For example if you just run this simple command it will out of the box initialize the entire project for you. You can see the directory structure, it will have the really good frontend that will be already—that already comes with the good counter example. You can just interact with it and if you want you can just deploy it on node. And you can also customize contract and yeah it basically allows you to fully customize and also provide a really, really good boilerplate to get started with it. And you don't really need to worry about okay how things work, just like run this simple command and you will be good to go.

Narb

Amazing. I love simple. I love simple, so... and for folks who start playing with Fuel over the weekend and have questions, what's the best way for them to get those answered? Is there a Discord, should they reach out to you personally, what would you recommend?

Nazeeh Vahora

Totally. So first thing I would recommend is get on the Fuel forum. We usually replies within like 12 to 24 hours. And if you want to even reach on Discord you can find the Discord link in our website. And yeah there must be somewhere in the bottom. Yeah here you can just find it and join our Discord and we are highly active there. So yeah.

Narb

Amazing. Yeah this is certainly very a very positive thing for the Ethereum ecosystem and it's really cool to see how you guys brought together the best of Solidity and Rust. Like from your experience, was there a high learning curve to be able to get started pretty quickly with Sway or...?

Nazeeh Vahora

Yeah, so if you are coming from a Rust background, then it's very similar to Rust. I mean like you are already onboarded with Sway. But if you come from a Solidity background then you might find a bit difficult for a day or two but yeah just as I mentioned you can use our Sway Playground and it will do a lot of things for you. For example, you can compare code line by line side by side and you can really get good grasp of things from here. So I mean it is a bit of a learning curve but with the tools we have, it gets really simpler. Yeah I really like this, I like this playground how it does the side by side. And even you can just compile things out from here and you can just deploy in one click from here. So yeah.

Narb

Excellent. Making the developer experience that much better. Awesome. Yeah, sorry, you were going to say? No I was just gonna say that if you can just click deploy you can connect your own wallet and it will just—you can see like we have one burner wallet over here, so you don't really need to install the Fuel wallet as well and you can just like get started things quickly.

Narb

Sorry I'm trying to unmute myself. Amazing. Yeah, unfortunately, we're at time here Nazeeh, but yeah, this was an amazing overview and I'm really looking forward to seeing people build their next dApp with Fuel because it certainly seems there is a lot to be had from a developer standpoint. So and yeah, with that, I want to wish everybody a happy Friday. Thank you again Nazeeh for taking the time to come on. I know you're very busy, but yeah, this was a great overview of Fuel. And for those of you who watched us live, go at it and claim your attendance badge on BitBadges to prove that you watched us here today live if collectibles are your thing. But yeah, again wishing everybody a very wonderful Friday, happy weekend and that we'll catch you back here next week for another great episode of DevNTell. Alright all, cheers. Awesome, cheers.

Listen On

Resources & Links

Share This Episode

Share on X

Watch Episodes Live!

Subscribe to our event calendar and never miss a live episode.

View Event Calendar