Conversations with a Junior Blockchain Developer part VIII

Cardano Fans (ticker: CRFA)
11 min readDec 10, 2021

A: Hi!
B: Hello :)

A: Long time no see…speak… I mean
B: Yes indeed.

A: Where did we leave off last time…hm… can’t remember but OK I know what I wanted to ask you. I wanted to ask you about “AVOUM”…
B: A yes Account View on UTxO Model… what specifically do you want to know?

A: Can you just tell me what is it and if in your opinion it is worth to implement this on UTxO based L1 or L2 blockchains as needless to say account based blockchains don’t need it right?
B: I see, will be hard to keep it short… complex topic.

A: Shoot.
B: Roughly there are two types of accounting styles in blockchains, UTxO variations and account model variations. While it is possible to emulate account model on UTxO variations, it is not possible to emulate UTxO on account model blockchain. One you are in account model, it is one way street.
There are type of DApps and problems which cannot be solved using UTxO based smart contract blockchains such as (Ergo, Cardano, Nervos) but rather one has to provide additional L2 solution (often called: offchain sequencer) but such classes of problems are easily solveable using account style blockchains or when AVOUM is implemented on UTxO based blockchains.

A: What do offchain sequencer do for such DApps that require it and which require it?
B: Offchain sequences are L2 solutions which can be run by anyone (albeit some folks recommend to run them via the same validators or stake pool operators as in case of Cardano) which allow to re-org transactions (it is often referred to as rebasing). DAapps that require it are all the DApps that require a notion of contention and state synchronisation, e.g. AMM DEX (Automatic Market Maker DEXes). In Ethereum ecosystem the most famous example of a such a DEX would be Uniswap.

A: So either one implements AVOUM or one has to resort to offchain L2 batchers for such applications, what about other DApp applications such as stable coins, NFT market places, etc
B: Typically those DApps do not require AVOUM or offchain L2 sequencers

A: Once AVOUM is implemented is it possible for a DApp developer to enable this only for a certain application while other DApp developers won’t enable it?

B: Yes, absolutely this is possible, what is even possible is that one can have such validators / stake pool operators that if configured process AVOUM transactions or not if this is a desirable and necessary feature to configure.

A: Cool, why would somebody want to disable it as a validator or stake pool operator?
B: AVOUM can lead to MEV (Miner Extractable Value) and while MEV has originally been conceived as a term for PoW (Proof of Work) type of blockchains, equivalents of MEV can be used on Proof of Stake blockchains as well.

A: How?
B: Well you could actually send extra tokens within transaction or outside of transaction to a validator / stakepool operator to incentivize them to expedite your transactions.

A: I see but if validators are anonymous, this I can imagine could be an issue but if those validators are stake pool operators like in Cardano this could lead to them loosing staking power, right?
B: Well, loosing trust in validators or stake pool operators is indeed something that can happen. Let’s not forget that many PoS protocols are in fact social systems, no matter how much you try you cannot take away social aspects from Proof of Stake networks. In fact it doesn’t have to be a bad thing it can be a very good thing. As for validators vs stake pool operators, this is also nuanced in case of e.g. Avalanche one delegates stake to a validator as well. This validator is know by some hash, not sure if it is really identifiable but one can also stop delegating to such validators. In fact some wallets could even implement black-listing such MEV based validators in Avalanche… so no, nothing specific to Cardano at all.

A: Black-listing? What are you talking about? From what I am aware and I am involved in many cryptocurrencies communities in Ethereum, Avalanche there is a perception that one should rather maximise rewards and revenue. The community of Ethereum and Avalanche takes pride in climbing ladder of a portal:

B: Well, you see, I told you these are social systems. In case of Cardano community while there are some voices to introduce a notion of auction system into the protocol, those voices are more rooted in protection of certain operations (e.g. oracle transactions) rather than maximising revenue.

A: What is wrong with revenue for stake pool operators or validators? Why would they even want to pay for hard drive space, CPU cycles, etc..
B: There is nothing wrong there is just a philosophical difference between maximasing revenue or having decent enough revenue but no exploitation of users upon reaching certain network effects. You see this is quite funny from computer science or rather IT Architecture point of view, let me explain. Blockchain is a shared DB, to large extend vendor lock in for users and even larger vendor lock in for corporations, thus if you send vibes that all you care about is revenue maximisation I don’t know how this bodes well for adoption of users and corporations using such a vendor locked in — “shared kernel DB”, which becomes anti-pattern in some scenarios (because it is vendor locked in).

A: Shared kernel anti-pattern?
B: Yes… let me share resource with you

A: I see but it looks here as a pattern… so a pattern can be an anti-pattern, what?
B: Yes, it all depends on context and many details (often social / strategic / business in corporations, etc)

A: Complicated.
B: Well to be a Software Architect in a corporation is super complicated, it is not only a technology position but even more social and to large extend business strategy position.

A: You are loosing me, how did we go from fees, social aspects, vendor lock in, network effects, shared kernel to a Software Architect in corporations. This doesn’t all add up, sorry.
B: I can understand your confusion but my point is that social aspects do matter and sending maximising revenue vibes does not bode well for starting cryptocurrencies projects.

A: Well, I don’t know, it looks like people want to use Eth, Avax despite fees, maybe they can simply earn more and don’t care that they pay so much?
B: This is for sure true but let’s not forget we don’t have mass adoption, when a shared kernel blockchain db is adopted by many corporations they will lock themselves in. I think majority of users for the moment are DeFi liquidity providers. Perhaps you can think of them as profi businesses but I would not compare them to more traditional businesses established over years which would be happy to lock themselves in to such a “shared kernel db”.

A: I see your point, I guess we will see, network effects will play a large role, if they are achieved, they may simply have no choice but to pay the price. We went at a very large tangent, I suggest we come back to the original discussion about AVOUM.
B: Sure.

A: I have just seen recently that Marketing representative from Nervos blockchain recently bragged about on Twitter that Nervos implemented AVOUM on L1 quicker than Cardano. This means then that they can have DApps which have resource contention issues such as AMM DEXes on L1, right?
B: Indeed, this is exactly what it means.

A: So Cardano / Ergo blockchains are playing a catch up or?
B: Catch up in what? I consider this to be a funny statement from a marketing representative but yeah, let’s not forget it is possible to have AMM DEXes on both Ergo and Cardano (eUTxO blockchains) but off-chain batcher is needed. Last but not least, Nervos is comparing itself to Cardano in terms of one feature, there are millions of features, some technical, some social, etc.

A: I see, what are disadvantages of those off-chain batchers then for Cardano and Ergo blockchains and what are advantages?
B: Excellent question, really!

A: Thank You!
B: It is said that merging those off-chain batchers from L2 into L1 (AVOUM) would be cheaper for users because in case of off-chain batchers one has to pay a fee on L1 blockchain and L2 chain (off-chain batcher), those L2 fees can be low but they can also be high, it really all depends what these off-chain batchers set as prices, such way of operation, however, can be good for decentralisation because imagine that some new stake pool operators or validators earn some money while they were not able to earn any in case of being a L1 validator or stake pool operator.

A: Wait, this sounds all too good to be true, you said that off-chain batchers are on kinda L2 so what if they are malicious, from where will you take a root of trust, what if they start doing unpleasant stuff like MEV, cheating, skipping transactions, black-listing certain actors, etc…

B: Yes, you got me there in a way, to promote decentralisation and expand stake pool operators on Cardano or some validators on other chains, those L2 off chain batchers would have be still somehow trusted by community, they do not have to be major personas, e.g. one could vote to exclude so called MPOs (multi stake pool operators) but they still need to be trusted and somehow somebody needs to make sure licenses are renewed and voting is being repeated.

A: This sounds to be like a lot of coordination, in this sense AVOUM would be much better, no need for extra hassle, special license, who will coordinate all this stuff?
B: There could be a DAO managing off-chain batchers.

A: But isn’t that then off-chain L2 batchers would have to be the same codebase, what if various protocols want different codebase, solutions?
B: Well, at the beginning for sure but perhaps over longer period some of those code bases could converge into one codebase and one DAO. Let’s not forget that it is a living organism, we don’t know, one has to see how it plays out. Last but not least, who said we cannot have multiple DAOs and multiple off-chain batchers for various DApp solutions that need resource contention?

A: Boy, complicated, many aspects here to consider! Some predictable, some completely not. It does not seem like absolutely obvious decision either way, right? Who would even be qualified to build AVOUM on Cardano or Ergo and tell me how for instance on Project Catalyst people would feel qualified to make such complex technical and strategic business decisions? Do really people expect users to make those decisions????
B: A company called Mutual Knowledge Systems would be perfectly qualified to build AVOUM on Cardano or Ergo.

A: Link?
B: Sure.

A: Only them???
B: No, but they have an existing proposal on Project Catalyst, alternatively I strongly believe John Adler and experts building and Fuel v2 as Ethereum’s L2 layer to solution would be able to do this and are qualified to do it.

A: But they don’t have a Catalyst proposal….
B: It’s even worse, they don’t want to do it, some of them are ex Consensys and they are somehow feeling like enemies to Cardano, or perhaps not enemies, oblivious or indifferent would be a better name.

A: Come on, money is money, no?
B: Such experts can pick and choose their battles.

A: I see and who will be able to know if funding for AVOUM should be provided?
B: Well it is struggle at the moment indeed. At the moment there is a recommendation that people that are not technical and not qualified should simply not vote in certain categories on Cardano’s Project Catalyst.

A: And they listen?
B: Hard to say, sometimes I think they don’t but since we don’t have identity of and / or qualifications attached to votes in Cardano it is not possible to say.

A: What if you could attach professional credentials somehow…
B: It’s pretty good idea but you still would not want to have people or somebody that would reject votes based on some arbitrary assigned credentials.

A: You could user university credentials?
B: I believe we could have technical users without technical university credentials as well… At the moment from what I heard the plan to fix this next year is to allow Catalyst users to delegate their voting power to some representatives (domain experts in certain categories).

A: Hm.. sounds interesting, stake pool operators as domain experts?
B: Actually not necessarily, could be anybody really.

A: Delegate but also undelegate?
B: Absolutely, just like in representative democracy, you have politicians for some time and then… when their time expires they need to re-elected.

A: Cool, pretty cool I confess!
B: Yes, there is some light at the end of the tunnel but I still hope that only people that have knowledge and skills even today vote in categories on proposals they understand… not blindly voting. This would be lethal, Cardano community trusts voters — as currently there is no way to delegate voting power away — the way to do this is not to vote if one doesn’t feel comfortable. In fact no sane person on the planet would expect Cardano users to review and vote on … 1.200 proposals…

A: What???
B: Yes, in Fund 7, which is 8mln USD, there have been 1200 proposals submitted to between 10 -15 categories, can’t remember now.

A: Jesus me but right now centralised blockchains with foundations making all technical decisions such as Solana, Avalanche, Polkadot could actually be faster and spend money and resources more efficiently, what do you think?
B: This could be, I cannot really tell you for sure, it feels like many things right now in Catalyst Project on Cardano are alpha, being tested out, tried out, resource and fund allocation is far from ideal but over time inefficiencies will be solved… imagine thousands of people iterating over proposals, many companies submitting proposals and working on them…

A: Yes, but some blockchains like Bitcoin and Ethereum they already have it for free without any Catalyst…
B: This is very true, they managed to decentralise heavily and create various forms of investment into the ecosystem, e.g. ERC-20 tokens or in case of Bitcoin traditional investment companies or some technology companies, e.g. Square, MicroStrategy.

A: I see how Project Catalyst could work but it is not without risks, there are unknowns. I like the fact that there is no single point of failure on some foundation and what if Foundation is sued by SEC or has very inefficient “Foundation’s Management”.
B: Absolutely, I would not be sincere and honest with you if I told you that it is all done deal, there is still a lot of experimentation, rapid innovation and … yes many inefficiencies.

A: Right… OK, send me that AVOUM proposals on Project Catalyst, I will create an account and have a look.
B: There you go, let me know if you have any questions, yeah, it is a bit hairy and for the more difficult questions I can ask developers on their discord server.

AVOUM on Cardano by MuKn —

but make sure to read this as well. AVOUM is really almost perfect example of “you can have a cake and it too” and that comes very rare in IT, usually there is a trade-off. I said almost because there are minor issues to consider, e.g. increased RAM usage for Stake Pool Operators / Validators but it can be an opt-in via a feature flag as I mentioned!

A: Thanks m8
B: My pleasure

Want to support us? Please stake with us (ticker: CRFA) or donate any value to: