Algorand is a well-engineered blockchain system that offers speed, efficiency, and security, making it a compelling story for enterprise applications. The platform's focus on layer one features sets it apart from other blockchains, and AlgoKit expedites the development process, making it cheaper and easier for developers to build on Algorand. With a spoke architecture that connects participation nodes to relay nodes, the system achieves impressive speeds of around 7,000-8,000 transactions per second. Algorand's elegance and engineering make it easy to declare native assets and perform atomic transactions without extra contracts and code. The platform's features, such as clawback and freeze, are useful for enterprise applications and loyalty programs. Algorand is also working on one-click nodes, which will make it easy for anyone to participate in the consensus mechanism, and there are many innovative projects in the pipeline. The potential for CBDCs and their impact on blockchain technology is also discussed.
I'm a big fan of Hesape. I don't know if you guys know Hesape, but basically they're using Algorand to create a digital Afghan Afghani. So in Afghanistan, the currency, the currency is called the Afghan Afghani. And the Afghani AGN is like used to use, of course, as local currency. But what I feel like having a layer two, that's job is to just batch transactions and speed things up probably means your layer one isn't performing to the right level. Because so many of these countries and governments and even Europe or the Fed or these major organizations that manage the global fiat system, of course, they need an element of control on this.
They need an element of control oversight on it Hello everyone, today I have a special guest, John Woods, who is a CTO at Algorand, and And we'll be talking Algorand, technology and plans. Welcome to the show, John. Hi, Czech, thank you very much for giving me the opportunity. You know, speaking with folks like yourself who are out there running channels like this, getting the message out, it takes huge amounts of work for people like you, you know, getting up and getting on with the day involved with the ecosystem and getting the message out. So I'm grateful for the opportunity to speak to your viewers and your listeners.
Thanks for having me on Yeah, that was my pleasure. Actually, you know, I go into projects which are building some interesting tech and Agra Settlement is one of them. And I'm so happy to have you here. So John, you have spent years working as an architect for other projects like this like Cardano, Ethereum But there's a work for Central Bank of Ireland. I've found this on your LinkedIn. So pretty diverse portfolio, I would say. So can you spend a bit talking about your history, experience and how did you get into the point where you are right now? Sure, absolutely. So, So I studied computer engineering in university.
And my first role, I worked with Ericsson, which is a global telecommunications company. And folks will probably know Ericsson. Some people know them for building mobile phones, like the Sony Ericsson mobile phones. But actually, their bigger business is the technology that they use to build their own phones. And they're using it to build their own phones is what's called U-Tran networks, which is really the cell towers, the masts, the radio network controllers, which are huge computers that control many cell towers at the same time.
And so the code base to manage all of the telecommunications networks around the world, whether it's T-Mobile, Verizon, or in Europe you know, Vodafone and companies like that, they, those guys are the customers of Ericsson. And so Ericsson's just huge. And I was dumped in to my first job with millions of lines of C++, built in IBM Rational ROSE, which is a real-time embedded, embedded systems, IDE. And so, Boom It was tough.
I realized probably after week two I didn't know what the hell I was doing, but it was a good experience because taught me hey you know work is different to university and the stuff you learn there is totally different to the real world of engineering.
And then I kind of you know I left Ericsson after two years because they moved operations they moved me out of Ireland where I was I was like my early 20s and they moved to Nanjing in China and I didn't want to move to China because it was too expensive It was just too stark a change for me when I was so young and I had my friends around me and stuff I jumped into finance for a while. So I worked with Citibank, which is American bank, of course, as a forex trader I worked in London for a while on foreign exchange derivatives, so again, kind of like trading and and fintech.
And when I was there, I learned a lot about foreign exchange options and exotic derivatives and other financial instruments. But again, you know, I was still doing computer stuff, right? So, I was still doing a lot of that I was working on pricing and risk-managed models. I was working on things like explaining Black-Scholes to people, explaining Vannevar to people, or helping test local stochastic volatility models.
So it's still kind of like in that intersection of finance, mathematics, and computer engineering, right? Because we're still building software Then I, you know, after a few years, about six years that I moved back to Ireland and worked for the central bank and the European Central Bank. And that's where I got interested in photography, which is really the first kind of step I took into kind of professional security engineering because you know computer engineering is is of course the art computer science you know coupled with building building systems.
But cryptography and security engineering is a totally different kind of subfield of computer engineering it's quite hard to break into unless you study, you know, cryptography or applied mathematics in university and I hadn't done that and so it was a very steep learning curve but I really fell in love with cryptography when I first kind of started to get into it.
I was really just hooked on it so you know it came about because I was really interested in it I was building systems for banks that required, that really required applied cryptography, required taking primitives like hash functions or digital signatures or encryption and building larger systems with them But I started to, rather than just kind of go, oh, okay, this is a hash function and this is a signature function, let's just apply them. I was really kind of sucked into how did they work. And I started to study things like RSA, which is, of course, a very well known asymmetric cryptography scheme that's used globally for many different things.
I started looking at how do you do that learning about, you know, about trapdoor functions, about how prime numbers can be used to build these kind of systems. And then of course, onto elliptic curves and which is used, of course, by Algorand and Bitcoin and Monero and Cardano and all the cryptocurrencies out there. And so yeah, that was really kind of how I got into this got into it. I then transitioned out of banking purely into software architecture where I worked with consensus on Ethereum and then I was When I was there, I started to lead applied cryptography.
So I started to know enough about this stuff that I could actually develop things there. And then finally, on to Informatica, where I was a security engineer, then finally as the architect on Cardano and then to where I am now. So I guess the last decade or so I've been working in applied cryptography for a couple of years software architecture and building robust distributed systems Okay, that's amazing. I mean, that sounds like a piece of excellent experience, especially the cryptography and security. That's what we also need at Algorand.
Algorand is very, very strong in this regard, I guess I'm curious about like, why did you choose Algorand? I think just before Algo, you've worked for Cardano, right? Yes, right. For something like a month or something. So why are you coming from IOHK to Algorand? Right. So IOHK, as you correctly say, is a basically Cardano Inc. Inc. behind Cardano, they developed the Cardano blockchain and the protocol and all the tech there.
And the tech stack there is similar to Algorand from a cryptography point of view, they use Libsodium, they use the VRF, they use Silvio Micali's VRF primitive But the rest of the stack is based on Haskell, so they code predominantly in Haskell and of course the architecture is different to Algorand. So I was there for about a year and I was the chief architect, I was the lead architect, so the all of the other architects reported it to me and applied cryptographers and that. And I had a great time building Cardano.
It's a sophisticated system, it's very well engineered, and man, there are some, of course, brilliant people over at IOHK like there are at many of these firms. And so, thank you I learned a lot and it was great. The reason I decided to come to Algorand was because, well, one, it was an opportunity to be CTO and I thought that was exciting, right, to step up away from the architect kind of level, which is obviously a senior engineering role, but it's not a leadership role in a pure sense.
I really was hoping I'd be able to do what I'm doing now, which is set strategy and vision for something like Algorand where I'm doing things like AlgoKid and other really strategically important things. But we can talk about them a little bit later maybe. But beyond CTO, which is of course, you know, something I aspire to be, It was also because when I looked at Algorand's technology stack, it really spoke to me. It was really very, very interesting. And like I said, I've worked professionally for two years on Ethereum. I worked professionally on Cardano.
And When I looked at the entirety of the stack, the, and so what I mean by the distributed systems engineering, the relays, the participation nodes, the way that the consensus operates, the VRF, the way data propagates, the ledger rules, and overall the architecture of Algorand as a whole Ultimately when I'm assessing programmable platforms like Algorand, I think to myself, these things are distributed operating systems. They're basically platforms that you write apps for that execute in a decentralized context rather than just locally on your computer in front of you I want my operating system to be fast, secure easy to use. And so Algorand was checking most of those boxes.
It was certainly fast, secure, and it had a beautiful architecture. It didn't have a great developer experience before we launched AlgoKit, I feel. And so that's one of the things I did when I arrived, tried to improve the developer user experience. But when I looked at the whole package, I thought, wow, Algorand is really good is something that I want to be part of that story. I want to do part of the success of something that was so well engineered. So for me, it was a great opportunity to be selected by the team.
And by the way, during my interview, it wasn't just Stacey, the CEO of the foundation who interviewed me, and my peers at the foundation I also interviewed with most of the folks at Inc. I interviewed with Paul Regal, John Giannotti, Jason Weathersby, Gareth Loof. So these are VP of engineering, DevRel, product, applied research. So I interviewed with everyone I just was blown away with the team and just really want to be part of that, part of telling that story. So I was grateful to be selected. Yeah, excellent. I mean, the technology of Algorand is beautiful and it takes time to understand the beauty of the tech.
And especially you've mentioned some like, like a VRF or zero knowledge proofs, not many recognize that Silvio Michali is responsible for this stuff. And other projects use it and they actually use the like a work and the something was this, no, from Silvio Smicali, like art, I would say. So- I totally agree Yeah, exactly. So as a CTO, you've mentioned you are a CTO. So you've mentioned the algo kit, we'll touch this in a while.
What is it exactly? But as a CTO, not everybody may understand what is this, what are the responsibilities of a CTO? of a CTO or what is your vision for this role? Like where would you like? I would like to Yeah, cool. Yeah, good question. You know, I mean, if you go to Wikipedia, it'll tell you a CTO is basically the chief technology officer person who's responsible ultimately at the company and accountable for or any company accountable for the technology stack and the product the technology products that are used and and the strategy for technology.
So it is a very important role especially in a technology company and and increasingly so even in non-tech companies where technology is just a fundamental requisite of business So a lot of CTOs can be business people who maybe are not that technical. Of course, most will have some technical understanding, but you'll see in a lot of companies that I've worked in, certainly when I've reported to various CTOs, they may or may not be as technical as you might expect. I, on the other hand, have been very technical have come from a very, I didn't come from a business background. I came from a technical background.
I built myself from software engineer to senior engineer, to an architect, to a principal architect, and to an applied cryptographer. And so I take a lot of pride being what I call vertically integrated in the role. And what I mean by that is I don't sit in some kind of ivory tower telling people what to do, but instead I am very much a person who's on the team who wants to fundamentally understand what we're doing, who wants to fundamentally understand the outputs of the team and what they're struggling with.
And I like to think that I'm a strong member of the team technically so that I'm able to do the work that I'm asking other people to do. So it's important to me it's only it's a personal thing but I just think it's important like to have that authenticity with my work to make to so that the team feel like they're I'm one of them and not just someone telling them what to do.
In terms of the things that that I think are important, I think it's important when you're building a team Whether you're a CTO or not, you can be just a team leader or you can be a, you know, an engineering leader or VP of engineering, it doesn't matter. When you're leading engineering, very important just to have a strong empathy with the team and build a team where people feel like they're working in a safe environment and they're also work when I say safe I mean like in a comfortable environment where they're respected, respected as a team.
And also where you build a team where you're not just a team, you're a team folks work hard and are collaborative and collaboration within tech is very important. On my teams everyone is able to ask questions even you know stupid questions I think it's really important that everyone is brought on the journey together. And more specifically at Algorand of course the technology when I say technology say the technology, the tech of the protocol is pretty damn great. And I don't have a ton of stuff that I would like to change there.
There's some things that I talked to Gary and Paul about, and they are of course the leadership over there at the Inc, and they're ultimately responsible for it. But we're very much aligned, them and myself, in that we're very much aligned on what are the things to do next. They've brought to me their roadmap and I think it looks fantastic. And those things are Further post-quantum resistance, in addition to state proofs, which secured a history of the chain, we're also kind of looking at quantum proof, or not quantum proof, but quantum resistant consensus, quantum resistant signature schemes, although there's some for payments, but there's some way off.
Further decentralized systems and optimization So what is the evolution of relay nodes? How do they look like in the future? Do we consider peer-to-peer networks or more gossip style networks and other things like that? Looking at consensus, what is the evolution of consensus? Where does that go next? Is there some kind of incentivization? How do you deal with MEV and other things like that, maximal extractable value? But other than those kind of evolutionary things that have to happen for every project out there, if you look at the fundamental technologies and the fundamental architecture of Algorand, the Algorand node itself, which is the heart of the network, it's beautiful. And there's not that much to change.
And so that's why when I said at the start of the talk, of our shot, you know probably the most important thing that I felt needed the most work was the developer user experience. And so the reason I realized this was when I was doing the interviews with everyone, I wanted to make sure that I was asking good questions in the interviews. And that's good for anyone interviewing you, you got to make sure you understand the company you're interviewing for But I also wanted to be able to be, to demonstrate that I used the technology and I understood it.
And so I thought to myself, okay, this is going to be easy, you know, because I've worked on Ethereum. I know the EVM inside out. I've worked on Cardano. I know Plutus inside out. I know these distributed systems. I know the cryptography. I don't need to research it or study up on it. So I thought, okay, I'll leave this, I'll leave this to you this to a day or two before the interview and I'll spend some time. I get to sit down. I'm like, okay, I'm going to launch an NFT.
I'm going to, I'm going to just like write a simple, a simple, a smart contract and submit it to mainnet. And then the struggle began, you know, I'm downloading the node and I'm playing with goal. I'm trying to like fund an account. I'm like trying to understand the difference between a logic SIG and a regular smart contract. I'm looking at like plugins for VS code and I can't see any. I'm like, where's truffle and where's hard hat, where's ganache, where's drizzle, where's like the simulation environment, how do we debug it? And then I realized Is it Reach? No, it's not Reach. That's a third party thing.
Is it like AlgoBuilder? Well, it looks pretty good, but it doesn't feel native.
And I'm like, well, what is the way to do this? And so, and to be quite honest, I got on the call with these guys and I said, guys, and Stacey as well, I said, I think, I think we need to do this we need the biggest problem here is developer user experience because people if people can't build the apps on the chain um it's without the struggle i just went through i mean how many people are starting to build an app but then give up because it's just too too tough and that was where the concept for algo kit was born. I hired a wonderful team around me to do that.
I have support from many folks at the Inc. Paul and Anne and Gary and other people at the Inc. But at the foundation it's myself of course and Alessandro who's our head of product for algo kit and then our partners in the Inc in Maker X who have been terrific And we built a set of requirements and we sat down and said, what does a good developer user experience look like? And this is like nine months ago, right? And we sat there and we just wrote it down.
And we talked about rather than like look at what was wrong, I kind of I thought, what does it need to look like? And then I looked at all the grants we had, right? Because the foundation has given loads of money to many projects. Yeah. And the problem is, When you give money to different projects, you kind of lose track of when there's many of them, you lose track of where they are, you lose track of what's being maintained. And so I took like the best of the open source projects, whether it was maybe a Dapp flow or AlgoPy test.
It was a handful of interesting projects that were useful I kind of got them and added them to the list of requirements and then sat down and with Maker X and with Alessandro and we kind of built out this vision for AlgoKit. And I think If you look at version one, which we released just at the end of March, I think like a week and a half ago, we've had 2000 downloads, by the way. I'm pretty pleased with that. Hopefully the momentum will keep up But it's a testament.
When you see those graphs on Twitter that say Algorand's got 10 developers, that's bullshit, right? But yeah, if you look at AlgoCave version 1, man, it is great I don't need everyone to tell me it's great all the time. I'm happy to hear where it's not great. It's not perfect. And I want to know the things we can improve. And by the way, we have a killer roadmap for version 2, which is going to drop at the end of this year. It's going to be killer. But even in v1 You've got the core of what makes a good developer user experience. Step one, installing AlgoKit is easy peasy.
If I'm a developer, I have a package manager in the command line, whether that's apt, pip, or brew on a Mac, which is the closest a Mac has to a package manager You're hitting brew install algo kit pip X install advocate easy peasy One line install and it's not just pulling down algo kit and then leaving you in the trenches. It's checking Does this person have the right version of Python installed? Does this person have all of these dependencies, like Chocolate and whatever else? And it goes and it grabs all of them if they're not there. It grabs the build tools if they're not there.
It'll sort out, it'll check if you've got Git. It checks if you've got all the prerequisites. And it builds the environment. And so, It's gone from the case that there wasn't really at all a beaten track or a blessed path for how to do things to, hey, This is exactly how to do it. This is one command to install the entire tool suite. And what you get straight out of the box are tools that help you build, test, and deploy. And so you have that command line tool to initiate your project. You have that command line tool to build a project.
You can open up VS Code, and you've got the same command syntax highlighting, you can hit one button and it's launching a local node, it's funding the accounts, it's doing all the stuff that I struggled with in my interview process. So yeah, I'm just super thrilled with it. Alessandro's done an amazing job, Maker have done an amazing job, and I think we are on the right track finally for the developer user experience Yeah, AlgoKit is for sure a great stuff for algorithms.
I think it's a revolutionary in terms of, you know, addressing the headaches of algo developers and having you, someone who is hands-on with the code and also has a standard of code strategic view. I think that's how we actually can drive our grant forward. And so we mentioned some of the features of algo kit. So let's say I have little experience as a web to developer.
Can I do something easily with AlgoKit or I still need to learn all the blockchain stuff, all these nitty-gritty details or I can just follow my typical steps and do some development with AlgoKit as a web2 developer Yeah, I think you can largely ignore most of the blockchain stuff, but here's what I'd say. Whenever you're developing something, I think it's really important. And it doesn't matter what language you're using, whether it's a markup language like HTML or it's a systems language like Rust, or it's a distributed application like we're building with AlgoKit. I think it's really important to know what you're doing.
And I think that's the key to the whole thing Bye really important for people to have some understanding of the fundamentals, you know, with which they're working. And so I feel like if I don't even I don't know if it's a good idea to get get development to a place where people have no idea that they're deploying to a decentralized product or a decentralized platform. I think that that's probably too much. And I kind of have this feeling this is only a personal thing but I have this feeling that in schools now in universities now I'm watching my my my little cousins, I'm watching family members who are much younger than me.
In university, I'm looking at the kind of things they're studying because a lot of them are studying computers And really, you know, a lot of them don't know what a pointer is. They don't know what a register is. They don't know what a stack is or the heap is. And I'm not saying you need to go back to, like, everyone should be coding in machine code or assembly, but I think there's value in understanding the fundamentals.
So, yeah what Advocate is there to do is not necessarily disguise the fact that you're building a blockchain-based application but rather to make it so easy that it doesn't matter and make it so fast that it doesn't cost you a lot of money and make it so safe that when you're building it, you're less likely to have errors and rug pulls and other problems like that And so, yeah, I think AlgoKit is going to help folks who are Web 2. 0 engineers. It's going to help them build in a way where they have so much less questions and problems.
We're going to be adding to the number of templates, so it ships with some templates templates, but we're going to be adding to the number of templates. So when you're kicking off your project and you're saying, I'll be creating it, my cool project. You'll be able to add a little command line flag and like dash, dash, give it a template name. And so you'll be able to within 10 seconds, roll an NFT, within 10 seconds, roll a basic DAO smart contract, these kinds of things. So we're adding, we're going to be adding next week to the number of templates that are there. We only shipped one or two, I think.
We're going to be adding over time By the way, AlgoCade is also built in a way that very much like Git, it's kind of open and doesn't have any single source of truth in the sense of like, it doesn't have to use our templates. You can point at your own templates. You can have your own private Git repo with your own templates, and you can use AlgoKit to talk to them. And so, yeah, I think it's gonna make the Web2 experience so seamless that people will be excited to build Beautiful. And yeah, I think we need the simplicity in the development on Algorand.
And you've mentioned that, you know, there are some fake news about number of Algo developers in the space. How many active developers do you think we have right now in the ecosystem? You know, it's a really good point. We were trying to put together some metrics in this theater. I'm just typing into my laptop here just to see. I was talking to Jason, who leads DevRel globally for Algorand. And so we're trying to understand what are the metrics. So, I mean, I'm going to read out a couple of the bits here that Jason put together.
So he was talking about like, well, portal views, right? We've got this dev portal. And by the way, the dev portal is going to be revolutionized soon. It's going to be just like algo kid, it's going to go through this 180 degrees turn in terms of the user experience, you're going to go to the dev portal, it'll be like sitting in a theme park, you'll just be brought on a tour of everything that's important and brought to the information that you need.
But, you know, to assess the developer metrics, you can look at portal views, you can look at developer registrations, you can look at views of our YouTube videos, because we have a lot of them, and you can look at the user experience. So, you know, we're going to We've just started a new developer YouTube channel Of course, there are other things like Discord members, right? And so we have tens of thousands of people in Discord that are interacting every week. Messages per week, forum visits, of course, AlgoKit installs, AlgoKit, you know, deployments both on Brew and on PIVX mainnet apps deployed, TVL, etc. So there's many, many different ways to measure this stuff.
And we're just, we're kind of beginning to get metrics on it. So I don't have the numbers to hand, but I'll tell you this it's tens of thousands of people who are interested in this stuff on Algorand specifically. And sometimes you look at the fake news when someone, you know, posts one of those pretty bar charts on Twitter and it's like, oh, you know Solana or whatever has like, you know, 42 million developers and Algorand has got like six. It's simply not the case. And so like everything in life, just be careful what you assume to be correct Yeah, that's right.
And you've mentioned that even the algo kit in the first days had like a 2000 downloads that already tell something right so I think it already shows like a scale and also hundreds if not thousands of applications, which are building an algorithm also need developers, right? So we probably go into thousands, if not more of developers. So, and I've seen like a data which is showing much lower numbers. So anyway, I think with AlgoKit, we'll grow this developer base pretty, pretty smoothly. Let's see Let's maybe come back for a while to the core tech of Algorand.
You're already like nine months with Algorand, so probably you know very, very well the strengths and weaknesses of Algorand. Also comparing to Ethereum, comparing to other blockchains. So what do you think are unique features? strength of algorithms, differentiates us versus other chains? Sure, yeah, good question. And by the way, I would say, yeah, I'm absolutely so just coming up on a year.
It's been a great journey so far and the community are lovely, you know, I get a lot of support from the community, a lot of love and so that means a lot to me I would say as well, though, you know, I haven't had as much time as I would have liked to dive into the code and into the architecture. I mean, of course, I'm trained by the people who build it and I can spend some time on it.
But like one of the sides of the CTO job is that you end up meeting a lot of people who whether it's even interviews like this or, or indeed, you know, uh, just meeting with projects that are starting up and need support and need encouragement. So I do a ton of that stuff. I do like probably six or seven hours of that a day. So I don't get as much time anymore to be hands-on with the code, but I can still, I can still absolutely answer. Um, so Thank you You know, if you take, say, Cardano, which I think is a very interesting protocol.
Or you take Algorand or you take Ethereum I think you can roughly slice these projects into kind of three kind of layers. One is the ledger rules, so the accounting rules for the ledger itself. Two is the kind of consensus technology. So that is, of course, a very important part, whether it's the VRF, whether it's delegated proof of stake on Cardano or proof of stake on Ethereum And then finally, you've got the network layer. So how does data propagate? What is the structure of block propagation? How does that kind of stuff work? And largely, these three things will be Uh, most of the guts of the architecture.
And so On Cardano, as an example, when people, let's start with consensus. On Cardano, you of course delegate your stake to pools. And so the way you do that is a Cardano account, actually two key pairs. It's two 825519 elliptic curve key pairs. One is a payment key, one is a staking key. And by joining the public keys kind of together, more or less, it's a bit of a simplification, you kind of you end up getting this kind of account that can both pay or stake.
And when you want to stake to a stake, staking pool, what you're really doing is signing a transaction with your stake key and posting a certificate online that points to the identifier of a pool And so the funds don't leave your wallet, they just are kind of pointed at a pool. And so this is fine, but what this means is that you have these clusters of pools that represent there's about kind of 2000 pools or so. I mean, there's more than that, but there's 2000 pools that actually kind of have a chance of creating a block because the rest is just a pool are way too small.
So about 2,000, 2,500 pools that represent all of the consensus. Whereas on Algorand as an example, one of its strengths is pure proof of stake. So Algorand is using the VRF, the verifiable random function, to basically, rather than set up a reality where you have these concentrations of pools everywhere, where people are pooling together like pool mining, instead, The VRF is run on every block, on every round, we call it a round, where a block is produced, where a block is produced, validated, and added to the chain. And it's run in order to select someone from the entire sea of people that are participating in consensus.
And what's cool about this is that, Pure proof of stake is kind of like solo mining for block production. And so in Bitcoin, you've got these big mining pools, same on Ethereum, you've got the staking pools, same on Cardano. On Algorand, it really focuses on decentralization for consensus And what it tries to do is make it so that Consensus is truly a one person sport. It's truly the individual who's contributing to the security of the network.
And those individuals are selected to create and validate blocks using the beauty of the VRF, which is a very elegant Um probabilistic but deterministic function that's able to quickly sort the network, select a participant who's valid to produce a block, and select participants to validate and add the block to the chain. So it's very elegant. And in fact, by the way, Cardano uses the VRF as well, but what they use it for is to make it more efficient is to select what they call the leadership schedule, which is a, you know, which pool is next to produce a block effectively more or less.
So the VRF is used in both technologies, Cardano and Algorand, but I think at home where it was developed, developed on Algorand by Silvio Macaulay, I think it's probably the most elegant implementation of it in a consensus mechanism in the sense that it really encourages a single entity, a single person to be creating a block and helping with consensus. So that's the consensus piece. I can dive a little bit deeper as well if you like on the network side. Ledger rules are obviously quite complicated to discuss verbally, but what I think is interesting about about the network is of course Algorand enjoys his three and a half second block finality. Super cool.
By the way, I want to just plug one of my favorite things different from Algorand to Ethereum here for one sec On Ethereum, when you're producing a transaction, you make a transaction, you cryptographically sign it, you dispatch it to the network, you do the same thing on Algorand. But Ethereum has this like Every wallet has a nonce, this like number used once, that you have to maintain per wallet. And so if you have five transactions, and one, two, three, and say one, two, and three go through, and four doesn't go through, but you submitted five of them and that fifth guy has a nonce number five.
It gets rejected as well because number four didn't go through. You got to resubmit this guy with number four before you can submit this guy with number five. And this nonce management process is keeping state for every wallet, knowing what nonce you're on making sure that transactions go through It's a pain in the ass and it gets even more complicated in the sense that all five transactions might go through, but then three blocks deep, you might have a block reward where you've had a short fork in consensus and one of the forks dies away and now your transactions are on the wrong side of history and then they're reverted.
And then you're going back on, well, which one of those transactions do I have to, what now to my arm? You know, it's just a nightmare. And so Algorand, and this is so beautiful, this is probably the best bit for me from an engineering point of view. There is no doubt about it nonsense. You don't have to keep track of nonsense within your account. You can just dispatch transactions as you want as fast as you want. You don't have to keep any state and transactions once they're in a block, you know that they're done. There's no block reorgs, there's no forks on Agarand.
And so this is a critical and very important difference, especially for enterprise applications that really benefit from this with Ethereum. I can tell you because I built them nearly every enterprise grade application that I deployed on Ethereum when I was working in ConsenSys In fact, every one of them had an orchestration layer like a big load of microservices, a big deployment that had to be sitting in Kubernetes. And all of these microservices did the following things. Manage the nonces, manage the APIs, and then you could deploy them and managed transaction orchestration. So replaying transactions that failed And that technology was like thousands of lines of code just to manage that nonsense.
And it all just goes away when you use Algorand. So that's very cool. And then lastly if we talk about, say, looking at Cardano again, which is again, very well engineered system, but different to Algorand Two Consensus on the block propagation times on Cardano, I don't want to lie about this, actually. I think it's around kind of like two or three minutes at the moment. I'm not entirely sure. But it's a couple of minutes, OK? Thank you And so it's fine, but the number of transactions per second that are going through is obviously a lot less than Algorand's.
And so I think Cardano is probably at about 30 or 40 transactions a second. When I left, it was at about 25-ish. So it's definitely improved since then. I don't know the exact numbers. It's reasonably quick But Algorand, of course, is a great example is an order of magnitude faster at about 7,000 to 8,000 transactions per second. Now, the way that's achieved is through a spoke architecture. So at the center, we have the participation nodes that are producing the blocks. And at any one time, they're connected to four relay nodes.
And those relay nodes, their job is to generate the blocks that are being produced basically propagate that data to all of the other participants in the network, so all the other participation nodes. And so you end up having this kind of like participation nodes in the center that are not connected to each other, they're connected to the relays and the relays are like propagating data around in a ring road around the network. And so this is very fast, it allows us to have this blockchain that's very fast block propagation time, block finality around three seconds, three and a half seconds for finality. Super cool.
But of course you're still relying on about 125 entities at the moment that host these relays. And so, I mean, the Nakamoto coefficient, if you want to call it, that is reasonably good. It's, you know, there's a whole bunch of different people who are separate companies, separate people who run these nodes. And as I mentioned to Justin Bonds, you can run one yourself and point your participation node at it, but ultimately I think this needs to evolve towards even further decentralization. So you have the participation nodes and there's thousands of them that are running but with the relay nodes there's only about 120.
And so we're working next to kind of evolve the relays to be potentially looking at things like peer-to-peer messaging between patient nodes rather than necessarily always using the relays. So there's a fallback. But we have to make sure that we do this in a way that it doesn't slow the network down. So yeah, I think Algorand's and block time is something that's just incredible. In the next update, it's going to be going down to about 3. 2 seconds. So just touching that kind of two and a half, you know, just sub three second mark.
But you know, the evolution is towards decentralization whilst preserving the speed characteristics of the network Network in Algorand-assets, atomic transfers, raking, state proofs recently, and some others. What makes Algorand, in my opinion, not only secure, fast, but also cost efficient? What are some other benefits? Do you think that this is a story that is compelling for developers? Should they care about so many features in layer one, while other blockchains are doing this on the next layers? Yes, absolutely they should. And so, you know, the reason Ethereum has Polygon as a layer 2 is because It's not hitting the requirement as a layer one.
If Ethereum was able to process the transactions at a reasonable rate and a reasonable time people wouldn't be using Polygon. So I'm not saying there's no need for layer 2s. They can be useful for potentially privacy things. They can be useful for compatibility. Like we have a layer 2 called Milkomeda, and its job is to provide Ethereum or EVM compatibility. So you can execute EVM by the way code using Algorand's consensus and that's great okay it's absolutely a valid reason to have a layer 2 But I feel, and you know, not everyone at the foundation shares this view or the Inc. And not everyone agrees with me.
But I feel like having a layer two that's job is to just batch transactions and speed things up probably means your layer one isn't performing to the right level. And so Algorand doesn't kind of need those layer twos at the moment because it is performing at the right level You know, you talk about those kind of very beautiful features of Algorithm You can do those things. You can do atomic transactions. You can do you know, uh, the claw back and freeze type behaviors that we have with ASAs, uh, where people, you know, where you can have an administrative control over a native asset, you can do those things on Cardano.
You can do those things on Ethereum. It just requires a whole bunch of extra contracts and boilerplate code. That's to go in and you've got to manage all those contracts and deploy them and make sure they're secure and all that good stuff that kind of stuff. And so The beauty of Algorand is again, it's in its elegance, as you said, and the beauty of its engineering. And so, hey, it's much better If I can declaratively roll a native asset as an ASA without writing a line of code. So on Ethereum, you got to write an ERC-20 contract or an ERC-721. You've got to compile it and upload it by code.
On Algorand, you can just declare a native asset um and I'll go around you can as you said have these atomic groups of transactions this is very great this is a great thing right for businesses they regularly want to kind of do a two-way swap where like I'll give you that if you give me that but I only want this to go through if that goes through right this is why eBay was created right this is why you have PayPal and stuff like that right you you can do that with a lot of other things sorry not eBay, sorry, but why you have PayPal, right? You want to swap money for goods, you want to swap algo for an asset, and isn't it great to have a native feature that both of those transactions either go through or neither do? And to do that without the overhead of writing all of this boilerplate math, it's a bit of a pain management code is a wonderful thing And, you know, looking at ASAs again and talking about like the clawback and freeze features.
So most times if you're using ASAs as an NFT, you want that NFT to be self-sovereign to you. You want to be able to do what you want with it. So you don't want people to be able to freeze your NFTs or claw them back, of course. But But enterprise applications, businesses, they use those kind of features all the time.
And so as an example, if you have a local store that wants to do a loyalty program, maybe they want to have a list of terms and conditions for that loyalty program, and they want to be able to claw back the tokens in some legal circumstance where they go bankrupt or something. And so for them, they can do that. And so they can do that You being able to go down and collect your tokens as you shop within that store every week, great.
And you're accumulating a balance, but they still have administrative control on that asset, which is fundamentally an ephemeral token of loyalty, rather than something like an NFT, which is a forever token. And so having this level of articulation built into the layer one for free for developers so developers don't have to use this And when you combine that with AlgoKit, which expedites the development process already it becomes so much more cheap, so much more cost effective, both from an engineering and solution point of view, to take what your vision is for a decentralized application and build an algorithm.
It's literally going to save you engineering dollars to build an algorithm when you don't have to worry about implementing these kind of primitives on your own your own. I think it's super compelling. I mean, this kind of stuff is exactly what I'm talking about. This is why I came here to be part of this story, right? Because it's just that good Yeah, beautiful.
And I know there is another beautiful improvement or product you're working on, which is the one click notes, which will make it very easy and possible for everyone to run a node Some questions related to that obviously our grant has this beautiful pure proof of stake consensus mechanism, and if my understanding is correct, in order to participate in the consensus, you need to run a note right you know you need to have. Yes, you do. Yeah now we have probably something like 2000 notes right? Yeah and I got a question the other day why is the counter offline so we have we have a metrics like I think it's metrics. algorand.
org or something like that we have a website that has counter-op participation no excuse me sorry we found out that the formula that was in that was miscounting. If nodes were coming on and offline too often, they were being double counted or not counted properly. So we're just fixing that and so we'll have that back to normal soon. But yeah, around two and a half thousand or so is the number of active nodes at the moment in terms of consensus Yeah, it went for like a two or five thousand or something, but I will count it.
So that was really, I mean, again, I'm actually not technically working on the code myself, so I don't actually know for sure, but from the report that I had, it was basically that nodes were coming on and offline too quickly and then they were being counted twice be what the problem was. But yeah, so one-click nodes are I think really important. And so, you know, I run nodes in my house. I run an Algorand node. I run a Monero node because I'm a big supporter of Monero. It's another cryptocurrency, which is not like Algorand. It's not programmable. It's not a Cardano style blockchain or Algorand style blockchain.
It's just trying to do, it's like Bitcoin, just money. And its aim is to do it privately. I think it's a good thing cool project, but I wrote both of these notes because I like to support the network. The thing is I have a bunch of Linux machines in my house and I'm comfortable in the command line so I git clone them, I do a CMake on it and I build the notebooks. Not everyone has computers that can do that and not everyone has Thank you I guess, the technical savvy to do that.
Here's another example of where I'm not as good, right? So the other day I was trying to get my, I've got like an old MacBook and I wanted to put a new version of macOS on it I had to download an old version because it doesn't work with the latest one. It's like, I've got to get three back. And I was like trying to get this thing from there's a command line thing and Mac OS like software update. You can like give it some commands and you can say download a full installer I struggled for like 35 minutes. And then I finally found that this is open source app.
You download it and it's a GUI that lets you kind of like download any version of Mac OS from history. Super cool. So I used that, got my MacBook up. So that was an example of a one click download where I was struggling for about 30 minutes in my terminal This is where I want to take one click notes. I want it so that it's as easy as that for people to use.
So it needs to basically be that someone can hit a single command not worry about what computer they're on, what operating system they're on, or what dependencies they have installed, whether they have Git or make or GCC or any of these things, and just down get the source code or get the the node up and running in a single command. And that's my vision for one-click nodes. And when we do that, we're going to be able to do a lot of things it'll be so much easier for people to participate in consensus and to contribute to the security of the network.
Now, I want to be clear We're spinning a lot of plates at the moment, both in terms of the team, the engineering team attending events, whether it's Consensus, which I'm going to, or the various kind of blockchain events that are at Paris Blockchain Week, etc. We have a small engineering team, you know, we're working on AlgoKit, working on the Dev Portal, working on XGOVs. And I think we're doing a lot of great things. I think we're doing a lot of great things And so the first version of one click nodes is going to be relatively basic, it's going to be, you know, click here, node gets deployed.
It's not going to be able to help you operate that node long term as in rotating participation keys and other things like that. Instead, I will have a guide that describes the steps to do that because of course, you course It's not just running a node, it's also issuing participation keys and having them on the node. But by the end of the so by I'm hoping to drop in Q2 this first version of one click nodes, which will help you get a node up and running so you can participate.
And, but in terms of making the operation PCZ that will be later on in the year, but I'm very excited about it And ultimately, it's the same theme as allocate, which is make it easy for normal people who are not computer scientists to participate in this global network of value and community Yeah, looking forward to this one as well. And, you know, not sure if you also run a Bitcoin node, you've mentioned Manora node and in Bitcoin community there is this narrative that, you know, everyone should run a node. Sure.
Do you think that's for Algorand as well? Everyone should run a node? all know that if yes, why? Or maybe why not? Yeah, so interesting. You know, in Bitcoin, I think the theory around running your own node is not about running consensus. It's not about kind of participating in consensus, as I'm suggesting we do with consensus nodes or participation nodes, as they're actually called. Yeah, it's starting to look having visibility into the ledger and verifying the miners, right? Exactly. It's visibility into the ledger, it's propagation of the ledger, and it's being able to post a transaction to your own mempool.
And so I actually think, I mean, I, by the way, I used to run a Bitcoin node, I ran one in 2013. I was an early Bitcoiner, I kind of moved away from it. And I think it's a good thing I don't have a lot of Bitcoin left. I think it's certainly interesting. I look fondly on it as a project, so I don't hate it or anything. But I It doesn't inspire me anymore. But I know why it inspires people so I don't run on it anymore but I do encourage people to get involved in this stuff because it's a great way to learn.
And the other thing is I'll just call out one really cool thing about Bitcoin Whether people like it or not, Bitcoin may not have the latest and greatest technology, blah, blah, blah, compared to insert your cryptocurrency here. But it has a very big, fat hash rate. And that hash rate, it makes Bitcoin the most secure cryptocurrency on the network from a consensus point of view. Because it's a very secure cryptocurrency the millions and millions of dollars you have to spend, like billions of dollars you've got to spend in order to counteract that hash rate, just makes Bitcoin pretty bulletproof Yeah, that's for sure.
And once you make the one click note so simple to use, potentially you may expect, we'll have like 10,000 or 50,000 notes running. My question is, do we need that? And is it possible? algorithm ready for that number of nodes So, Algorand is ready for those nodes. Of course, it's a bit technical, but although everything we've talked about has been technical on this show. But, you know, when you're engaging in consensus, you're supposed to post a transaction to say, hey, I'm online. And when you want to disengage consensus, you're supposed to post a transaction you're supposed to post a transaction to say, excuse me, I'm offline.
But, you know, there's a little bit of education there that we have to explain to people, or even if it's easy to do, we still let the people have to understand what they're doing. And so, Algorand is fine with that number of nodes. I don't think it needs it though. I think not about the number of nodes. I mean, once the number of nodes goes over a certain number, okay, once it's over about 2,000 nodes, I think it's pretty decentralized, right? You've got 2,000 entities who are helping secure the network. And so to defraud the network, you're going to have to override a lot of individuals.
And so it's functionally decentralized after about 2,000, I think, as is Cardano by the way. I think what's more interesting to me is getting more stake online. So right now we have about there's about 7 billion algo that have been like in circulation, about 1. 6 billion algo, just you know, just under 2 billion is actually participating in consensus. And for me more interesting is is getting more outgoing consensus because then it increases the cost of a security with a network. If you have all the algo in existence that's all contributing to consensus, then Algorand is maximally secure. And so, you know, for me, that's the value.
But I don't need 10,000 people to be involved. I think it'd be nice to see an increase, but, you know, it's not Anything over two is good Yeah, I do agree. On the other hand, you've mentioned the relay notes. We have like 120 of them. And in this regard, I think we probably would like to have more relay notes in the future to support decentralization. Are there any like incentives for somebody to run a note, either the participation or the note on the relay. Sure, sure, great question. So you know So the answer at the moment is no But there's a question, maybe there should be.
And so You know, like we just talked about consensus. And so it's not expensive to run a participation, right? You can run one on a Raspberry Pi 4, 8 gig, right? You can run one on an old MacBook Air or whatever, right? But the thing about it is, is that know that still costs money for people to do that, it costs some time for people to do that.
And certainly if you want to run a kind of a production grade, enterprise grade participation node, you got to have an EC2 instance or some cloud computer somewhere right? More or less And so maybe we do need to think about incentivizing consensus with the fees or other ways And so this is a conversation that's ongoing because of course Silvio's original vision was that ALGO itself, holding ALGO itself would secure the network But we've transitioned a little bit away from that in the sense that it used to be the case that, and this is before I joined or anything like that so I forgive any mistakes that I make it here, but it used to be the case that we would people would receive a reward just for holding the algo.
And that kind of tied in with this notion that kind of running a participation node made sense because you were holding the algo anyways, and you were receiving rewards, so why not run a participation node and therefore holding the algo meant securing the network.
Whereas now we've moved to governance so people get paid for governance and there isn't a reward anymore just for holding the other and so We're looking, I mean, I speak to Silvio, to the leadership at the Inc, and we're looking at different ways we can potentially incentivize node operation, because I personally think, and this is only my personal view, long-term, over the course of two to five years or whatever, probably have to get to some place that incentivizes in some way node operation if we if we want it to become maximally decentralized Because you need to give a reason for people to run these things. But we'll see how it goes.
There's lots of conversations going on. Yeah, for sure. I mean, once you have your own business around Algorand, your application, you probably want to have your notes. But for like a common folks, you know, if we want to go in this direction, probably some kind of incentives to do that would be helpful. So before we like a wrap up, john, maybe some of the most interesting projects which you follow in the space recently we have, we had this announcement of travel eggs building stuff for allies. I'm personally opium building stuff I think is great stuff. Some of the DeFi machines like Fox Finance or Argofee.
What are the most exciting projects on Algorand which you are following? Or maybe what are the projects which we should have on Algorand in the future? Sure, absolutely. And so I don't want to, if you're not in this list, it doesn't mean that you're not great. Of course, I can't say everyone, but I'm a big fan of HesabPay. I don't know if you guys know HesabPay, but basically they're using Algorand to create a digital Afghan-Afghani.
So in Afghanistan, the currency is called Afghani called the Afghan Afghani and the Afghani AGN is like used to use of course as local currency but a lot of a lot of people out there especially women are in situations where they don't they don't have access to to high quality banking and in some cases they are financially controlled by people who are they're living with them with and stuff. And so of course, that's just the nature of of the reality out there at the moment.
But HasabPay is basically, you know, an app that can run on any simple phone and that allows super easy on and off ramps in this like native, you know, digital Afghan currency. And you might think, well, why don't they just use Algo? Because you can just run that on a phone. But of course, merchants in Afghanistan don't necessarily know about Algo as an example, but they do now there's thousands of them that accept this digital afghan currency and so now we're really actually genuinely empowering actually people you know, oppressed humans with this technology and they're 100% using Algorand for the settlement and the movement of these currencies.
And that's probably to me, the most inspiring use cases we've seen, but there are other cool ones. Uh, the new computer company, NCC are doing some really interesting things around music planet watch. You're doing some really cool things around IOT and, and environment. And I think that's important, right? Because we don't we want the world to be a nice place for our kids Yeah, I think I really like as well what NFD are doing. They've done some really cool stuff recently around like segments, subsegments, that's really cool stuff. So you can buy like woods. argo and then have like John. woods or Dave. woods or whatever.
Um, I like packed as well. I see do some kind of innovative things. They're, they're kind of define, um, we had, there's, there's a lot of stuff There's tons of, like I get approached because of the nature of my work, I get approached all the time by people who are starting out and you wouldn't believe some of the incredible innovations that are coming out. Of course, I can't blow the lid on their projects, but man, there's some very, very cool things in the pipeline, people building for major things on Algorand. So thank you So watch this space. Yeah, for sure. I was actually not aware about this Afgani project.
I need to study this as well. And like for anyone, if you want to start with Algorand, you know, NFD is probably like an easy way to have your domain and start the fun with it with our grant. Maybe one more controversial question at the end. Two years ago Argonne has this narrative for being the CBDC platform thanks to the Marshall Islands and others. Do you think we are still chasing the CBDC use case? So are there any processes you are still chasing? our roof So I mean, I know that's Algorand Labs and Silvio are doing things with kind of big banks and governments and things.
I think there was news of an Italian bond issuance and there's other kind of like, you know, macroeconomics, engineering that's going on. They're doing lots of Lots of cool stuff. I'm not personally involved in that work, so I don't know it well. But what I would say is I worked on the European Central Bank's proof of concept digital euro. It was called Euro DLT And so they were looked, I think central banks and governments around the world are in a digital currency for a few reasons. Number one, you know, it's cheaper to create digital currency than it is to create physical currencies.
It's easier to manage and other things, right? It helps with monitoring and compliance and other things. But I don't know if the government is going to be able to do that going to choose a public blockchain.
And there's one, just one reason I'll say that, whether it's Ethereum, Bitcoin or anything else It's because I don't think any sovereign, any major country any like you know G10 like world economic power is going to want the you know, the issuance or even the operation of their national currency dependent on what is basically a decentralized third party developed technology because so many of these countries and governments and you know even Europe or the Fed or these major organizations that manage the global fiat system of course they need an element of control on this. They need an element of of oversight on it.
And so my personal view is it's more likely that would see the issuance of a central bank digital currency using technologies like Ethereum or Algorand. But I don't think personally it's going to be on the public chain itself. But you never know. I mean countries have done it right. So who knows Yeah, yeah, I agree. And I think we probably have tons of other interesting projects on our grant. We don't necessarily need CBDC. I'm even not sure if I want Algorand to have its own CBDC. Exactly, remember Algo and others are the hedge to VFX currencies, right? That was the whole idea.
I think if you look at the Genesis block of the Bitcoin blockchain, didn't have like a news article from the Times or something talking about banks posting or whatever, I think I remember correctly. Yeah, that's right. Thank you so much, John. It was a pleasure talking to you to you as you can hear, and I'm now talking to people listening to us a lot of interesting stuff ahead of Algorand both on the technology side. Once we have like the AlgoKit being used even more, one click notes, we'll see even more interesting applications on top of our grant.
So if you are interested to start building, I'll provide some links to start under this video. And I've been, you know, it was It's been a pleasure talking to you, John. I'm happy that you found time for this conversation. So thank you so much for all the work which you are doing for Algorand. Thanks, Anczek. Great to be here .