Speaking the same language - topic 1

(@dirvine I’m going to ask you to intercede and pass judgment on this right up front, because I think this will smooth our road.)

I think there are some hard facts we really need to make sure we understand and agree upon. Otherwise, we generated a lot of unnecessary confusion. I’m looking at several things, but the following are really important to keep in mind.

First is the fact that owning/operating a node on the SAFE network and being a User of the network are two entirely separate things. One can run a node on the network without using it, and one can use the network without operating a node. Failing to keep these two relationships separate in our minds and conversations causes a lot of miscommunication and confusion.

Node Owner/Operator, Farmer

A Farmer contributes resource to the network in exchange for the opportunity to earn safecoin–period. That is the entirety of the relationship that a person has as a node owner. Just because one starts running a node with xGb of storage, using an xGHz cpu, over an xbandwith capacity, it does not directly give that node owner immediate access to comparable resources as a User. Think of it as a meat person renting your equipment and bandwidth (however you acquire it) to the network and being paid in safecoin. Marginal improvement in the quality of the resources gives one marginal improvement in the rate of safecoin earnings—the key phrase here being marginal. Everybody will have an opportunity to earn some safecoin as long as they run a standard node that has reasonable connectivity. Aside from the owner providing the resources that allow the node to run and assigning where he wishes the proceeds of any farmed safecoin to go, the owner has NO latitude in how the node operates. If the owner messes with the operation of the node, the network is designed to detect it and marginalize the node and thus inhibit or prevent it from participating and earning safecoin.

Network User

Aside from Core Developers and App Builders (which are special User cases not addressed here) the only other relationship to the network is that of the User. The User acquires any resources directly from the network as an autonomous entity. Whether free or paid for, any Network Storage Limit is negotiated with the network. Any raise in storage limit purchased by a User is paid to the network, because the network effectively controls all resources which are being rented to it by node owners/operators.


Failure to distinguish these two distinct identities has caused us a lot of fogginess and imprecision in hashing out different aspects of the network. I think the above is pretty factual but I think it is important that there be some broad agreement, otherwise we spin our wheels more than necessary.

I think you are pretty on the button here. The node owner can be called the farmer in our case. They run farming equipment (the vault) to protect and farm data.

1 Like

Thanks @dirvine. Since you concur I’m going to move this over to FAQ as a stable reference for further communication.


I think @dyamanaka came up with definitions of farmer, user and so on. Maybe keep the terminology consistent if you can.

Thanks @happybeing. I may have “started” some of the terminology, but it belongs to all of us now. :wink:


That’s what I’m trying to do, except these two IDEAS keep getting confused with each other in conversation and that makes a hash of things.

Can we have a list of topics/issues that are un-resolved as yet? I get confused about what is set in stone (or generally agreed) and what is still “up in the air”. This would also reduce wheel spin too I think.

1 Like

I see many other projects calling their miners farmers now, so it seems to belong to more than us :smiley: They do not credit this project or you @dyamanaka , but that’s OK, I just hope they are not misleading folk with it. I also see many other terms we use being used in some other projects as though it was their idea. So it seems we should be flattered.

Wow, I didn’t realized our terminology spread beyond Project SAFE. This means they like our concepts! I cannot claim nor wish credit for any of these things. But I am flattered.

I hope they aren’t misleading people either, but people will do what they do anyway. :frowning:

@fergish the reason farmer is confused with user is because the user definition overlaps it. It may be time to redefine our terms for more clarity. The “terms” were originally created and published on our MaidSafe Wiki

User = Anyone who connects to the SAFE Network by running the MaidSafe program.
Vault Farmer = A user who dedicates large amounts of storage space to the SAFE Network in order to farm safecoins.

Redefine User?
User = A non-farmer that uses the SAFE Network services.

Yeah, I see the source of the confusion.

How about:

Farmer: (1) someone operating a node as part of the SAFE network, by running the Maidsafe software and contributing cpu, storage and bandwidth to the network. Safecoin are awarded or “farmed” in this process. (2) the computer/software itself which is operating as a part of the SAFE network. This is also referred to as a Vault.

User: anyone who establishes and uses an account with the SAFE network as a whole. This refers to the person (or a specific user identity) which has such a relationship. A User can access the network from any node which is part of the SAFE network. Please note that, while a person may operate a node as a Farmer, and also use the network as a User, the terms User and Farmer always refer to different things.

I don’t see the overlap.

A person can be a Farmer and a User, but can also be a Producer and Consumer. But a User can’t be a Farmer or vice versa.


