Ethereum for all : develop mobile apps using MIT AppInventor by Jose Luu (Devcon4)

Devcon 4 · 11 Dec 2018 · 14:26

Jose Luu demonstrates developing Ethereum mobile apps using MIT App Inventor at Devcon4 in Prague, a visual, block-based programming tool originally built to teach app development without traditional coding. The talk covers how a beginner-friendly tool can lower the barrier to building on Ethereum.

Speakers

Topics

From Devcon 4, hosted by Ethereum Foundation.

Transcript

continuing with Android quick heads-up I'm going to show you how one can develop an Android mobile app or well it in minutes okay so claimants should have been presenting but she got all our IDE stolen and she couldn't board the plane so I'm filling in I'm so we burn we both work for a bank the second bank in France which is not a classical bank it's organized like a

credit union where each customer has a share and voting rights to a regional bank and the regional banks a owned the central the central body we've done that as a side project of our main project which is called cash whose aim is to [Music] enable every of our banking customer to go on the blockchain we are focused on mostly on identity and key recovery once

we've made those two areas we will focus on writing here iam banking application okay so this is really a side project how did it happen [Music] first we we wanted to build to build prototypes mock-ups for the UI and uux experiment to get

our IDs right before committing to to a full cutting so and our product owner was here with specialist of blood language so he wrote an open book open source book on opens blocks CAD which is a computer-aided design system using block programming and so he made us aware of block language design for Android so we went that way and then

looking closer I realized that this thing was extensible and so why not write an ECM extension so that's how it happened so let's start with a demo of how it's working so App Inventor is a web IDE that is you you don't have to install anything on

your machine you just log in on the MIT server and you've got two screens first screen is the interface composer very much like very much like what you get in the Android studio and you can switch to the programming so you program with blogs so you don't have any curly brackets or semicolon error kind of stuff everything clicks into place and this is how you do your programming this

is this makes another screen appear with the name history so this is App Inventor who who knew App Inventor okay so okay the other ones are real programmers okay so you click build and then it downloads on your mobile device you're then application is starting and you see the usual ECM stuff addresses transactions stuff like that

so if you want to do that just create a login at this address train yourself without a serum serum is not a standard component and after a while you'll get your apps in within 10 minutes you get a small app very fast it can compile and download on a companion application or you can compile to a real apk that is a real a real Android application now we've we've made a new serum

extension you load it explicitly from your computer from your filesystem you do import extension once extension is imported it appears here as a non visible component and it also appear here in the list of widgets most of the widgets as you see there are interface with it and this one is when providing the ECM functionality now when you switch to the programming mode you see that a CRM extension appears here and

this is some of the method we have implemented so you can see both basic one get blocked number get balance the gate key pair create secret key and public key you can do your hash function get transaction status and then the sending is Earl to another device okay the we work with web suite a web suite J

is a Java library they do the heavy lifting most of our functions they are 10 to 20 line and they just wrap the web suite a functions ok this is how you can get started unfortunately the MIT web server is as capacity problem because it relies on the Google App Engine and the Google App Engine itself as a limitation of 10

megabytes of data going out that is if your APK file your application is greater than 10 megabyte it's not going to work so I had to modify the code of the App Inventor and remove some of the limitation make it work with App Engine library from Google and you have to make it work on your own server on on your local machine this is a 1.4 gigabyte download because it includes all the source code all the intermediate files from the compilation

and so forth no time to fix it and make it lighter and it just requires Java 8 JVM we've tested it on Windows Linux and Apple if you run it on your local machine then the idea will appear on localhost 8 8 then you'll need the serum component the ECM component is here and you'll be able to import it into your project and have the etherium functionality the source

code is not yet here but will be what this place is not much and this is why we suppose that this will be useful as far as most of the project you'll you're not focused on developing this as far as it will be I suppose for you a side project but let's cooperate on the side project and let's make it grow in functionality let's keep in touch try it on your own and let's make it

rethink we have time for questions yes one mint Soviet no questions one no you it's not possible to Android

studio that it doesn't compile to Java there is a complex system inside I believe it compiles to scheme which is a list flag language and there is a scheme interpreter in the thing something like that I'm not a specialist of this but still you get a real apk and with the latest version of the MIT you can upload it to the tourist or question I don't think they changed well it that's depend that depends on Google

because there is a limitation they have this 10 Meg limitation on whatever goes out of the Google server so until they remove that there is no chance and this is because the web sweetie library and it's dependencies they are quite big the extension object is 10 Meg itself well we are running it on Google compute Google compute server compute engine

we're renting servers it's it's more expensive you you know the I think father they made for MIT they run it on App Engine and because it's less expensive than running the full Java [Music] okay yeah yeah we can okay okay so thank you thank you we'd have the Fondation address that's it thank you