MoFi - Mobile-First DeFi Applications.. For Everyone

ETHCC 4 · July 2021 · 35:59

Marek Olszewski describes mobile-first DeFi applications in the Celo ecosystem, including Valora and lending and exchange tools. He explains how light clients, self-custody and phone-number-based payments can make decentralized finance usable on mobile devices.

Speakers

Topics

From ETHCC 4, hosted by Ethereum France.

Transcript

hey everyone how's it going so my name is mary koscievsky and today we're going to be talking about mofi which is all about how to make mobile first uh defy applications so if you end up liking this talk um and have any questions afterwards um definitely find me outside i'm gonna be right over there but you can also find me on twitter at merrick underscore happy to answer questions online as well so i wanted to start by reflecting a little bit about the current state of d5 today

and i came across this screenshot online and i think it summarizes things pretty well right d5 today has become really really incredibly powerful we have these you know really great protocols and amazing interfaces uh to these dapps that have been deployed over the last couple of years people have used these to deploy you know billions and billions of dollars in tvl to a lot of these smart contracts it's all extremely extremely exciting but it's definitely something that requires kind of a bigger screen if you look at this it's hard not to

think that this was probably most likely predominantly developed with a desktop or a laptop screen in mind and you know many many other dapps are very similar now this and many of those are also fully mobile responsive and so that's really exciting and and i think these folks should get a lot of credit for all of that hard work but it's really hard to imagine that these applications were built with mobile first in mind and then scaled up the desktop most likely the desktop applications were built first and then these these products were

likely made to fit in a responsive manner on mobile devices now there's nothing wrong with this of course um i think this is servicing us really really well you know metamask i think the extension browser is one of the most common wallets that people are using i think they recently announced that they surpassed 5 million monthly active users that's really exciting know that that number is going to keep growing you know maybe in the next couple of years we'll hit 100 million monthly active users but one thing that i'm curious about one thing that i'm thinking about personally is how do we get to the first 1 billion users will this approach work for those users and i hypothesize that

the answer is no and the way to to do so is in fact not surprisingly um with mobile define now so to help argue my case uh i have a few points i wanted to cover and i really hope that by the end of this talk i'll be able to convince you that you as defy dap developers should be building the next generation of the apps in a fully mobile first way ideally not just as web apps but ideally starting off by building actual native mobile applications as the very first interface

that you think about and that you create when developing for your users i'm going to start with the most obvious point which is if you're going to try to get the next generation of d5 users meeting them where there's the most of them is clearly a great strategy and there are a lot of users and a lot of mobile devices out there i think this comes as no surprise but just how big these numbers are might come as a surprise so this is a graph from the erickson mobility report from this year

as of the end of 2019 there are now 8 billion mobile devices with active mobile subscriptions in the world these are legit mobile devices either mobile phones or tablets this is not counting iot devices that is a staggering number and perhaps more impressingly as of the end of last year six billion of those are smartphone devices a lot of people think that there's still a ton of feature phones out there there are there are two billion active feature phones out there but there are six billion active smartphones out there that is just a very very huge number next up people frequently ask me about

connectivity you know how good is connectivity worldwide this graph also shows a little bit of that and generally the answer is pretty good um certainly better than what i personally experience at the fedele party on tuesday i don't know if you guys also got a lot of 2g that night i haven't seen 2g on my phone in a very very long time and if you look in this graph it is shrinking worldwide as well in fact in four years time ericsson is projecting that there will be uh less than 10 percent of all global bandwidth worldwide will be 2g so 90 plus percent will be 3g or better in four years and that's that's really

exciting so my second reason is a little surprising at first maybe even counter-intuitive and that's that building for mobile devices building for devices that are actually constrained can actually lead to better outcomes and this is an idea that luke rubelski has talked about at length luke is a former director of product management at google and he wrote about this topic extensively in a book called mobile first he kind of published this about 10 years

ago back when the web 2.0 world was really taking a close look at mobile and thinking about how they would make their transition now i highly recommend this book even though it's 10 years old it is still very very relevant and and there's a number of really interesting insights in the book and one of those insights is that small screens actually force designers and product managers to really focus on what's important when you have very little space you have to be quite intentional about what you're going to put in that space and so luke talks about doing away with navigation doing away with chrome and sidebars and all of the things that

you've now come to not expect on your mobile applications because ultimately that is not adding as much value as the underlying content that a lot of these application developers are trying to get in front of you and so that's that's really good the other thing is um you know network speeds while they are improving they are still lower than what you experience on desktop and laptop devices and this forces you to actually build experiences that can work in those low connectivity environments which then translates to much better applications when presented with a higher speed connectivity and so your

