Learning how to program question

If I wanted to build a social network app for Safenet, what would I need to learn and in what order?

I am completely new to programming. Any advice is greatly appricated


One of the best resources I have found on the subject. Python is a fairly simple to learn high level programming language. The contents on the page I linked make it even easier. :slightly_smiling:


This post explains the path of least resistance…it was mentioned that Flux would be a good starting point: https://egghead.io/react-redux-cheatsheets


Javascript is definitely a prerequisite to learning React and Flux. Can’t jump right into javascript frameworks off the bat, unfortunately. @JJ055 maybe just pick up a javascript book in the library and go through and its examples (look for good ones on Amazon). Then do random projects with it to hone your skills.

That is, if making websites is what you’re after. If you want to build desktop applications, then I would recommend Python, as it’s easy to start with.


I have been playing a lot with Clojure – I suspect it will play nice with SAFE… It compiles to JVM or JavaScript, so you can get it to run almost anywhere, and works well in multithreaded or charded situations like SAFE is going to make…

As I am learning, I am really enjoying the exercises at http://exercism.io/languages They don’t give you any hints – You have to figure it all out on you own, and you get to do so in a real live programming environment of your choice… In short you get to really program… The problems are bite sized enough you can accomplish them without killing yourself – but it leads you one step at a time…

They have tracks in a ton of programming languages including Rust. Worth checking out…

Isn’t Python going to be tricky to deploy?

Why would it be? It’s a great general purpose, cross-platform language, and as such works on Windows, Linux, and Mac. Just need it to interact with the SAFE launcher. Unless you mean something else?

Personally I’ve had problems in the past with applications I wanted to run, particularly on Windows. But aren’t there issues because it is interpreted, so either the user or the installer has to ensure the correct version is installed.

Maybe this is easy for the developer to solve with the installer - which is why I’m asking - but my experience leaves me with a doubt here.

Have you deployed a Python app cross platform? If so, any tips?

I personally have not, but I have used several Python programs without any issues, and I know many large projects rely on it. It is possible to make it an executable. Electrum has worked great for both Linux and Windows and as you can see, they offer a simple executable and program installer. Look up how to make python programs executable – I found one here.

My brief foray into using Electrum to try and build the SAFE example (from the August) was one of the worst developer experiences I can remember, and I’ve had a few ;-). This was not solved, and others were trying to crack it, not just me.

I’m not saying you’re wrong. If Python really is a good developer and deployment option I think it would be fantastic. I’m speaking from a position of ignorance but bad experiences - although limited experiences - so I’m hoping someone with more knowledge and experience can answer these concerns. Hopefully. :slightly_smiling:

Hehe. Hopefully someone with Python experience will chime up then :slightly_smiling:

1 Like

Nice resource…thanks for sharing.

Starting small, getting your feet wet with stuff that can be used elsewhere, and building it up like Lego:

Look for Youtube tutorials on:

Regex, very easy and used both in shell scripts and Javascript, and elsewhere.

Shell scripting. There are tons of books and videos on this. It is the glue to put other things together dynamically. Essential for the systems admin and packager.

Python. More glue, but extremely expressive. Not so fast since it is an interpretive language. People get paid doing this!

A high-level compiled application language, not necessarily efficient, but relatively easy, such as Go.

A high-level compiled systems language, which would have been C++ but now might be Rust, or ADA if you are employed in the military. Arcane but efficient.