Skip to content

Instantly share code, notes, and snippets.

@abitrolly
Last active March 20, 2020 05:27
Show Gist options
  • Save abitrolly/5f6a0873dea79f0261eff5be7116ab96 to your computer and use it in GitHub Desktop.
Save abitrolly/5f6a0873dea79f0261eff5be7116ab96 to your computer and use it in GitHub Desktop.

--- part 2: dreaming

How I would do this given enough resources? The humanitarian mission of WGC would not be just providing resources, it should also be educational to teach people the infrastructure - how to self host, store the results and share operational costs. The blockchain community did a lot of this in last four years, and a lot more should be done.

First step is transparency. Given the limited resources for only a handful of people, ensure that the whole system is sufficienty documented. Even if it will outdate, it should serve as a educational material for people already involved in distributed computing and inherently interested in how it works. Transparency is not only about infrastructure, but also about the operating costs. People need to learn how to build capacity, calculate deficiency and trust those calculations.

Open source is the stage two. No startup will survive if it is not built on top of open source technology, and a humanitarian project won't survive either. Open source helps people learn the codebase before becoming maintainers.

Maintainers. Being in open source scene for a long time, I am still afraid going transparent. Most of the money maintainers receive are based on donations and if maintainers receive more than "me who is doing burninating full time routine" it makes me sad. It is so bad that we have to support the public infrastructure with the same tokens that we use for playing market games. Either people should use tokens for distributing some fund, or "code as art" shoud be a different gameplay. In any case, the support for people behind upstream code is vital for humanitarian projects, even if its not the goal.

That should be enough to bring the project to the 2015 "community standards".

--- part 1: intro

I was participating in distrubuted computing since early days. The idea of being part of something big and helping others by just keeping my PC running was exciting and obvious. It was so obsessive that I even many years later I felt wrong when my PC was idling. Two things happened since then. Mobile devices and blockchain.

The battery of my phone and my laptop became more important to me. Blockchain and absurd game theory that PoW consensus will burn all resources just to get the coins got me thinking about energy waste. I started taken the idea of home heaters to be produced be NVIDIA seriously. GPU clouds and people running mining farms ruined the fun of being valuable. At some point I've been at EaP conference during the Barcelona blackout, and a person from there was talkin about hypercomputer cluster located in former church. The cluter that computes climate models. I was shocked to hear that these models were using CPU. With all this mining farm power and GPUs and ASICs we still use CPU, because.. because nobody can port old mathematics and old algorithms. There are no people who understand exactly how these models are computed. It is too expensive to port those models to GPUs.

The CPUs can still be useful, but I thought that it is much more important that more people will know about it, and I felt that people is the key point here. Money are printed. You can see it on https://www.blockchain.com/explorer - every 10 minutes a $10000 value pops up out of nowhere. If we get more people aware of the problem, we can solve even the most expensive tasks. Distributed computing may have lost its meaning, but the community aspect of it did not.

Mining probably drawed a lot of people from distributed projects, but I don't have the data. And at the same time blockchain introduced important concepts into distributed concepts - among trust and validation there are now also consensus and decenralization algorithms, content based addressing and P2P sharing. Together with friends at cyberFund we've seen a lot and dreamed a lot, and one thing, a particular concept of cyberNode that came up is something I am absolutely proud of.

Everybody was free to propose what cyberNode should be and one day I've seen a node that helps to calculate your local tasks - traffic, weather, temperature regulation in your house or Blender render for your neighbour. But not only that. The cybernode was your agent, your representation, it was donation your computing resources to AI that manages all these calculations using ML algorightms rather than calculating directly. It will do much more than humans can do and at some point people could disagree with that this system was doing. Powerless, a person will turn off his cybernode. The AI loses the computing power, feeling the signal, but more importantly it loses the person behind it. Asking, what went wrong.. Your node is your agent. Agent in cyberspace. That defends your interests, protects you in cyberspace.. while you sleep, while you slowly typing, while you just live a human live in Real World.

The cyberspace works separately from us. When we send an message, a gigabytes of data are shifted to get, store and process the signal. And tens of times more information is flowing each millisecond even without being triggered by humans. We live in a very small part of this cyberspace, and we can not see this invisible infrastructure and agents running there. We operate with our fingers and eyes through the small screens of our phones, tablets and monitor arrays. We are limited by design in our speed, in our attention and communication abilities, and it is not bad, not good - it is just how things are. We operate with cyberspace with this crude devices

  • touch screens, mouses, keyboard, but it doesn't have to be that way way. On the border of cyberspace and human world, small programs that interacts with objects are called Djinni. Some of them were created to help open doors during virus outbreaks. Some to enter data, or to make people lifes easier. They are not good, not evil. Generally they've made with some good purpose, but sometimes they can provide a bad service. Doing things that may affect people relationships is the easiest. Sometimes there is a conflict to access some resources. If the Djinni can not decide, then a an agent, a personal Djinni living in cybernode should negotiate. Like a Pokemon battle, every person can see the result, and when one is "losing" something, that one is also "gaining" something, to help people live in balance, or "consensus".

When a node a taken down, it is a signal that somebody needs help. The signal that is often invisible to disconnected people.

I wrote this story here, because WCG became a trigger to do it. I needed to write it down long ago, and here and now is better than in ideal place and never. Community is not something that can be built, it is something people believe in. I belive in computing and cyberspace that not only inspires people, but also cares about them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment