This is how I imagine(d) that SAFE works, and how I would like the example to be like


Now if this was a project in late beta testing then I might agree a little with what you say.

You must remember that you have come into this project during early alpha testing and understandably things are not yet ready for full on application development with all the “hello world” and beginner tutorials that is normally there and polished for a production staged product.

The dev website is only now being built with a version just brought online in the last month or so.

Did you attempt to do the changes @drehb suggested and at least run an APP that does what you want even though it is not quite as simple as in your opening post.


You are definitely trolling. You show more interest in repeating false “truths” - all negative - about MaidSafe, SAFENetwork and the community, than discussing about the code and picking up on the helpful suggestions from community members.

The code is just a pretext for you to repeat this message you want to send to some audience (visitors, newcomers).

It’s very obvious. Every post you write, contain several such negative opinions by you, stated as if they are some objective truth, while you totally ignore the comments related to the subject.

Here below follows evidence to this as @EvilMaid will not suddenly start talking about the subject, instead repeat more of the same FUD and nonsense (unless he vanishes after mission completed):

(or you can prove me wrong by not doing that…)


You truly have no clue what you’re talking about. You and another unnamed user on this forum seem extremely eager to label anyone who doesn’t blindly praise the total lack of anything tangible about this project as a “troll”. I’ve noticed that the people who constantly talk about “trolling” (or indeed just know what it is to begin with) are usually the actual “trolls”.

You simply don’t read what I type, so what’s the point of trying?


Could you please let us know what are your dev skills? I have checked those examples, it is just a bunch of promises with well readable code. Do you realize that this is async programming? Every action has to await for response from network. Yes that Promis/then chain can be rewritten with async await pattern, but it would be even more confusing for noobs who do not understand what it means. I can imagine how to make it little bit simpler but don’t tell me this code is not crystal clear for someone who has ever used Promise and understand what is waiting for network response. Even if you do not know exact terminology and even if you have never written single line of code you should be able to understand that this code is doing initialisation, authorisation, connection and than uploading something just by understanding English language. Yes this code can be written simpler, yes this code can be rewritten another way, yes it can be hidden by some wrapper but If you do not understand what it does than you have never ever written any async code or even worse…


This topic is at risk of going off-topic and in fact should be an important topic.

@ everyone - Drop talk of trolling and analysing motivations, but address the concerns and respond to help offered

@EvilMaid, honestly (some) people have heard you and given you reasonable answers and honest help. If you cannot follow then please itemise the points that you do not follow. Some have given workable examples for you.

Can you please point to the place where understanding is lost?

The website gives a list of things that need to be done/installed before writing/running your first APP development. At what point did you lose understanding?


After the “Create a public MutableData” header, it turns into utter nonsense to me.

(As for the person above who kept insulting me and suggesting that I’m some sort of “newbie”… I shouldn’t even reply to that as I’ve already said this, but nothing about the actual SYNTAX is confusing to me as I very well know JavaScript and have done all sorts of advanced coding. It’s the API/logic itself that is extremely messy and confusing to the point where I really wonder how anyone has been able to make anything with this.)


Help us help you my friend. Ask questions and be specific…


Are you ducking with me or what? I HAVE asked a question: “How do I use SAFE?”

What’s with the dumb image? Why not address anything I actually typed and asked? WTF is the deal here?


That’s not specific, but ok, here’s the answer.

As a user, watch this video:
As a dev, follow the instructions on the dev-hub:

If you don’t understand something written/spoken, please be specific in what you don’t understand and ask a question.


I simply answered your generic question. If it’s not the generic answer you’re looking for, maybe you should’ve asked a different one or maybe been a bit more specific.

Don’t get mad…help us help you…ask specific questions.


So you basically understood all above that point?

Whereabouts after the “Create a public MutableData” header does it come unstuck for you? Before the example or the example itself or after that?


I’m sorry that your expectations are not being met by the documentation or the community or the project.

I’ve done a lot of work on the backend but have to admit to have not touched the frontend at all. Today I looked into it for the first time to see if I can understand your grievances and maybe help out a bit.

I personally found the tutorial to be understandable. Having said that, the tutorial was not structured well and it lacked focus / context / motivation; but I am not here to criticise the tutorial, I’m here to try to help you build something cool.

The thing that struck me about the tutorial is it builds a high level API out of a low level API, which is not a beginner thing to be doing! The reason it’s doing that is because the network still being built and the high level APIs and libraries hasn’t had a chance to be created. Later there will be better libraries that will do what you want from your first post, so maybe you just need to wait a bit?

If you have specific suggestions for how you think an API should look (you started along this path in the first post) then that’s valuable to people who write libraries (which is something I have done and may do again one day). I encourage you to more fully conceive a ‘nice api design’ and post it here for a keen developer to implement. Everyone would benefit.

Back to the tutorial, the function “createMutableData” is very close to your method “createTextContainer”. The main difference is the tutorial just creates the data, whereas your function intends to also create an html element with that data in it. Frustratingly, the method “createMutableData” has some hardcoded data in it which should be refactored as inputs to the function. So I’d encourage you to go straight to that function and try to understand what is happening in it, because that’s almost the same as your createTextContainer idea.

If you’re wanting to build an app for SAFE network right now I suggest putting the network storage and retrieval operations into their own file / functions and then you can isolate the complexity of SAFE (maybe don’t even do any SAFE stuff there, just mock the storage for later implementation). When a better library comes out the complexity of that file can be reduced when you need to. And it means you can build your app now rather than wait for the ‘perfect library’ to be made. I’d be keen to hear what you plan to build!

Hope this helps and if you have any specific questions I’m happy to try to help further.