SAFE Network Dev Update - August 30, 2018

Yes we’ll be adding these along shortly, Tyler, along with some slightly longer form explanations of each. The marketing team will be working on that between now and next week.

7 Likes

I’ve a question about fundamental 5:

Ensure client-to-client direct messages are free. Client-to-client messages involving traversal through the SAFE Network will be charged.

Is that communicaton between 2 clients via the Xor Safe space, without saving something in a vault? Or does this mean something else? If so, what?
I’m guessing that my confusion has something to do with what is meant as ‘client’: probably every Xor node, not only the 2 end-users.

Ps: Is the number of fundamentals a coincidence or are there some Blackjack fans at Maidsafe :slight_smile:

1 Like

How is 20 not a contradiction to 12? The network ranks based on participation over time, so the network is issuing trust over time. How is that not using time as a tool?

This sounds made-up, how would the network know the difference between an upgrade and a bug?
Would running in parallel not mean a node is capable of voting twice? How will the network handle a new type of message? Will it be a case of upgrade to add support, wait for adoption, upgrade to enable feature.
With no analytics captured about nodes (because this somehow makes me less anonymous) how will you know adoption has taken place? recording the number of clearnet downloads :joy:

Again the obsession with making nodes anonymous isn’t really possible. Once my node has connected to another node at hop 1, nothing stops that node recording the IP address. Not sure how trying to obscure IP addresses really adds any security either. The important part is the communication is encrypted, which makes knowing what someones doing on the network anonymous. Taking part in the the network, that doesn’t really need to be anonymous / can’t be.

Sounds very British are nodes going to form an orderly FIFO queue, or are you going to weight them based on some kind of metric that means some nodes are more important than others? I dunno, something like geo-distribution so you are able to guarantee data redundancy instead of leaving it to randomness.

Call them farmers if you like, but in the end they are still servers. They will still make up the backbone of the safenetwork. The network still rewards ‘always on’ machines more than adhoc machines due to node ageing.

Again call it a reward if you like, its actually a tax. Therefore maintainers are a centralised authority on the network (aka a government). Will the network host its own source code, is anybody allowed to participate in being a maintainer or will this be restricted by an authority such as the ‘maidsafe company’. If not will all users be given voting rights? (This won’t work obviously because I could create a million accounts in I had the funds to do so). Can’t use people that hold safecoin, because you are empowering the rich. Farmers get to vote based on their node age? (again richer people get more votes)

What stops someone from pulling the source code from GitHub and remove the line to pay the maintainers. If enough people download this copy of the code, the maintainers wouldn’t get paid. This will be the safenetwork version of adblock.

2 Likes

Great Update, SAFE Team.

2 Likes

Nice update, but I can’t believe I forgot about it until Friday morning, although I do have a grandson visiting. I must be getting old or something :older_adult:

The Fundamentals is a great thing to have. I agree with others that it is worth ordering or as @BIGbtc suggests categorise it: User v Technology seems like a good one to me too. Reading it I thought that points 14 to 17 were not prominent enough, too far down the list.

Then again I guess this is about creating a complete list more than presentation at this stage, and in that vein I like it a lot. Well done for getting it so concise and complete - what a lot of knock out features! :partying_face:

Congratulations @Shankar, have a wonderful wedding and best of luck for the future to you and your bride. :wedding:

Good catch @neo on the percentages. Its a hard one to understand and present as we know.

It’s good to get your reactions @zeroflaw. Some points seem negative or overly pedantic to me (eg time, servers etc), but it’s good to have this as it is how some will interpret it or try to undermine it, so worth being prepared and also useful for considering better ways of describing. Personally I think it is very accurate and understandable, but then I’m already familiar with it and have seen the earlier debates over terminology, time etc

12 Likes

Thanks for the comments, I just wanted to pick up on this specific point for the moment. The maintenance fee isn’t like a tax, and by that I mean we don’t force you to use it and we don’t put you in jail for not paying it. We’re nice that way at MaidSafe :smile:!