desktop applications suddenly start running extremely quickly simply because you thought about making it work well on a mobile device the next insight is is a little interesting and if you think about how you use mobile devices uh you're always doing so in a much more intimate setting than than your desktop and mobile devices or your notebook devices frequently you're on a couch you might be holding it with one hand you might be on a toilet i think there was a study that said that 60 percent of people use their mobile devices on their toilet i think that shows uh something really important about us in society which is that 40 of people

lie and this kind of one-handed use in these very intimate settings where you're really devoting much less attention to kind of these products really forces us as product managers and designers to really think hard and innovate about and think differently about our users and really innovate to present really great and compelling products for them and so ultimately for all of these reasons you know luke argues that if you start by thinking about the mobile device as the first device that you want to target you ultimately end up building a better

product that when you scale it up to desktop will ultimately be better than the product that you would have created if you were building for desktop from the first place another point that luke talks about is around capabilities mobile phones have a lot of capabilities that desktops and laptop devices do not have you know beyond the obvious gps and accelerometer sensors you know these are things that certainly there are many applications out there that can benefit from them and maybe d5 can as well one day but there's a lot of other things that uh mobile phones can provide that can be quite useful for defy

applications the first is push notifications uh if you have a position that's about to get liquidated because the price of something is falling a push notification is definitely very very useful uh and this is certainly something that mobile phones offer that can be harder to replicate on desktop devices and then the second one is contact lists so vitalik yesterday i don't know if you guys saw us talk he was talking about what he envisions will be interesting beyond defy and one of the things he talked about is decentralized social networks he's particularly excited by them uh i'm equally excited and what better way

to build decentralized social networks than to piggyback off of what i think is the biggest distributed social network in the world today which is this amalgamation of all of those six billion uh smartphone contact lists it creates one massive distributed and decentralized social network that we can tap into if we're building native mobile applications that can optionally have access to these contact lists whatsapp is a great example of a company that uses to a great effect to bootstrap their social graph really really quickly my next point is about security

this one may be a little more controversial but i i still think it stands uh i would argue that smartphones are much better at storing keys than your desktop counterparts now obviously hardware wallets are um the gold standard they're exceptional i'm not talking about hardware wallets if i had the choice between storing a key on my phone or in a hot wallet on a desktop computer i would certainly be much more comfortable with doing so on my phone and the reason is these devices now have secure enclaves or trusted execution environments depending if you're talking about ios or android these are special zones either in the main cpu or in a second cpu on the

device that allow you to execute operations that even if your phone was compromised the an attacker wouldn't be able to execute without your permission and so this is really exciting and it's a great way of storing keys in fact anchorage which is a custodial product only lets you sign transactions with iphone devices they don't support any other mechanism i mean this is because they really really trust these secure enclaves they think that they are by far one of the most secure ways of securing key material out there my next point about censorship resistant

this is one of the most exciting reasons i like mobile devices and and this is because you can actually build apps that run actual blockchain clients in them so of course not full nodes full nodes require a lot of bandwidth a lot of compute mobile devices tend not to be able to provide that uh but you know we do have these things called like clients uh after all satoshi to her credit uh invented spv back in the day it was described in the original bitcoin white paper effectively the modern day like client and you know it's a real big shame that

most defy applications aren't actually using like clients in order to access the underlying blockchain instead they connect to the chain using trusted third-party nodes folks like infura and other node operators and you know i think these nodes serve a purpose but it is a real shame that the current state of defy requires them it really opens up defy users to censorship into surveillance and of course that's very antithetical to a lot of what we're trying to build in the decentralized ecosystem now of course the reason for this is

because spv app isn't actually that light on ethereum if you wanted to download all of the headers since the beginning of the network you would download six gigabytes of data that is way too much data for you to download on a mobile device um and that is primarily uh likely the reason why we are where we are but um the situation is improving um so there are now a number of snark-based like clients that are being brought to market uh through a number of kind of new and innovative platforms um mina and sela come to mind both use snarks to

optimize their like clients they both use slightly different techniques but ultimately what they let you do is download a header and then a very small snark proof that you can verify quickly and non-interactively effectively proving that the header that you've downloaded is part of the chain and that's great but it's very difficult to do that in a web application it's just very difficult to connect to the pdp network directly from a web app but on mobile devices you can totally do it but if you build a native mobile app i should say you can totally do it and finally i wanted to kind of touch

upon just a few bonus features that may not benefit d5 developers directly but if d5 developers adopt mobile devices as their primary target it will benefit the broader ecosystem and so these are the following three the first one is around scalability through full node incentives the second one is around snark proofs and the third is bridges i'm just going to quickly jump into the scalability one you know vitalik wrote this really great article a few weeks ago where he talked about

