RChain Blog

RChain Co-op Weekly Community Debrief #193 Aug 26 2020

193 AUG 26 RCHAIN COMMUNITY DEBRIEF
Thu, 8/27 4:21PM • 26:22

Greg Meredith 00:00
All right, well, you want to go ahead and get started?

Rao Bhamidipati 00:03
Sure, let me share the update notes. Let me share my screen. So in terms of the network right now, both test net and main net are mostly running 0.9.25.2. But we are starting to test all 9.26 lfhs Alpha on the main net. Basically, the way this testing works is that we are creating a couple of additional observer nodes on the main net. One of them will be caught up a bit using the current process to the network. And then a new observer node will catch up using only the last finalized state methodology of catching up. So that’s kind of what we’re doing. We should get started with that either way. Today or tomorrow, and so 0.9.26. We’re calling it alpha at this point in time, because if we discover any couple of bugs or patches that we need to do, we might have that. So but 0.9.26 is kind of getting ready for being tested on the main net. And then once it works well on the observer notes on the main net, we will update most of the environment or all the environments to 0.9.26. So that would be the last finalized state piece. There is another issue we’re working in parallel on, which relates to the fact that the main net right now is very slow for a couple of reasons, we have 20 nodes with sequential proposals or Round Robin. So that’s taking a lot Time. And then we looked at what the performance issue is. And the calculation of the four tip calculations are taking a long time. So we have a couple of pieces in place to address both of those issues. In terms of the round robin thing, which is a temporary thing until we have block merge working, we now have an API call to determine what is the best next node to deploy to. So this is at this time, we think that the easiest way is to let the clients handle that that way because it is a temporary thing. And if in future that needs to be or becomes a longer term thing, where perhaps network characteristics or performance of various nodes or something like that become criteria for people to deploy we won’t worry about it as to how to do that at that time. But for now, we don’t want to spend too much time in architecting or deeply architecting something that’s a temporary situation. So that’s, that’s in and available. And the other piece we’re doing is the the for tip calculations. We’re paralyzing things as much as we can. And I think we, at least the initial estimate is that we’ve seen about the processing of that going down to one third of where it was before, but actually what the total numbers and performance looks like on the network with that we don’t have yet but that’s another piece. These two are going into the 0.9.26 in addition to the last finalized state so that’s where we are with the releases, and that’s kind of the main focus of the work this week. And then we have, once 0.9.26 is in, we have a lot of things coming up, and they may be, I’m listing them all here as 0.9.27. But it actually may be multiple releases. And as we get clarity on what can be released first and what is next, we will split them down into more releases. So there are some things that require the ability to change the POS contract. And that would be a hard fork. So that that kind of that is one stream of work if you would, then there is refactoring the runtime manager. And that enabled some other changes that we needed to address. And then the on chain configuration and short configuration. So these are all pieces that need to be done as a kind of a preamble to the block merger in parallel with the block merge. So those are, as you can imagine three or four streams of work that we will be focusing on once we’re done with 0.9.26. This week, so that’s the state of the development code, the code base development, the migration to IBM Cloud is continuing. We’re trying to get the last few servers that are still on Google, the build servers and the monitoring servers and all that moved over to the IBM Cloud.

05:52
The

Rao Bhamidipati 05:54
other thing from a continuous integration standpoint is that we have the dependencies updates the pr’s. If you look at the pr’s, right now, the list of pr’s, you’ll see a bunch of them that are basically generated by Scala steward as a dependency update type of thing. So we will probably be changing that into a separate repository, or have Scala towards can that repository so that we can work in parallel on the dependencies without cluttering up the main repository. But of course, that dependencies repository will be kept in sync with the main repository on a nightly basis or something like that, so that we know that at every point in time, by and large, whatever we do there is directly applicable to the main  repository. So that’s part of what is going on. In terms of the governance and all that, the discussion and work and kind of deeper dive and understanding of the economics of the network to ensure security, survival and growth and decentralization. That is ongoing. And I think that will still not all need some work still. The The thing is you may have a performance network or you know, something that works very well compared to others. But until you also have the models around the security and the economics of the network, well laid out. It would not be attractive to say an enterprise customer or serious applications to get on it. So that’s kind of what, what this effort is all about. So that’s ongoing work and separately on the order chat afford the I think Steve Ross Talbott is working on the chain to zulip portion of it. Dan has already done the Zulip2chain part of it. And I believe Theo is also kind of looking into or working on some pieces of that. So we’ll look at where things are. If the community can complete that relatively quickly, that’s good. If not probably somebody like Will who knows how to use the RChain API to get that data over to Zulip it might join the effort to accelerate that. So we’re still hoping to finish that relatively quickly in at least this piece in the next few weeks. So if there are any community members that are already working with RChain API and can spend a couple of hours perhaps, or a day or two, get this functionality built in. Please give out You know, please let us know. The code for this is in the RV 2020 repository in the RChain community. So that’s where it is RV 2020. So that, I think is all my update. Are there any questions or comments on this portion? All right over to you, Greg.

Greg Meredith 09:36
Darryl, do you want to give the community in review?

Darryl Neudorf 09:40
Sure. Okay. So here is the Week in Review for Thursday, August 20 to Wednesday, August 26, aka today on Thursday, the Governance Committee discussed the deadline for board candidates nominations, the team decided to announce the self nomination deadline for the board positions in multiple forums. They discussed what would be entailed in setting up a worker’s Co Op for RDev, and they discuss the readiness of the various on chain voting apps for the October meeting. On Friday in the climate coordination call, we discussed the wildfires in California and Colorado. And then Greg did a layperson overview of the three approaches to game theory and how the Abramsky Highland Ong theories relate to RChain’s proof of stake consensus. On Monday, this week’s Casper standup covered an application of OSLF (Operational Semantics in Logical Form) to a generalization of geometry. Also on Monday in the blockchain art call, they simulated quadratic voting and ranked voting as potential governance structures and looked into democracy.earth on Tuesday is the RChain education call. During the education session, Tomislov did a walkthrough of changes for his mode-client-js. In addition, the group did a comparison with Scala examples, discussed OCAPS, function parameters (dependencies) in application, Scala function parameters (example from RNode source), JavaScript demo and spread operators, partial function application (extract parameters), and dependency injection and tagless final in Scala. I hope you got all that. Also on Tuesday in the communications working group meeting, we discussed the Instagram account the setting up of Dappy pages, the education process to doing that, updating coin market cap the status of the hackathon and RChat. And please note that Greg is the guest on the Ethereum Silicon Valley virtual meetup on Friday. You can go to https://www.meetup.com/EthereumSiliconValley/events/272364480/ to connect. So that’s on Friday. Also, as well on Tuesday is the DAP developer Working Group call and they debuggged channel bridging between discord and zulip. And they worked on a Rholang plugin for Visual Studio code. And then finally today this morning in the members Hangout, they discussed product engineering signatures, generative identity game theory from the CNC call GPT dash three open AI API. And that brings us to right now.

Greg Meredith 12:27
Awesome. Any questions for Darryl? Or Rao? Okay. Ian, would you like to demo your DAppy page?

Ian Bloom 12:43
Sure. Oops, this is this is your DAppy page Greg. Let me just put in mine so I’m browsing to betanetwork slash Ian and what these DAppy pages are, they’re webpages that are being hosted on the RChain test net. So here’s one that I set up last night. I just put my avatar and a brief little description and how to reach me on Discord. And just a little tip for people who are setting up Dappy pages. The easiest way right now is using the template that Raphael set up using showdown markdown language. So if you use like a little free online showdown editor like I did, you can just put in your text and see it live in a view window. And all I really did was I just copy pasted the the text here into Dappy and I deployed the page, and I assigned myself a friendly name this beta network slash Ian as my DAppy page, and good to go. It’s up and working where I took the images and URL encoded them using something simple like dropping an image in here and base 64 encoding. What Greg did was he actually hosted his image on the blockchain itself. So when I browse to Greg here, sort of take a second pull up. So this image is actually hosted on chain, I guess it’s a it’s a JPEG or a PNG. And can’t resist just going a little further. So here, here are all the names that are right now registered on the RChain test net. So if you were to browse to any of these, I think almost all of these are personal pages. And there are a couple images and things. So it’s good fun, and I hope you more of you jump on and create your own Dappy profile pages.

Greg Meredith 15:10
Awesome. Thank you so much. Yeah, I’m about to refresh my page in just one second. I’m waiting for the transaction to complete. Because there’s a there’s a feature on on my new page that I would like to I’d like to point out that I think would would facilitate more Coordination and Integration with our on chain governance. Um, let me just grab the screen here. So, let me just check and see. Okay, looks like that. completed. So let me do a refresh. Okay, there we go. So here’s a an updated version of the page. One of the things that’s useful about this page is I have QR encoded my governance rev address. And so if we were as a community to put up these Dappy pages, then we would have photo verification associated with the QR with a QR encoding of the REV address. So that way we can we can have an additional verification check about these REV addresses. So for all kinds of coordination whether it’s sending voting tokens or sending REV. And in fact, you could you can put up you know, multiple different REV addresses right so you could have REV address for voting or REV address for tipping, and so on and so forth. And that would then be associated with your image. And other you know, identifying features on a resource on the chain that only you control. Now, of course, that it’s far from secure, someone could just grab an image of you off the internet and do the same. So it’s easily spoofed, but it’s a step in the right direction. So I would really, for that reason, and many, many other reasons. I would really like to encourage folks to go ahead and and put up a Dappy page with you know, some facts about yourself and your QR encoding of your of your governance REV address. Does that make sense? People understand what I’m what I’m driving at.

Lilia 18:00
Yes.

