LIFE IS PEOPLE #113 Philip Rhoades aka Cloud Man

@philip_rhoades aka “Cloud Man”
“I’m not just moving my IT into the Cloud, I’m gradually moving myself there too.”
Humans are clearly going to have to make some existential choices in the near future. The results of the those choices could be, in the extremes, that our species goes on to explore the rest of the universe for millennia to come, or, at the other extreme, complex life on Earth could vanish altogether. It is clear that personal survival and growth fundamentally depends on the sociological and biological health of our little planet. If we want to reach an incredibly exciting and interesting future for ourselves we are going to need a good dose of enlightened self-interest for ourselves, for other people and for other species on this planet.

When wars were fought with clubs and spears etc it did not matter too much that some numbers of people removed themselves from the human gene pool. This is not true for the modern world. When bad governments, bad leaders or even just crazy individuals committed to one fairy story or another are capable of returning our species to the Stone Age - or worse, we need to be much more intelligent about how we run the place. An attempt to have discussions with people who have desires about reaching or seeing a wonderful future and are interested in having discussions/arguments about the best way to get there!"
@philip_rhoades and his thoughts on Maidsafe, RUST and the SAFEnetwork
MaidSafe is very important to me for a number of different reasons but the critical aspect of the project is that they are rewriting key parts of the software architecture in a new “System” language called “Rust”:
The Rust Language
Over previous months I have been reading a lot about what this means for MaidSafe itself and what the implications are for the apps that I want to develop to make use of the MaidSafe environment. I have become convinced of the desirability of using Rust in parts of my own apps that are in development but the problem is that Rust is very new and there is a shortage of competent people who can help do some of this stuff. Rust resembles “C” but it is harder . . maybe as hard as I found “C++” years ago, i.e. pretty heavy going. However, there does not appear to be too many other options - however slow it may be to become competent with Rust, it looks like I am going to have to attempt it.
One of the key issues I am interested in WRT Rust is the matter of concurrency - I understand programming languages have lots of problems dealing with it. To help understand Rust a bit better I thought I might try and rewrite a little of my (on again / off again) thesis Population Genetics Simulation program in Rust and see how it goes. The original simulation program was my first (and last) non-trivial C++ project. From what I have read, I should be able to accomplish some of it in Rust in a much more efficient (lines of code) way while not losing out on the main reason for using C++ in the first place - speed. I have put a description of a minimal population simulation Rust program here:
A Minimal Rust Simulation Program Description.
I have attempted to solicit help (paid and otherwise) on some of the Rust fora (so I could make faster progress) but with not much luck so I will just have to start my little simulation exercise while slogging my way through “The Rust Book”. I will document my Rust progress here (for as long as there is progress) in case it might be useful for others. It looks like this little program is a good place to start:
The difference of Rust’s thread::spawn and thread::scoped
Since my original simulation program was called “Ogre”, versions of this Rust program will become ogreXXX where I will diff each successive version from the last one and create a web page for it so it is easy for people to see exactly what has changed as things evolve (Ha! . . a little in-house joke . .). If anyone is interested in making suggestions about how to improve the code - or even doing some paid development / paired programming stuff - let me know!
This first diff was just an exercise really - I have changed the formatting to my preferred style and changed the number of threads to two. Eventually the numbers of threads generated will be equivalent to the number of cells in an arbitrarily sized arrary (up to about 15x15) but the smallest interesting array is 2x1 so two threads is a convenient place to start.
Difference between the original code and one (ogre001.rs) with some trivial changes.
Huge S/O to @philip_rhoades for an insightful discussion

metamorphosis ink on paper
#the future forgets our time is now

6 Likes

Cloud man definitely has a far out imagination. Great talk.

1 Like