In the not too distant future a new civilization emerges out of the chaos of the current one. A new civilization that does not recognize boundaries of any sort, government and leadership is provided by corporations spread around the globe.
The attempt to reverse engineer the human brain as a means to achieve Artificial Intelligence is an exercise in futility. Because of the abundance of computing power, modern researchers seem to be less and less creative than their counterparts in the early times of the 20th century. Everything these days seem to be about getting more data, cleverness and creativity seem to have taken the back seat as brute force approaches appear to be the best solution to every problem.
Sometimes we get spontaneous recollection of past events, most of the times these are happy events but sometimes they are things that we would rather forget. Most of the times when these spontaneous past recollections come to us they take the form of some words, sounds or pictures from the past but most of the time it is just a feeling, completely disconnected from any pictures.
Humanity will eventually need to travel beyond this solar system to other far out systems out there in the universe, this is not a question of if it will be possible but when. To me, Mars is just a temporary landing base, just somewhere we can learn to live outside this planet.
If you look critically at this proposition is not far from the truth as I will explain. If you were a Massive Corporation with an enormous appetite for computation like Google or Facebook, an efficient strategy which you could use to obtain that extra computation power without the extra cost of building another expensive datacenter would be to give people these computers to use. You could build some custom laptop computer and give it out, mostly to the academic public, for free, in exchange the recipient of the Laptop computer would pay for it by providing it power and agreeing to a term that, there will always be a low priority process running computation for the giving-company during regular use of the laptop by the recipient and the process would be upgraded to high when the user was not using the computer, in the idle mode.
Currently the best programming language I have come across is the Wolfram Language, this is because of the level of abstraction it has been built to. While other programming languages like Java and C++ tie you up in the specifics of language design, The Wolfram language takes you far away from the specifics of any machine or language mechanisms and enables you deal with computation in a raw and unbiased form. Although the wolfram language still requires you to formulate problems in a way that is compatible with the standard computation works, it tries its best to free you from thinking about the specifics of how a particular problem should be solved.