User = A person who creates an Account on the SAFE Network.
Farmer = A person who manages a Vault on the SAFE Network.

Does this help?

I’m not getting what’s wrong with the defs I gave above.

Maybe rewrite it so it’s clear to you. Then I can see what you’re getting at.

I was just simplifying your definitions. The distinctions you made were really between someone having an account and someone running a vault. I would use Vault instead Node when talking about farmers.

@dirvine can a user run a node and not be a vault?

I’m sure Vault and Node are somewhat synonymous in this context.
I think of a Vault being a part of the Maidsafe program behavior. A Node I think of as the whole ball of wax–the computer, network connection, Maidsafe software, etc.

That’s something I want to clarify even more so with the Glossary Project.


I was under the impression, when a person runs the MaidSafe API they create an Access Node to connect to the Network. If they start contributing resources, their Access Node also functions as Farming Node (Vault).

EDIT: Updated post to include @happybeing’s node distinctions.

Good point. I put Maidsafe API on the glossary list because defining all avenues of network access will be important, and using clear terms will avoid a lot of misunderstanding.

1 Like

Just to complicate things we need two kinds of terminology, which may or may not overlap. One for discussion here, accurate in the detail and precise in terms of mapping to the actuality of what is built into code. Another to help ordinary folk - users - understand what the network is, what it offers and what their options are without needing to learn more than they absolutely want to about how it works.

I think of “node” as a generic term, whereas @fergish I think you are making a distinction between node meaning a machine that farms. I have been thinking that any machine that is transacting on the network is a part of the network, so we need to clear that up.

User Perspective

Shifting to a user perspective, they don’t need to know what is or isn’t a node, or why we call one thing a node and something else not (e.g. the machine they log on through). I think we should avoid the use of “node” when explaining the network to end users as much as possible, and not require them to understand the subtle differences between a machine that farms and one that doesn’t (especially as this will for most be an option they turn on or off in the software they are using.

What I think users need to know is:

  • what SAFE is in broad terms
  • what functionality it provides for them, and why this is useful
  • how to access that functionality (e.g. install and run the SAFE client for their OS)
  • what options the client provides (access, apps, farming) and what they’d use them for

A Node or Not A Node!

I think it is simpler to think about all machines that connect being nodes, and that the nodes have different capabilities depending on what they are configured to do. So how about:

  • “Access Modes” - devices with Project SAFE installed on them, but which are only active while the user is running the SAFE user interface, and can be turned on and off at will without issue.
  • “Farming Nodes” - devices which have at least one vault activated in the Project SAFE software (or run as a dedicated farming only vault node that has a version of SAFE with vault capability but not the typical user interface). Farming Nodes are more effective the more time they spend active and connected to SAFE over the internet.

A SAFE User is someone who has used an Access Node to store data on the network. Unlike conventional server based services, a SAFE User doesn’t create an account, instead they reserve a name (almost decided!) which reserves them a unique anonymous address on the network as their data store - protected by a password and PIN. The address is used to store and retrieve data (by providing a username, password and pin on an Access Node), but this data cannot be traced to a particular machine or machines on the network, so it is stored safely and anonymously, spread across many different computers which cannot be identified with the user or their data, which is protected by encryption.

  • A Farmer is someone who manages a machine that is running an active vault, which stores encrypted chunks of data from many different anonymous users. For providing this storage, a farmer is rewarded with Safecoin by the network.

  • A User can either just be a user, or also a Farmer. [I think a Farmer has to be a User, in order to provide a wallet address, but I’m not sure]

Some thoughts! Hope they prove useful.


Thanks Mark, yes terms are confusing, node machine vault program collection of bits compiled language etc.

In terms of node then we refer to node as a point on the network, a machine may or may not be a vault. In the vault wiki I talk about Network Addressable Units (machines or data) etc. http://maidsafe.net/SystemDocs/detail/Vault.html

Thanks again for clearing this up as you have, helps a ton.


Thanks. This is very useful.

I agree that there will be at least several levels at which to communicate about the network. Right now, I’m going to try to compile a middle ground that we can talk about here without being Core Level knowledgeable yet still be accurate and able to think in solutions. I’m scooping off a lot of what you put down here to work with. It’s also a matter of putting in enough other study to do a competent job of it.

Edit to add; Point taken on “node”.

On the User/Farmer thing, I’m just trying to separate the two enough to make clear which aspect we’re talking about at any one time. A user can be a farmer or not. Of course, the person who is a farmer will also be a user, but they’re still different identities. The terms refer to different things that can’t be glommed together without creating confusion.

1 Like