why you know he wants to scale blockchains kind of horizontally rather than vertically right getting more computers to participate in consensus through sharding rather than increasing the the sizes of these machines that are ultimately executing these transactions and you know as you can imagine many of his arguments really focused around decentralization you know he fears that if we increase the machine requirements then we're going to be limiting the ability for kind of a casual user to spin up a full node on their laptop and kind of let it sink in the background while they're doing some other work and if we limit that then we're

going to be dramatically reducing um their ability to kind of verify what you know the state of the chain and what miners are telling us is in fact the case or is in fact real in the blockchain uh ultimately limiting the amount of decentralization in the network now i think these are really really great arguments um but um i think these are stronger in a world where full nodes are not incentivized to be operated in a world where you could pay full nodes where you could incentivize them you can create a situation where a lot

of full notes can be paid at the protocol level to run and verify the work of miners or validators and by being paid they can cover the cost of kind of increased machine cost allowing the network to scale a little more vertically than i would otherwise and one very easy way to incentivize full nodes is to have like clients pay those full nodes for servicing them and so in a way if you have this model where you have a lot of defy apps that are built as native mobile applications that are using like clients they can create this outer circle here they can communicate

with the network using full nodes that are incentivized to operate that are then connecting those like lines to the validators ultimately securing the network and in a world where you have billions of users not 5 million users it's not hard to see how this can create a lot of incentive for a lot of full nodes to operate i think at its peak ethereum had 4 000 full nodes according to ethernodes.org it's not hard to imagine a world where you can do much better than that while still having full nodes run by professionals in data centers on beefy machines allowing you to process

a very large number of transactions per second so that's exciting i mentioned snark groups earlier snark proofs are really really exciting to me as well and having the ability to compose these proofs directly with proofs that a header is valid i think opens up a lot of real really interesting applications um yesterday vitalik talked about private at the stations i think that's a really great idea and one where if you can construct an attestation that is paired with a proof about a header then you can construct at the stations that reference data on chain

that can be verified by someone without access to the chain at all and that's extremely extremely powerful offline transactions are also really useful if if i make a transaction online and then if i go somewhere and try to prove to someone in a fully offline manner that the transaction happened it's much easier to do that if i have a very very efficient like client that can be verified non-interactively and then finally like clients are just really really helpful when creating trustless bridges between chains so now i wanted to transition to kind of

the second part of this talk which is to focus on some you know interesting mofi applications in action now one example of mofi is veloura so velora if you're not familiar with it is a global venmo uh or cache app if you're familiar with cache app it's built entirely on crypto rails and taking a page out of luke's playbook the app is really optimized for a small screen and so navigation is hidden away behind a hamburger to save space so that you have a lot of space to focus on your activity feed we do this because we really want to emphasize that this wallet is for

transacting and not just for storing value and investing this is a kind of a mobile wallet that you transact with on a day-to-day basis and so the three most important actions are at the bottom uh so that you can easily access them with one hand with your thumb you have send you have requests if you want to request payment from someone and of course for in-person transactions there's a qr code button as well now velour can connect to the blockchain in a fully decentralized way it connects to the pdp network using sellers like client and this works even on resource constrained devices in large part because of laura is implemented as a native mobile

application and so it connects in a permissionless trustless manner to the network so you don't have to trust a full node in the back end and this also creates that really nice demand for those full nodes so that we can scale the network with a lot of full nodes to ensure a lot of decentralization now we also work really really hard to make it secure so the app uses the secure enclave and the trusted execution environment not just for storing keys to sign transactions but also for what we call data encryption keys when sending a transaction between two parties um

the app will encrypt metadata between the two um parties and the way this works is the app creates a new private public key pair when you sign up it uploads the public key on chain so that anyone can discover it and from then on parties can encrypt data off chain using one of these keys so that only both parties in a transaction can decrypt that data so this is stored off-chain and it allows for some really great bits of data to be shared if you wanted to have this transaction feed with this

nice avatar photo and your name and a nice comment tied to the transaction all of that is encrypted using this data encryption key stored off chain and referenced by the transaction hash by only those two parties and then i think perhaps most importantly velour is designed to really take advantage of um your existing social network uh namely your contact list on your on your phone so that you can transact with people simply by searching for their name

in your contact list instead of looking up their their wallet or trying to figure out what their ens id is so this is not the telex phone number so if you're texting him right now you will be disappointed but the point still stands you can simply type in the name of someone in your contact list and it's incredibly easy to find them by phone number uh valora has a decentralized phone verification protocol that it uses when onboarding users allowing you to find people again by phone number which then allows you to find people by name in your contact list

and what's really really cool about this is that it actually works even before the recipient has signed up and so in the case that vitalik isn't yet on the laura you can send them a payment that payment gets stored in escrow smart contract and valora will automatically redeem those funds from that smart contract as part of onboarding once the app completes the decentralized phone verification it's really really exciting and finally just as a little aside as of last week the team worked really really really hard to add solo euro support