Regards your concerns on a centralised authority. While it is in the very early stages we have started working on a governance structure to ensure that MaidSafe do not become a central point of weakness or power on the network, and that the maintenance fee will be shared out across many developers throughout the world. There are many examples past (Bitcoin) and present (EOS) that highlight the importance of getting this right and while it is too early to share any details (as we don’t have any yet) we will publish a proposal as part of a consultation process in due course.

13 Likes

What we mean by this point is that any messages that go directly between Clients (such as those discovering a connection via STUN) will be free. Conversely, messages that travel across the Network, will carry a cost.

5 Likes

These are not a contradiction the net won’t use time but us humans do. Entropy or event-driven systems experience things over a period but do not necessarily need to use time in calculations.

I can answer your other points later as I am on the road. Quick though upgrades made up or invented is weird. We are saying the net must allow upgrades. If that does not exist we must create it or invented it all of which you can call made up.

2 Likes

I mean in the sense of ‘the network will refuse upgrade’. Which makes the network sound like some kind of artificial intelligence, which first evaluates upgrades. When actually, it it probably means something more along the lines of an update takes effected once adoption is high enough. As you don’t collect statistics in the network, you wouldn’t know that it’s been adopted. If a bug occurred after two updates, with the bug in update one, but wasn’t detected because of low adoption, it makes tracking issues very difficult.

Brilliant :+1:

This is what I’ve been eagerly awaiting since college :relaxed: :relaxed: :relaxed: :relaxed:

13 Likes

If messages are going directly between clients, not only do I know who I’m talking to, but I’ll have their IP address too :open_mouth:

Thanks a lot @happybeing :blush:

7 Likes

I might be missing something here, but why is this a o.O? If you dont want to connect to someone directly(to not reveal conn info), then maybe dont establish a direct connection to them and achieve that req?

5 Likes

Exactly, the only time an IP address has any value is when there is an association (direct/indirect) to a particular entity. So in normal network activity, my IP address has no value because I’m storing/mutating chucks of data. In direct-client communication, this IP address is now directly associated to that ‘safe username’. I know I’m directly connected, because this communication is free. If i’m paying then its being obscured through the network.

This is made to sound important, but actually means nothing at all.

Super update Maidsafe devs.