Greg Meredith 18:02
Cool. And it’s you know, this is all done with off the shelf tools. So for example, let’s see, I just used this QR code generator and I checked it against another one. I don’t know where the tab is anymore Just to make sure that they generated the same QR code I wasn’t being spoofed in that way. You can also you can also go around the loop and check the you can feed the QR code that’s generated into a decoder and make sure that you get back to the the address. And likewise, you know, as Ian pointed out, there’s tons and tons of bass 64 encoders if you want to go that route, or you can upload your your assets to the chain and refer to them using the Dappy protocol, link or URL, a mechanism to refer to them, so we do have content, you know, addressable storage on chain. Right now, that’s available today. And you can, you know, I mean, it’s, it’s not like, you know, the super fancy slick stuff that we see on the web. This is more like, you know, a generation or two ago. But we’re getting there once one step at a time. So I think this is a one way to both create community coherence and also to demonstrate to people who might be looking on at RChain as to what’s going on. I think this is a very, very good demonstration of how we’re approaching things. Any questions about about what I’m suggesting? Okay, I don’t think I’ve got any more. We should expect a vigorous conversation on in the Friday close to our sessions. But in terms of what we might talk about here in public, I don’t think I’ve got any more. Any questions, comments? topics of interest from the community?

Lilia 20:28
Greg I just added the link to the meetup event on Friday. It’s in the chat. Okay. And there are already I believe, 36 people sign up for the meetup.

Greg Meredith 20:39
Oh, that’s awesome. That’s really good. Okay, well, thanks. Go ahead.

Darryl Neudorf 20:53
I was just gonna ask you, Greg. You’re talking about a governance REV address. Just do people have a governance REV address? And if not, is there a simple way you could explain how someone would do that?

Greg Meredith 21:08
So the co op required that people send in a REV address in order to vote in the next AGM.

Darryl Neudorf 21:17
Okay, so that’s what you’re talking about.

Greg Meredith 21:19
Yeah, the governance REV address. Exactly.

21:21
Okay. Got it.

Greg Meredith 21:24
Yep. So whatever REV address you you sent into the co op, make a Dappy page, put your picture on it. Put that a QR code of that and any other identifying information. And you know, we’re starting to get to you know, the the makings of identifying markers for members of the co op. On chain identity.

Lilia 21:56
Greg, one question: the QR code was generated on the same DAppy page, or how did you get it?

Greg Meredith 22:03
Right? So there are if you just type in QR code generator into your browser, Oh, got it, you will find a bazillion of them. Here’s one that I used. Right, I just pasted in my REV address it generated the code and allowed me to save it as a PNG file. And then I base 64 encoded the PNG file and use that as the data in the Dappy page.

Lilia 22:33
Thank you.

Greg Meredith 22:34
Sure. Yeah, you know, it’s, um, you know, it’s not slick. But it’s relatively painless, right? I mean, there’s, you know, I used entirely off the shelf tools to do this, and did so in a matter of seconds right. There was not very complicated, just stringing together a couple of tools. Already, we’ve got the makings of a notion of identity. Now again, it’s not, it’s not the most robust notion of identity. But it’s, it’s it’s a beginning. It’s suggestive, it starts to help people see what might be the case with RChain.

Darryl Neudorf 23:17
And that photo and the QR code, they’re actually being stored on chain.

Greg Meredith 23:22
They’re stored on chain. Right? Yeah. So so so people can, and nobody else can muck with that resource, right? I’m the only one with the keys to that resource. Now, that doesn’t prevent someone else from coming along and putting up a photo of me and a different REV address. Right? So you’d have to you’d have to you’d have to have some other way of distinguishing too that claim to be the real one. Right. But you know, that’s that’s easily defeated with some, you know, two factor authentication, right I put my email address and you know, so someone can then email me with the QR code and say is this you? Right? And if someone goes to the wrong page, but they send the email address, it’s easy to verify or other means that you know what my email address is either in the co op or or otherwise. And so if someone puts up a fake email address, they will verify it but the fake email address will be easily checked as not, not the email address that’s you know, associated with So, so again, you know, it’s still not it’s not super brilliant, you know, it’s not foolproof, but slowly but surely we can begin to approximate higher and higher degrees of quality of…. So well, I we do have one other thing Ian, how many total submissions for board positions did we get? We don’t have to say who they are, but we

Ian Bloom 25:11
Right . So there are there are six members who have self nominated themselves. They’re interested in becoming directors and contending for director positions in the annual meeting on October 24. So the nominating committee is going to go through and vet those six nominees and hand that off to the board and then the board will create a ballot of potential directors for people to vote on.

Greg Meredith 25:45
There we go. Excellent. Excellent. Looking forward. This is going to be a very interesting election year. I hope that everyone is is prepared to participate Okay, um, anything else people want to talk about? Um, we can yield back the time to the community. All right, thanks to all. Ciao Ciao

Darryl Neudorf 26:17
thanks, everybody.

Lilia 26:18
Thank you, everyone.