Cover

Hi, welcome to cy6erlion's weblog. cy6erlion is a Programmer from Namibia, he is fascinated by the Philosophy of Mind, Number Theory, Cryptography, Computability, Artificial Intelligence, Economics, Peer to Peer Systems, Privacy, Ecology and Mysticism. Here he notes down his thoughts and observations.


[Keybase] [Github️] [Mastodon] [Photography] [Trello] [Email]

PGP Fingerprint: DBFA 06FF C3AB D73E E370 F47B 315B 30AA 1CE4 3913

A tree falls in a P2P Network

2019-10-24

Philosophers often ask the following question:

If a tree falls in a forest and no one is around to hear it, does it make a sound?

Can something exist without being perceived by consciousness? It is a difficult question and like many philosophical questions we cannot really proof.

In an attempt to try to understand and reason about the question, we use the analogy of a Peer to Peer computer network.

Let us say that consciousness is experienced by individual peers in the network, they are conscious of other peers and the overall state of the network. The network is the existence or the universe of the peers. Let us also assume that there is a single peer that is not connected to the others and it represents the tree in the forest.

So the question is if the peer that's not connected to the others performs some action (tree falling) did it really happen from the perspective of the connected peers. We might be tempted to say yes the action happened because the question implies that it happened but I argue that to the peers who are not conscious of the action and the question the action did not happen. The state of the network (existence) remains unchanged it is not effected by the disconnected peer, in that network the disconnected peer does not exist in the same sense as the other peers, it exists simply as a possibility but human existence is an infinite state structure the possibilities are infinite.

The network is the collective consciousness of the connected peers in other words our existence is a network of the consciousness of all conscious beings.

But it raises the question of how disconnected peers connect to the network or how we are able to be conscious of new phenomena, I believe this is a fundamental property of consciousness it is mutable and always has the possibility to acquire the unknown but until the unknown is known it is just that unknown and unconceivable. The P2P network by its design can acquire new peers but until then they don't exist (in the network or in the periphery of the connected peers).

But does this imply multi universes, does the disconnected peer exist in its own universe or does the falling tree exist in its own universe. I say we cannot know that in the same way that the peers cannot know if the disconnected peer exists.

cy6erlion

Crypto-Economics

Crypto-Economics Research

Money

2019-11-12

How do you get money, you get money by giving away something of value. Value is price, and it is decided by supply and demand aka the market. Money is a system to exchange value, but why do we have to exchange value, why can we not give away something of value without getting something in return. This might be a feature/flaw in nature or simply a conditioning, but because of this we have systems to exchange value.

Governments are described in terms of economic systems, value exchange is a fundamental protocol of society it surpasses language, religion, race in its influence in our day to day living.

cy6erlion

Double Spending

2019-08-27

Digital cash systems are prone to double-spending which is a flaw that allows the same digital token to be spend more then once. Digital tokens exist as a digital file (a string of bits) that can be duplicated. Double-spending leads to inflation which devalues the currency.

There are two forms of digital currencies, centralized which involves trusted 3rd party institutions and decentralized which is generally peer-to-peer.

It is easier to prevent double-spending attacks in a centralized system because all the state of the network (who has what coin) is stored in one place (the trusted 3rd party) and this is one of the reasons traditional commerce on the internet is centralized.

It is much more difficult to prevent double-spending attacks in decentralized systems, due to the nature of distributed systems, for example if we a have a naive system that has three peers A, B and C. Let's assume peer A has a single token x and wants to send it to B:

    A[x] -> B

after this everyone in our decentralized network should have the same state, in other words all peers should be able to verify that A no longer has the x token because he transferred it to B. But in our naive network allot can go wrong maybe C was offline when the transaction (A[x] -> B) took place or maybe C has a slower internet connection this causes the state of the network to be unsynchronized between the peers in our network (C has old state while A and B have updated state) this means that A can transfer the same token (x) to peer C and this is a double-spend.

The above example illustrates how difficult it is to prevent double-spending in decentralized system, they have to include a consensus mechanism to prevent double spending.

cy6erlion

Trust & Reversibility

2019-11-11

A common problem that arises in payment systems is the reversibility of transactions this problem is

For reversibility to be possible in any payment system trust of a 3rd party is needed to arbitrate the transaction of the two parties involved. The buyer and seller should trust that the trusted 3rd party will make the correct decision (reverse or not reverse the transaction) based on the policies and rules of the system.

The ability to reverse transactions has some advantages but it also has it's own set of disadvantages.

Trust based systems are centralized around the 3rd party arbitrator whilst in decentralized Peer to Peer systems where no 3rd party is present there is no one to trust this is why in decentralized systems reversible transactions are usually not possible by design. In decentralized systems only the underlying cryptography of the system is trusted, this approach is much more secure, faster and affordable because:

  • 3rd parties cannot be bribed/tortured/politically influenced to reverse a transaction
  • The system is difficult to exploit because the feature of reversing a transaction does not exist
  • Merchants do not need extra information from the customers, this makes this type of payments similar to paying with hard cash where no trail of personal information is needed.
  • Cheaper transactions because no more payments for the cost of mediation
  • Smart contract are possible because of minimal trust

Irreversibility also means that the ledger is a single persistent structure with an immutable history this makes allot of sense philosophically and practically.

cy6erlion

ISP's and Tunnel Vision

2019-11-11

I raised a concern recently on one of the mailing lists at Internet Society. The issue was about ISP's allocating free data bundles to popular apps (WhatsApp, Facebook etc), it turns out that this is a well known issue and ongoing debate it even has a name ZERO RATING.

Zero-rating is the practice of providing Internet access without financial cost under certain conditions, such as by only permitting access to certain websites or by subsidizing the service with advertising.~ wikipedia

The problem is that ISP's are now acting as tunnels leading to their own desired locations, they are acting like television broadcasters feeding us what they see fit, which defeats one of the core principles of the Internet which is the freedom to choose. By doing this the ISP's are shrinking the size of the Internet to a few apps.

Today allot of people cannot differentiate between Facebook and the Internet and this is a big problem that is being amplified by ISP's. ISP's should be neutral allowing us to access to the entire world wide web they should not act like tunnels leading to a particular destination rather they should be like the sky, without walls, everywhere a worthy destination.

Monopoly

Zero rating allows for internet monopolies to exist and makes it hard for small websites/ internet destinations to be discovered. It is like if a Supermarket told the road builder to build all the roads in his direction thereby cutting out the small markets because no roads lead to them.

Network Effect

Zero rating allows for a large number of people to use the free service, this can cause a network effect which is the indirect value the free services gains as more people use it and this makes the internet that much smaller and the chance of discovering new desitnations goes down.

Reality

With Zero Rating mass manipulation of society is easy, ISP's are essentially in the position to shape human reality. I am of the opinion that human reality is much better if we have allot of diverse interactions and consumption of information. When everyone is sharing the same things and consuming the same things, our reality is much more poor and there is a lack of creativity in out society which in turn slows down the progress of the universe. The pure internet allows us to express and explore diverse resources.

Javascript

Thoughts about the Javascript Programming Language.

Copying A Javascript Array

2020-02-17

Javascript Arrays are Objects, Objects are passed by reference every change in the original object effects all copies and vice versa.

var original = [1, 2, 3, 4, 5];
var copy = original;

original.push(6);
console.log(original); // [ 1, 2, 3, 4, 5, 6 ]
console.log(copy);     // [ 1, 2, 3, 4, 5, 6 ]

This type of copy is known as a Shalow Copy, if an array needs to be totaly copied without references a Deep Copy is required:

var original = [1, 2, 3, 4, 5];
var copy = [];

for(var i = 0; i < original.length; i++) {
    copy[i] = original[i];
}

original.push(6);
console.log(copy); // [ 1, 2, 3, 4, 5 ]

Other Ways To Deep Copy

Using concat()

var original = [1, 2, 3, 4, 5];
var copy = original.concat([]);

original.push(6);
console.log(original); // 1,2,3,4,5,6
console.log(copy);     // 1,2,3,4,5

Using slice()

var original = [1, 2, 3, 4, 5];
var copy = original.slice(0);

original.push(6);
console.log(original); // 1,2,3,4,5,6
console.log(copy);     // 1,2,3,4,5

Using splice() (mutates the original)

var original = [1, 2, 3, 4, 5];
var copy = original.splice(0);

original.push(6);
console.log(original); // 6
console.log(copy);     // 1,2,3,4,5

cy6erlion

Rastafari

I love writing poetry for Jah Rastafari.


I-laments

Light FIRE and
brEARTH inner-out,
bun babylon away
far far AIR way
where no WATER can cool.