MaidSafe Dev Update - March 29, 2018

Here are some of the main things to highlight this week:

  • We revealed details of our connection with HBO’s popular ‘Silicon Valley’ series this week. You can read more about it on our blog and also on Medium.
  • In order to resolve a few security vulnerabilities reported for the electron package, the front-end team is preparing to release a new patch version (v0.10.2) of the SAFE Beaker Browser in the next few days after some internal testing.
  • For the same reason (to solve the security issues reported for Electron), the front-end team also made available a new build of Peruse.
  • Part of the front-end team started to focus on the development of the dev website this week, not only to work on the UI/UX aspects of it, but also to start defining and creating the content for it. See this post on the Dev Forum for more info.
  • The Routing team is currently split into 2 teams looking deeper at consensus ordering. One team is looking at an improvement to an algorithm we have for that and the other is integrating an ordering algorithm in Routing itself.

Marketing

SAFE Academy

Work has continued on the SAFE Academy this week as we’ve been pulling together various drafts for scripts that we’ll be using and planning the work in more detail. We’re looking forward to giving you all further details around this in due course but, as we originally mentioned, we’re adopting an iterative approach on this one. The plan is to launch what is effectively an MVP that we can then continue to build up over the next few months.

CEP Videos

Both videos continue to move forwards. Today we received the animations and audio back for the Safecoin video for further comments. We’re also expecting to receive the revised script back for the Proof of Resource video tomorrow.

MaidSafe Website Update

This week has seen a number of design iterations on the new home page, together with finalising the first draft of content incorporating keyword analysis.

HBO’s Silicon Valley

We revealed details of our connection with HBO’s very popular ‘Silicon Valley’ series this week. You can read more about it on our blog and also on Medium (go on, give us a clap). Hopefully this provides some context but it’s worth repeating the point here. We can all see how the wider world is increasingly focusing on the same issues that obsess us. Please join us in helping to seed, support and spread these ideas whenever and wherever you encounter them. The community plays a crucial role in building the awareness that’s required to deliver the change that we all need to see and we appreciate each and every one of your efforts.

SAFE Authenticator & API

There were a couple of security vulnerabilities reported for the electron package (CVE-2018-1000136, CVE-2018-1000118) which affect our browser and this is why we have upgraded the package (to v1.8.4) in our Beaker Browser fork. We are preparing to release a new patch version (v0.10.2) in the next few days after some internal testing. This patch version will also include a fix for some specific scenario where the DOM API handles where not being freed automatically when reloading a page (MAID-2602).

For the same reason (to solve the security issues reported for Electron), we also made available a new build of Peruse with an updated version of electron (v1.8.4).

We’ve been working on tidying up the Peruse tests and ensuring everything is working after the refactor into the background process, with things now appearing to be stabilised. We’ve also made a good start on DOM API enhancements with a proposal ready for merging in the auth refactor branch, as well as a working branch where we’ve moved all safe ‘webFetch’ functionality to the background process too. The next week will be all about merging these branches together and ensuring their stability, before testing testing and more testing. We believe this is a really important step towards having a better Web API and a more stable SAFE browser, and we are already looking forward to be able to share it with you as soon as we’re finished with these merging and internal testing activities.

@lionel.faber is starting to contribute to safe_app_java. As a first step, he is getting the current code to work with the latest master branch of safe_app. Once this is done, the safe_authenticator APIs will have to be exposed and the test cases will have to be expanded using the authenticator APIs.

Part of the front-end team started to focus more on the development of the dev website this week, not only to work on the UI/UX aspects of it, but also to start defining and creating the content for it. See this post on the Dev Forum for more info.

SAFE Client Libs

@marcin has been sick unfortunately for a few days now and is on a road to recovery. Meanwhile, @nbaksalyar was the sole torchbearer for safe_client_libs for the last week. Liaising with the front-end team who were getting frequent Java exception of Exception in thread "Thread-7" java.lang.NoSuchFieldError: name, a hidden JNI layer bug was found out. It was due to a not quite correct treatment of the XorName type in JNI (MDataInfo.name and lots of other structs use this type). This has been resolved and task marked done.

Routing & Crust

As we are progressing towards Routing integration with the new Crust, a last few pieces need to be worked on. @povilasb recently managed to squash a bug in connection establishment which caused drops when both direct connection and nat-traversal were being done simultaneously. It took a while to spot it but this task can now hopefully be marked as done with this fix. More details logged in the task itself. Similarly, other tasks such as this one were completed from JIRA. We will be continuing to work on the remaining JIRA tasks.

The Routing team is currently split into 2 teams looking deeper at consensus ordering. One team is looking at an improvement to an algorithm we have for that and the other is integrating an ordering algorithm in Routing itself. This work is looking at node added/lost, section split, merge, chain management and purging as well as secure message transfer (inter section messaging). The teams are pretty motivated and seem to be enjoying the certainty of the results as well as the reduction in conditional statements and timers in the Routing codebase.

It is really comforting to see the simplification and easier to understand algorithms in Routing. For too long that crate has been too complex, proving difficult to get Engineers familiar with it all. This is quickly reducing a huge barrier to entry and that is great for us as MaidSafe but amazing for the project itself as we hope these advances will allow many more than MaidSafe Engineers to work on the core and this is important to us all.

71 Likes

First… 20 characters!.
Edit: 2 weeks in a row… man, I need to get out more!
Will go read it now.

I get a warm fuzzy feeling reading this part.

It is really comforting to see the simplification and easier to understand algorithms in Routing. For too long that crate has been too complex, proving difficult to get Engineers familiar with it all. This is quickly reducing a huge barrier to entry and that is great for us as MaidSafe but amazing for the project itself as we hope these advances will allow many more than MaidSafe Engineers to work on the core and this is important to us all.

26 Likes

Noo:( @Zoki … always try to be the first to reply

As always, good job!

7 Likes

Exciting that David and Nick were consulting for Silicon Valley.

I would like to see a marketing push targeted at Silicon Valley viewers who aren’t familiar with MaidSafe (the Medium post seems targeted to SAFE insiders).

18 Likes

On the marketing department. Will there, when the time is right and there is a product, also be a push to get big companies on the product? Like for example ethereum enterprise alliance? Or is marketing already working on a strategy for this?

9 Likes

=) not only decentralizing data but development as well :slight_smile: the more people can get involved the smaller the chance this project can fail :upside_down_face:

I’m really curious how that will look like :blush:

9 Likes

To be fair answering that would turn a strategy into an announcement :wink: The marketing team are very busy and have an awful lot of irons in a lot of fires. Lets hope they announce at the correct times, I am sure they will.

32 Likes

Thanks so much for all of the hard work! The team is doing a great job.

5 Likes

Im so confused as to whats going on in routing right now its driving me nuts. :persevere: dag, gossip, consensus, where data chains stand to change due to it all… or not? Who gets it and can provide an idiots guide?

Is the closed source solution being implemented until an open source solution is found?

16 Likes

I’m also in need of an idiots guide!

4 Likes

Ditto to that guide.

2 Likes

As the general would say in the A Team, I love it when a plan comes together. Great update yet again! The SAFEnetwork is certainly coming together. All the progress on the SAFE Academy, videos and new website is great to hear, as is the more technical news. Like @Josh, @momahonyb & @betterthantrav, I think I’ll need a SAFE Primer v2 :slight_smile:

7 Likes

Alpha 3 , Alpha 4 , Alpha3 & Alpha4。

1 Like

It does seem like a bit of a spaghetti scramble at the moment. But can you imagine what it will look like once it’s unscrambled!

5 Likes

Data chains are still there, the back end things are getting ordering consensus agreed and we have that algo we cannot use just yet, but alternatives also being tested. Dag is part of doing that locally in a section (shard) and also ties in with gossip for a much more efficient swarm mechanism (that is where the whole section need to get a message). All together it just makes the very core of routing much more reliable and efficient. Allows us to remove much of what we were doing in testenets in terms of find bug, close it up and testnet again etc.
All of this will mean (we hope) much fewer testnets and that excites us as it means much faster time to launch.

34 Likes

Thanks for the update Maidsafe devs.

Jippy the Maidsafe devs will make Codecademy courses and call it SAFE Academy (I know this is just my silly fantasy, but with over 45M learners are on Codecademy).

marcin :stew: get better super ant
:stuck_out_tongue:

10 Likes

Any high level documentation on the new mechanism contrasting against the old? Something that shows us the efficiency improvements would excite many more of us! :grinning:

6 Likes

I’m really excited to see this stuff get more solidified and hope to see it make its way to the primer. The way that DAG is being used as a tool here rather than the backbone of the project is closer to the true nature of what each of these technologies are intended for. It’s like biodiversity or an ecosystem. Too many projects are just a Blockchain, or just a DAG, or what already exists and doesn’t work with a Blockchain sewn onto it. Very proud of @maidsafe’s team.

12 Likes

Should it now be “datagraphs” instead of “datachains”?

@Bogard We’ll have a DAG AND a Data Chain! The DAG is just for speeding up section consensus and having it be mathematically proveable, I’m pretty sure.

11 Likes