Tuesday 18 October 2011

Freedom to the Internet

The Internet is the new frontier, it develops faster than any anion or state is able to keep up with. Inspired by Jeff Jarvis’ book “Public Parts” I hereby want to lie out a basis for the independence of the Internet, for real this time.

Introducing the “nation of the Internet, an independent and sovereign state, corporations can register and incorporate in this nation-state to receive it’s legal protection. This means that any state that acknowledges the Nation of the Internet in essence has agreed to contract that protects the corporations from any legal proceedings in that country. Just to clarify here, the corporation as a whole, not the individuals that work there. On the other hand they need to be protected too, if you can’t sue the company you could just sue the CEO; to fix this loophole the employees, and former employees are protected against any Common or Civil lawsuit regarding any actions under name of this corporation, these lawsuits have to be directed towards the corporation, not the individuals. The Nation of the Internet would in itself have a legal system that I will discuss later on.

To give nations an incentive to acknowledge the independence of the Internet would have a tax code that is simple and impossible to game; and by constitution tax cuts are banned. Any transaction are geographically bound (billing address) and uniformly taxed, I’ll give details on how later. These taxes are then forwarded to the state that originated the transaction, as long as that state acknowledges the Nation of the Internet. Tax rates would be low for high-taxed countries, but high for low taxed countries, but tax-avoidance in this state would be literally impossible.

Why would a corporation choose to incorporate in the Nation of the Internet? The answer is obvious: Legal protection; any corporation incorporated in the Nation of the Internet only needs to comply with the laws of the Internet, not every single law in every country in the world. The corporations are protected from cases like the YouTube Italy case where three Google executives where sentenced to six months in jail because of privacy violations. The law in the Nation of the Internet would be simple, and include a constitutional ban on special interests.

Copyright is the greatest dispute on the Internet. How is this solved? First of all: Disney, you are going down. Copyright would remain for 20 years for creative works (movies, photos, recordings etc.) 50 years for one copy original creative works (i.e. Paintings, songs (not the recordings)) No software patents are granted, there is no need for hardware patents, more on why in “limitations of legal protection”, styles and feels can be protected if the intentions of the second party is to trick the user into believing it is using the first party’s service, but a strong application of “similar services may employ similar interfaces” must be done in process of deciding weather it is infringement or not. One last concern I would like to voice on copyright is the right to parody and to link: granted! Fair use should be legislation.

No law can be written to apply to one technology; we don’t want to get stuck in a legacy system. Laws should be guidelines, and its application to the specific technologies should be decided in case law, not in legislation. We cannot predict the future; therefore you don’t want law to be locked-in to a legacy system.

Who would be eligible for a membership in the Nation of the Internet? Internet business, that means that at least 60% of their revenue comes from Internet sources. And they need enough size to have their own datacenters. This includes ISPs, cell phone operators (smartphones and data plans), and hosting providers. Datacenter providers would provide a blanket protection to all of their customers, but the customers would pay taxes as a local corporation.

What would receive legal protection? The companies servers, and internet service; anything said or done by any employee of the company, for the company, the company are eligible for, but only by Nation of the Internet law. A police raid (or any raid by a governmental agency) of a Nation of the Internet datacenter would be considered an act of war; the exception may be environmental issues. (I.e. FCC and RF noise)

I’ll finish off with the things I see as a minimum requirement to include in the constitution.

  • Freedom of speech
  • The user controls their information (subpoenas may override) this includes everything! The company has access to everything by default; outsiders need to be opted in.
  • An IP address is not a person! If anyone presents IP addresses as “firm evidence” in a court of any kind that corporation of nation/state would be denied inquiries for such information in a limited future.
  • A service is not responsible for it’s users actions, but ay be expected to make an attempt to control them.
  • If you lie about your age, and the age given seems reasonable you are treated that age until a reasonable doubt of your real age has been raised. If doubts about your age are raised you bay be queried for proof; upon receiving the proof the service in question must remember that it has ben provided.
  • If any users real name are questioned (I.E. persons with similar names to celebrities) the user must be given a chance to prove their real name, and the service in question must remember that proof has ben provided.

I seriously doubt this is going to be my last post on this subject.

Thursday 13 October 2011

First look at Apache Cassandra

I just did the 10000m review of Cassandra, and it is impressive.
The fact that it scales natively is great.
What I don't understand is why they say it is so different from table-based databases.
Sure, it is non-relational, but so what, you can get used to that.

OK, I am actually used to the AppEngine Datastore, that helps a lot; but still, for being so "non table" it is very table like.

I'm going to give you the quick overview of how i visualize the cassandra structure.

- Keyspace
Think of them as "databases" in MySQL
- Column Family
Works almost like a table in MySQL
- Super Column
Works almost like a row in MySQL
- Column
Like a field in MySQL

Now the cool stuff starts arriving.
- Super Column Family
This is like a table, but every field is a new table. You can add a super column family in Cassandra instead of a column family, then have it contain a number of column families.
- Keys
In cassandra everything is about keys. you can not retrieve anything without a key. Every (super) column family has a name, and every entry has an index (that is a name too); in essence the columns has a key too (names).
So if I had a user named CVi (Me) stored in the database as a user it would be located in the Column Family "users", under the key "CVi". And it would have a number of Columns like email, phone number, real name, etc.
{
"users":{
    "CVi":{
        "name":"Christoffer Viken",
        "email":"..."
        "Phone number":"..."
    }
}
}
In MySQL terms, think of a table, with one entry, Primary key on that entry is "CVi"; now remember that the only way to access that row is by using the primary key.
Now to really mess things up, let us introduce the Super Column Family. now the data looks something like this:
{
"users":{
    "CVi":{
        "Profile":{
             "name":"Christoffer Viken",
             "email":"..."
        },
        "Contact":{
            "email":"Contact Email"
        },
        "logon":{
            "password":"jdKTyNXN9ah$nyqpWaTvMWnTeS2z5ThYxqQAyuZ$W29HhnDdBtw7HPvHSA6aCMvR",
            "twitter":"90989364"
        }
    }
}
}
Super Column Family: users
Column Family: CVi
Super Columns: profile, contact, logon
Columns(profile): Name, email

Now remember this is schemaless. There is no structure what so ever. You need to enforce that yourself. That is what is the hardest thing to wrap your head around.

Anyway, I'm having fun playing and I'm looking forward to to playing some more, i'll check back to you later.