I’ll probably go to this blockchain meeting (it’s super close) and say that blockchain will be disrupted by datachain (and when they ask me where this datachain is…(Can Maidsafe have datachain ready before next week tuesday??? :rofl:)
https://www.dutchinnovationfactory.nl/event/tech-night-blockchain/

Yeah I’ll be representing with my SAFE Network shirt, unfortunately I’m not one of the speakers. Not that I’m super rich, but I’ll give every person one Maidsafecoin if they sign up on this forum and make one post.

:stuck_out_tongue: Keep it up all you super ants out there…

8 Likes

err would disagree sorry. It is what it exactly states it as, “a hop”, a direction connection between 2 clients is not over a hop and doesnt contradict or go around it. If needing to be very strict for clarity I could see “after” instead of “from”/… but maybe the meaning is misunderstood.

That point indicates the value of when a system charge can be reasonable and specifies areas where the network doesn’t have an effort in relaying anything shouldn’t facilitate the need for a charge.

Dont see any problems with either of those fundamentals points and the options exist for a client to permutate their comm processes to achieve what they require. Just my pov ofc.

9 Likes

Not so much really, a basic idea here is that a peer will run a parallel vault (the upgraded one) and confirm over a random period that it behaves and can earn safecoin (as an example) at an acceptable rate and then kill off the old vault and run the new one with the old vaults key (age). I think your answer has a lot of absolutes and I note a lot of this recently in conversations, not much is absolute especially the inside of others minds :wink: I am not trying to be flippant, just absolutes are easy to disprove and wastes good debate time.

It is always possible to tend towards anonymity, again absolutes are easy to debate. Like security, longevity etc. tending towards a goal is natures way, stating you are there is probably never going to happen in such cases as these. Tending towards these is an admirable goal. How far? then is a reasonable question with a multitude of answers, but much further than today is a great goal.

Not so much British, but logical, if you check farm rewards the network as a whole (measured per section) will know when it is short of resources. At that time it will increase rewards and increase the number of nodes accepted into that section (to perhaps force a split). Hope that makes some sense :+1:

This is a typically nonsense thing I hear a lot (sorry), so any computer device is a server if it outputs data, so every living organism is a computing device and therefore a server. This is why we state in the usual sense of the word.

These types of statements like everything is marketing, everything is a server etc. are a waste of time. For instance, I could argue (very correctly) that 1 plus 1 equals 2 is baloney as you cannot have 2 things being equal to start with (equal in every sense, including their position in time and space) and therefore 1+1 is a false assertion to start with as it is a nonsensical notion that cannot exist, never mind have an answer.

Then for every math presentation, I could scream this from the audience and just waste everyone’s time :wink:

That is the outcome of not accepting a reasonable limit on a description of anything.

I hope this does not sound condescending, I do appreciate the feedback as it is likely what we will hear in the wider world and our marketing and PR folk need to be able to handle those things. So this input is actually very useful, but again the answers may have to reflect some of the tone of the questions, I am not sure. I find some of these things hard to repeat to often, but the absolute position of the question that frames something not in the statement as the only way to achieve the statement is quite hard to reframe properly.

In any case thanks @zeroflaw for providing the most important attribute, your time. I do appreciate it and hope we get better ways to handle such questions that will not sound confrontational.

13 Likes

Plus anything else they wished to tell you. This is all OK as you divulge what you wish when you wish all under your control. If you get a request to chat/video etc. directly but do not wish to then you divulge nothing, not even your IP address, why would you?

This may seem weird, but the network will allow you to have secured webrtc type comms, that requires STUN, we provide encrypted randomised STUN with vaults. So client A can request to speak to client B (via the network) and then if client B is online and willing he can accept the request. Then both will use our STUN to securely find each other’s endpoints (IP / port etc.) and the connection will be made. I do not see this as leaking info, although strictly you are as you must to communicate.

7 Likes

This sounds cool, but so far everything unexplained is explained by the word random. I could argue all day that nothing is random. So if a vault is testing an upgrade at random periods. All you are testing is that updated version (B) can talk the same language as previous version (A). Thats what interfaces and unit tests can tell you. If (B) behaviour changes, (A) is never going to be able to agree with (B), so the network can’t upgrade until enough people are randomly using (B) reinforcing that (B) has the correct behaviour (This will take longer than 50% because they are all randomly trying the the new behaviour). So the tipping point is still basically adoption. Unless the change has no impact on behaviour, then the upgrade is seamless.

So at a technical level you are going to use dynamic linking to provide updates? A bit like plugins I guess. Are you only going to keep the previous and the ''update" version loaded?

@dirvine honestly I’m just trying to work out how you expected aspects of this network to actually work as you intend. I feel resources for describing these things are limited. They really should be aim at the ‘look how simple this is.’, not ‘look how clever we are’.

Yes, but which nodes do you pick from the ones that are waiting? I know, I know the answer is random

Okay, agreed, any device with an output is a server. Yet, the network cannot be expected to work efficiently with 100 home laptops, both consuming and serving data. You are going to need servers, so lets update that definition, an always-on computer device with dedicated resources for the sole purpose of serving others. Which you clearly expect to be an important part of the network because node-ageing trusts based on ‘on time’.

:joy::joy::joy::joy: You totally just reminded me of one of my lectures I attended at uni, it was based on the same argument with a different example.

1 Like

Some people like to give constructive criticism to help people understand and improve the design. Others just like to be unconstructive, throw barbs and not really care whether the points are valid or not. Just saying.

3 Likes