MaidSafe Dev Update - October 11, 2016

Last week we released the second dev tutorial. Since we are trying to make a new release roughly every two weeks, you can expect Dev Updates between releases to be a bit more quiet :slight_smile:

In addition to working on the next dev tutorial, the front-end team is discussing improvements related to app authorization, permissions and data sharing between applications.

We are also thinking about how SAFE Launcher can be scaled to various platforms (e.g. mobile, embedded, etc.). For example, SAFE Launcher currently needs to run in the background and continuously proxy HTTP requests to the SAFE Network, but on some mobile platforms that wouldn’t necessarily be possible. It would be preferable if mobile apps could communicate directly with the SAFE Network.

There are multiple approaches we are looking at, and we’re planning to have a detailed discussion about potential changes to SAFE Launcher this week. We’ll write a summary of the discussion and post it on the Dev Forum. The ideas we’ll present will still be open to debate by the community and we’d love to hear your thoughts and feedback once we post that topic :slight_smile:

SAFE Launcher

APIs that were integrated late into safe_core are being updated in launcher. The API for handling versioned structured data is being updated and tested from launcher.

The test module for the APIs is being updated to work with electron-mocha and once this switch is done, the CI system should be able to run the test suite again.

As said in the introduction, this week has been more related to discussions on how the launcher should be shaped for the future and how the APIs should be exposed.

SAFE Core

We have started the async overhaul this week and are using (relatively much more recent) rust-async-paradigm crates tokio-core and futures-rs. That is the direction Rust community seems to be moving and lot of work is going into them. We have created a separate dev branch to allow master to continue to be usable with present Launcher etc., as it is a big and a breaking change. A lot of work has gone into that already in 2 days and there is steady progress.

Routing & Vault

This week we have another member joining the Routing team: Diggory Hardy :smiley:

With 2 new members in Routing and Andreas getting back, we are now looking at our next milestone: user running vaults from home. This is our number one priority.

The big issue we need to address for vaults from home is being able to prune out vaults that are so low resourced they kill the network. Along with RFC 37 – Disjoint Groups (which is already underway), to address the issue of low-powered nodes, we are looking at RFC 45 – Node Ageing.

We are also discussing what other changes we need to make before being able to start testing vaults from home again. For example, data chains (which will provide data republish) is not a priority for now, this will come after we are able to test vaults from home.

Dev Outreach

With @lightyear starting full time in October, we’ve started planning our dev outreach strategy. We are currently researching events and have submitted applications to the ones we think most suitable. In comparison with previous years, we are going to be attending more events than ever through 2017 as this is a key part of our strategy in pushing engagement on the back of the alpha and early tutorial releases. We will keep you posted about the events we’ll take part in, of course.

Each event varies and we will use a combination of talks and workshops where possible. While talks are great for introducing concepts, we are excited by the workshop format, enabling Ben and other members of the team to bring app developers up the learning curve.

We see dev outreach as a key part of our strategy moving forward and growing the developer outreach team during 2017 will be one of our priorities.

In addition to attending conferences, we will also be seeding and working with members of the community interested in presenting SAFE at meetups, or run their own developer events and workshops. We will support this activity as much as possible. If you are interested in doing any of these, please get in touch with @lightyear or me (@frabrunelle).

If you have any suggestions for conferences you think would help us spread the word in the developer community, please post them here.

Bitcoin Wednesday, Amsterdam

We are going to be speaking at Bitcoin Wednesday in Amsterdam on the 7th of December so if you guys can make it through for that event we would love to see you there. We will keep you posted about the details.

Chaos Communication Congress, Hamburg

Ben is also planning to be at the Chaos Communication Congress this year (December 27th – 30th, 2016 in Hamburg). We are still waiting to hear back whether he got accepted to give a talk there, but he is planning on going either way. And he was wondering who else was planning on coming and whether anyone would be interested in organising an Assembly with him.

SAFE Browser

Last week we created a new Dev Forum topic to give feedback on SAFE Browser. @joshuef also created a topic with a general todolist of what he’s working on: Safe Browser Dev Updates (@v0.3.2).

Funding

MaidSafe’s funding round on BnkToTheFuture ends in about 14 hours. £1,246,869 have been raised through 226 backers so far. Thanks again to everyone who invested, supported and helped out with this round!

Bug reporting

If you know which component a bug is associated with, feel free to report it on GitHub in the corresponding repo. If you’re not sure where to open an issue, you can simply create a new topic on this forum and add the #bug tag. @lightyear and I are subscribed to the #bug tag, so we will automatically receive a notification whenever someone adds the #bug tag to any topic. We’ll take care of opening an issue on GitHub if necessary.

If an issue is specifically related to the SAFE API, then it makes sense to use the SAFE Dev Forum. But for issues related to end-user applications (e.g. SAFE Launcher, SAFE Demo App, SAFE Browser, etc.), it’s fine to use the SAFE Network Forum. Most users already have an account here :smiley:

Also, to make the process of opening an issue on GitHub easier, we will start adding Issue Templates to most of our repos.

46 Likes

Awesome , keep it coming :slight_smile:

7 Likes

Thanks for the update :+1:

Welcome to the team!

What’s the purpose of this one? I have an idea but maybe an explanation from the team would be helpful.

10 Likes

Good call! Looking forward to it!
Welcome, @dhardy!

8 Likes

This is about using the machine more effectively for concurrency. Rust is moving rapidly to a zero cost futures based paradigm. It means cleaner more efficient code and also parallelism. At the moment there are many blocking calls and futures clears this up a lot. However, this is a relatively new feature in rust and not well documented. So we had a few devs for several days working out the design pattern to use. That’s done now and the implementation is underway to free up those blocking parts of the code.

Background
https://aturon.github.io/blog/2016/08/11/futures/
https://news.ycombinator.com/item?id=12268988 (HN)

15 Likes

Thanks so much for all your hard work! And welcome to the team Diggory!

5 Likes

Good to hear the target is now on getting user vaults out there! :+1:

10 Likes

YES!!! Great news!!! :+1:

9 Likes

Thanks Maidsafe team for all your hardwork,

With money in the SAFE vault and a new dev, things is looking good :stuck_out_tongue:
Welcome diggory

8 Likes

Great update! Welcome diggory!

3 Likes

I still think that the SAFE proxie shouldn’t be abandoned for use with other web browsers. However IF we’re going all out with a SAFE browser/beaker whatever then could we not find a way to import addons from say firefox and chrome? Some may not be relevant, like say ones that help with youtube, but other interface addons could be awesome.

Thanks for the update!

1 Like