/freeworldcomputer-project

An open outline of the reasoning behind a censorship resistant fork of Ethereum

GNU General Public License v2.0GPL-2.0

freeworldcomputer-project

Have questions? Create an issue or request to be added to this project to contribute.

Are you a developer like me? Are you concenred with the active encouragement of third party alterations to smart contracts that were originally advertised to be immutable? I have been developing smart contracts and decentralized software design to assist journalists and political activists. Software like this can not properly function in an environment that a community actively promoting making regular changes with no due process. In this system it is not just journalist tools and tools for political activist that can not function but neither can secure and private social networks.

Unfortunately, it appears if we want to continue to move forward on our projects and guarantee the users safety required for journalist to safely use the software, we must fork Ethereum. I would prefer to focus on the application layer but it has been demonstrated that these protections will not exist when vested interest of a small group of wealthy individuals has conflicting interest.

This is not my idea, I ran into it but I wanted to do something. As previously proposed, I encourage a plan where we fork Ethereum and maintain upstream patches similar to the relation between Redhat and CentOS or Firefox and Iceweasel, until a community can form around the project and create a road map. Until this happens we can fork multiple existing clients to help prevent a monoculture of clients.

I have have spent several months working on smart contracts and developing an application framework wth the goal of making it easier to build secure decentralized applications using distributed hash tables. We should collectively highlight that decentralized software existed before Ethereum and we should leverage all the existing tools in combination with our new #freeworldcomputer (temporary name). This will lay the foundation to build secure decentralized software that are actually censorship resistent.

I'm an experienced C++ but I have been mainly programming in Golang and Solidity in the past months.

I have already begun by forking the golang client geth, I will be making the minor changes required to differeniate the clients as most users will want to be able to run both until this #freeworld computer proves useful.

Now this is where many will call me a Bitcoin maximalist troll but I ask you to supress that desire.

I truly believe in Ethereum, before it I believed in other projects that provided good improvements to Bitcoin. I think a properly implemented proof-of-stake system is the best way forward for cryptocurrency, I believe short block times provide better functionality for a smart contract platform and that smart contracts can be used alongside existing tools to develop decentralized applications that change the way humans interact.

By using these tools we can do what cypherpunks (not to be confused with cyberpunk) have been doing since the dawn of the internet. Using technology to circumvent censorship and bypass unjust and archaic systems that don't properly protect people.

Doing this guarantees liberties for a more free future. This will not be done by gambling and increasing the price of a token rapidly as possible but instead through slow and careful implementations of peer reviewed code to function as law. We must cultivate an environment that encourages modest risk to be taken, encourages public testing with test tokens before launching crowd sales. Taking our time and building a secure platform that allows code to be run on this new more free world computer without restriction or third party tampering is incredibly valuable because that platform will be accesible by anyone and provide anyone with an affordable platform to run any software they would like.

In order to prevent past mistakes we should be aware there are three main stake holders in a cryptocurrency ecosystem.

There is a delicate system of checks and balances that exist in cryptocurrency between the developers, the token holders and the miners. We should always encourage an environment where none of these three parties consolidate too much power. This system of checks on power can work and has worked but the community must be aware that maintaining this balance is valuable. But real free and democratic systems are not perfect, patience will be necessary.

I'm not wealthy but I can provide what I can to serve as initial funding while the project remains unnamed and without a community. Allowing for a community to form and establish itself and to be fully involved in the process.

I have no desire in running a crowd sale, making profit or even sharing my identity, I do not want to be a leader with any special privileges. We should not give any person too much control over the system.

These initially donated funds can be entrusted in a simple DAO contract that can be managed to fund development. I can give hand over control of this DAO to developers who actively participate in development until a better system can be put in place. Github and the DAO can also serve as an open area for discussion so that of all discussion by volunteers is always in the open and nothing is decided behind closed doors, without the ability for other stakeholders to participate.

*People will claim this choice is made because I and others have a religious "fetish" for decentralization, but they will have to admit that if that is true we also have the same religious zeal for freedom of speech too and personally I'm not ashamed of it.

Just like with decentralization, for freedom of speech to truly function in an open society, you must be willing to hear opinions you do not agree with.

For a trustless, open access and decentralized world computer to exist, you must be willing to allow code you don't agree with run.*

This is an inherent and undeniable trade off, as with any freedom.

This principle is the foundation for this split and we will build a new free world computer on the foundation of these principals, not because it is easy but because it is hard, because standing up for freedoms is primarly to protect everyone in the long term, even if we have to sacrafice comfortability in the short term. In the face of potential financial ruin I understand why core developers did what they did but understanding it does not mean it was the right course of action. Avoiding taking the easy way out is hard but I truly believe is worth doing because these projects we build today are being built not just for the present but for the future. We can not afford to be so short sighted in our decision making because the technology around us is constantly changing our environment.

I propose anyone who agrees with these principals and is upset with the current state of Ethereum assist in forking Ethereum and building a new fee world computer, designed primarily for a more free future, that will not put the interest of a wealthy few ahead of these principals, because these principals are not just marketing jargon, they are essential for a free society in a increasingly technologically advanced world.

We can decide if that means using the existing blockchain or if we should start from scratch. This will have to be decided by the community and not any individual.

Thank you for reading this far.

Seed, freeworldcomp@sigaint.org

Projects

To begin, we need volunteers to take over bringing over existing clients and begin maintaining upstream patches with the exception of the censorship tools added in the soft fork and any hard fork changes that are added that affect the intergrity of the system.

We need more than software developers, we need writers, artists and anyone who wants to contribute to rebuilding a foundation without any dependencies on any investors.

Go lanuage client

Seed, I have started the fork, I will contribute more when time permits. Anyone is welcome to assist.

Update Work is set to begin shortly, I will be working under the assumption a new blockchain is going to be formed and distribution will not be through a crowdsale.

Rust client

C++ Client

Java Client