which hopefully is exciting for some of the folks here in this part of the world and the team is also actively working on adding uh seller euro cash in cash out support which is going to launch next week and so if you're interested in playing around with this i highly recommend checking it out you can find it at velourapp.com and so velour is a wallet of course but you know d5 apps are more than just wallets you know they are primarily dapps and so um with the intention of trying to convince you that you should be

building your dapps as native apps i wanted to show you just one more example uh which in this case is impact market so impact market is a ubi program it lets you find communities that you want to donate funds to and then folks in those communities can sign up and then with the tap of a button redeem some funds once a day so impact market is running right now in 100 communities across the world they have close to 200 sorry 20 000 beneficiaries and they're each redeeming on the order of 50 cents a day

which is really exciting and so to end i wanted to just share a story about manuel i'm going to call him manuel even though that's not his real name just to preserve his privacy manuel lives in laura de fretas in brazil this is a favela community in brazil an impact market went there uh and started onboarding users he heard about it from his friend he had a smartphone so he was excited he attended the group onboarding session which looks like this and he was introduced to both velora and the impact market apps he installed both of them on his mobile

device and started receiving again 50 cents a day on his mobile phone so at first he didn't really know what this was he didn't really trust it not surprisingly he would go to the community organizer every day and cash out instantly but over time he realized that you know that was relatively easy to do when he needed to do it he started trusting that it could happen whenever he needed to do it so he started uh holding on to his balance a little longer this changed even more when velora introduced savings like rewards which

effectively incentivized him to hold the balance in his wallet making him hold his balance for as long as he could before he needed to go buy some groceries and he would go and catch up then once other folks in his community heard about this they started getting excited too and so merchants in this community uh started getting interested in these rewards as well so they ended up jumping on the bandwagon and started accepting uh cella dollas as well and so it wasn't long before manuel could actually go to his local kind of corner store and transact directly on the blockchain in order to make his

purchases this grew even more and the entire kind of favela community of laura de freitas started using this fund started circulating within these communities people got excited they painted the mural they even talked about creating a fair where every transaction in town was supposed to be on veloura for an entire weekend kobet put a damper on that but the excitement is definitely there and it's just so amazing to see real transactions happening on the chain in this medium exchange manner so that's the end of the talk i just

wanted to thank you and i'm available if you have any questions is there any question um hi so i just downloaded the app uh and it has the savings account already done how does it work without the existing like ethereum based define environment how how do you do that right now yeah so cello is fully evm compatible um and

there's a number of um defy applications that have launched on the platform um there's a lending market called moolah there's an exchange called uberswap and a growing list of various different defy applications we're currently in the progress process of launching a bridge to ethereum you may have heard of james's presswitch's talk this week where he was talking about optics optics is a really new and interesting technology that allows trust minimized bridging between evm compatible chains and so as soon as that's launched in a couple of weeks we're going to be bridging

liquidity and there's a number of ethereum d5 applications that are excited by this and and have kind of committed to coming onto cello to as they kind of continue their multi-chain expansion and so the way to think about this is cello is really part of the ethereum ecosystem it's evm compatible and you know it's going to be part of this internet of evms that will continue to flourish as more and more evm compatible chains launch that's nice thank you i have second question what about the fees then because like ethereum maintenance doesn't scale that well what about cello yeah fees it's a really great

question so from the start we implemented eip1559 obviously very excited that it's launching on ethereum soon as well and the other thing that we've done that i think is quite unique is uh we've made it possible to pay for fees using erc20 like contracts so the seller dollar and the seller euro are implemented as tokens on the platform but yet you can still use them to pay for transaction fees and so that's another really amazing thing if you want to send you know seller euros to your friend to a friend's phone number you can pay for that transaction fee directly in the asset that you're sending which from a usability perspective is just really really quite elegant thank you thank you

i think that's it no one no one wants to ask another question uh do you want to share anything else about what's coming up next for cello what you're excited about sure yeah so i think we're very excited about mobile payments as you can see one of the really exciting things that actually was announced this week was that pay you is actively working um and integrating with the seller blockchain right now to make it possible to use seller dollars in the seller euro to

transact with their uh 500 000 global merchants so pay you if you're not familiar with them they are a stripe like psp and this is the first time that a psp of that size is integrating with a blockchain in order to actually process payments uh on chain for their merchants stripe definitely had to go with uh with bitcoin for a while but they ended up rolling that back and so we're just very very excited about that earlier this year i bought flowers for my mom for mother's day and i noticed i pay you process to transaction so super excited

for next year where i'll be able to buy flowers with laura using seller dollars or seller euros directly for my mom great anyone else i think we're good thank you very much