Member 2664
72 entries
70259 views

 RSS
mad-scientist and computer programmer looking for something more interesting than most people accept as their future
  • Affiliated
  •  /  
  • Invited
  •  /  
  • Descended
  • BenRayfield’s favorites
    From AsylumSeaker
    Christopher Langan
    From Yissar
    Technology Progress vs....
    From XiXiDu
    The Nature of Self
    From QESelf
    View Point Room Argument...
    From Jorgen
    My Paper on Computer...
    Recently commented on
    From BenRayfield
    Timeless Multiverse...
    From BenRayfield
    Nudism taken too far
    From BenRayfield
    What happened to doing a...
    From BenRayfield
    Global Decentralization...
    From BenRayfield
    Plant seed of global...
    BenRayfield’s projects
    Polytopia
    The human species is rapidly and indisputably moving towards the technological singularity. The cadence of the flow of information and innovation in...

    The Total Library
    Text that redefines...

    Start your own revolution
    Catching up with the future. All major institutions in the world today are grappling to come to terms with the internet. The entertainment...

    Proposal for a multimedia...
    A musical mindstorm on the nature of sound, light, space and subjective experience powered by locally produced energy, heralding the ending of the...
    Now playing SpaceCollective
    Where forward thinking terrestrials share ideas and information about the state of the species, their planet and the universe, living the lives of science fiction. Introduction
    Featuring Powers of Ten by Charles and Ray Eames, based on an idea by Kees Boeke.
    From BenRayfield's personal cargo

    Global Language
    Project: The Total Library

    Humans can build spaceships and fly to the moon because they have a more advanced communication ability than other animals. This ability evolved in small groups of Humans. Research shows that http://en.wikipedia.org/wiki/Dunbar%27s_number  Dunbar's Number is around 150, the number of Human-to-Human relationships that an average person can practically use.

    Similarly, an average Human brain has 100 billion cells and 10000 connections from each cell to other cells. Dunbar's Number for brain cells is 10000, compared to 150 for connections between people. But connections between people aren't the only thing we do. We also have connections to businesses, governments, words, ideas, legal contracts including those you sign to get cell phone service, traffic systems, email, Youtube, Wikipedia, and many more kinds of networking.

    As we started organizing society on a global scale, we created Information Overload that Humans didn't evolve an intuitive ability to understand. Reacting to the emergency of problems coming at us faster than we could think, we organized society into hierarchies, with some people or organizations having authority over others. Our technology followed a similar pattern. Overall we built the world as a series of reactions to emergencies, which has left us with a world so complex nobody can understand more than a small fraction of it, fighting wars for reasons built so deep into the complex organization of our world that to explain it takes the length of a book that most people don't have time to read, so most people accept that we will never understand the world and hope that somebody else understands it enough to keep it running. The global economy almost crashed in recent years, and countries each race to create more advanced military and strategic technology than other countries, using resources on the ability to destroy and control instead of feeding the billions of starving people who could be doing productive work. The whole system is out of control, and nobody knows how to fix it. This is to be expected from a species that evolved to work together in groups of up to 150. We're now a group of 7 billion people, and our first priority needs to change to finding ways to work together on that scale. This is not a job for the hierarchies our society is organized to obey. We tried that and it didn't work. We need a way for all 7 billion of us to work together, not for our leaders to work together with the other leaders, because we tried that and it didn't work.

    There is something very simple we're missing. We have "a more advanced communication ability than other animals", but we lack such a communication ability on a global scale. We have websites that almost anyone can read. The website name is a global word. We have Google Translate and other software to use words in any language as global words. But we don't have a global way to talk about specific people or ideas or text or numbers or financial laws or voting systems or many other parts of the world. We have local systems where groups of people can communicate within the group about those things, but you can't give someone outside the group a URL to it or any other kind of global word.

    We need a very simple way to create and use global words, a way that average people can understand so they don't depend on computer programmers to organize society. These global words have to be compatible with our technology or people won't find them useful. That's what we're missing. This time, instead of creating a business plan and system designs and then creating the technology, first design the technology in a way so unbiased and simple and reliable and that nobody will have anything to say against it. Design it so that everybody together can control it but no person or group can control it. Design it to broadcast information to everyone who is looking for that information. We already have enough systems designed for transmitting secrets. We need a way for everyone to talk to everyone else at the same time, like anyone can view your website as a message from you to everyone. Websites linking to pages in other websites is what makes them so useful. That's the kind of communication we need to work together as a group of 7 billion people. Our first priority should be a global system of communication where anyone can broadcast to everyone messages using global words that each refer to a specific part of the world, ideas, people, actions of government, a specific bitcoin or bank account, a movie, a certain sequence of bytes, a number, a software, a virus, an antivirus software, a religion, a legal case, a subject in the curriculum of schools, a certain teacher's job in a certain school, a pothole in a road, a certain car, a traffic light, the list goes on to anything you can imagine, any part of the world. These will be our global words, and we need an unbiased system to globally broadcast messages to eachother using these global words.

    All you need to know is that public-key names let you broadcast anything you want that changes over time, controlled by whoever created the public-key, and secure-hash names are about specific information that can't be changed. You will view all these global names as pictures or bookmark names that you choose as your way to see them, but everyone else will see them kind of like tinyurls that are created from bigger urls, or in this case anything at all you've created or assembled from the creations of others or interactions you've had inside systems others have built on top of this global language. Its the general ability to communicate using any information that can change or any information that can't change or any combinations. The source of any information that changes continues to be the only source that can change what that one name refers to, like your website but more general than what you can put on a website. By using combinations of what can and can't change, and who and where the changing information is coming from, any kind of interaction at all can be created. Variations of Wikipedia, Bitcoin, voting systems, games, chatrooms, forums, online stores, legal systems, or anything you can imagine can be created from these global names. If we build those systems on top of the simple kinds of global names, then those systems can refer to more complex things in the world, like most people trust Wikipedia page names to refer to real things in the world. We can create voting systems or Wikipedia-like systems or combinations of them for us to agree on how to create names for things deeper in the world, like a name that refers to the Federal Reserve and a name that refers to the Wall Street Protesters, and then we can calculate and communicate and strategize using those as global words that we can feed into our existing systems and vote on those names, and the cycle keeps expanding and processing information however we globally agree should be done. This is not one system of processing information. Its a web of all systems people create, linking to eachother as a more advanced kind of world wide web. As the existing web refers to text and pictures and videos, the web of global names refers to any part of any system or any action in a system or any idea that can be defined in the context of these systems. In the global language web, you can receive an email linking to a realtime view of global strategy between the Wall Street Protests and the Federal Reserve as calculated by a variation of Wikipedia based on a new kind of game-theory that was only created 5 minutes ago, announced, people joined in, and 2 minutes ago 1000 people were using this system, and one of them sent your friend a link to it which he decided to email to you since you're not on the global language web yet. In the global language web, you don't download software to do specific tasks. You build new kinds of interactions using global words, which never give you viruses since they don't run new programs on your computer, and link to any part of those new kinds of interactions as easily as the existing world wide web links to text and pictures and video. You could build something similar to facebook inside this system, if you wanted to waste time on primitive systems, by defining a global name that refers to a process that includes some rules defining how the state of the process can change over time, and it could be collectively processed and kept track of similar to how Bitcoin is such a process that only allows 2 kinds of action: mine a new coin, and transfer bitcoins from some address(es) to some other address(es). But those kinds of things should come later. First, we need the simple ability to name things. Then we use those global names to build such things.

    Next, technical details of one way to create such a global unbiased free open-source system, and my progress and download of it...

    Before we build any specific technology on top of this, we need the thing to actually work. We need a system where any computer can send a combination of these words to any other computers.

    If this system is 1000 times slower and uses 1000 times more memory than other systems that only work for some part of the world, that's ok, because it will still be the most efficient system so far that does the job at all, a communication system from anyone to everyone about anything.

    If you want a communication between 2 specific people instead of to everyone, we already have encryption software that works even while everyone can see the messages between them, because the messages are transformed using math to something nobody except those 2 people can understand after decrypting it using their private passwords. Therefore, we don't need this global system to directly support communication from one place to a specific place. Communication from one place to everywhere at once (whoever or whatever computers ask for the information) as the core system can be used to build privacy on top of, for whoever wants it. The important thing is that anyone can communicate to everyone about anything, so lets get that working first.

    I've already started building part of that system. The part I'm building allows anyone to define global words that refer to any sequence of bytes, any text, any internet address, any public-key (for digital-signatures), numbers, math vectors, the left/right and up/down dimensions of anyone's mouse movements, the wave amplitude of any speaker or microphone (which changes 44100 times per second), and in general movements of any other devices you hook into this system. These are things people can choose to share with the world in realtime. They are global words you can broadcast, which other people and computers can build into interesting patterns, including musical and dancing patterns, wikipedia-like collaborative text editing, number-based voting-like interactions about anything in the world, or whatever you want to use the global words for. They're just words. I'm not telling you what to say with them.

    The system of global words I'm building part of is very general. It doesn't do anything by itself. It just assigns names to things.

    A byte is 8 bits. Each bit is 0 or 1. This is what all our communication technology, except analog things like quantum computers or radio antennas, have in common. This is the level we need to start at.

    Every file, streaming audio or video, or data of any kind, is a sequence of bytes. Instead of complicating it with the details of what the bytes mean, the core of my system assigns names to a sequence of bytes. It does this the same way for the bytes of a picture as the bytes of an internet address. Its just bytes. The global words refer to bytes. The specific bytes refer to details of the world or files or whatever thing.

    Secure-hash http://en.wikipedia.org/wiki/Secure_Hash_Algorithm  is as hard to break as encryption, but it is not encryption. Its a way to uniquely assign a name to a sequence of bytes. There is no known way to find 2 sequences of bytes that secure-hash to the same name, for the best secure-hash algorithms. A name is a shorter sequence of bytes. For example, the SHA256 secure-hash algorithm looks at any sequence of bytes and calculates a 32 byte (256 bits) name. Nobody has ever found 2 sequences of bytes that SHA256 gives the same 32 bytes for, so I think we should use SHA256 as the global standard for creating global names that refer to any sequence of bytes. This completely avoids the issue of who gets to choose what name is for what bytes, because there is only 1 option, the only one calculated by SHA256, and it is completely unbiased. For those who want more security, we also have SHA512, but the SHA512 name and the SHA256 name of the same sequence of bytes would be 2 different names that have to be later explained to be equal, so its best if we agree on what level of security is enough and all use that. To put this into perspective, when you buy something with a credit card on the internet, its common to use 128 bits of security. I'm talking about 256 or 512 bits, plus the merkle-trees (names that refer to other names that refer to other names...) stack the bits on top of eachother, so it gets exponentially more secure as this system of global words becomes more connected, as we start communicating in terms of these global words, through clicking and typing and reading the global words and software using the global words automatically and combinations of people and software working together. Our global communications will become more like brainwaves.

    Many people use secure-hash systems without knowing it. A *.torrent file (used in Bittorrent) is a secure-hash (but much less secure than SHA256) of the file it lets you download. I'm talking about using that same strategy to define global words, and define global words that refer to specific combinations of other global words and/or numbers or math or any other way to combine the words. Bittorrent is 1 level deep. I'm talking about a system that you can define words in terms of other words, something we can build on instead of just using it for downloads.

    This system will be so secure that the combined military and technical strength of all governments and armies together would not be enough to corrupt even 1 bit of the data in this system. They could shut down the internet or change the data as it flows between computers, but in the system overall there is no way for anyone to change the bytes that a specific name refers to, all the way down in the merkle-trees of what names and numbers the other names refer to. This open-source code will be available to everyone to verify this is true or to build their own systems if they think my system isn't good enough. The algorithms and behaviors of this system are understood by many experts and have stood strong as they've been tested over many years. This is a system that 7 billion people can have confidence in, secure, completely unbiased, not able to be controlled or corrupted by anyone, a global language that we can build other systems and organize a new society on top of.

    This system of global words I'm building is free and open-source to everyone, under the GNU GPL (version 2 or higher) open-source license, which legally enforces that if you build anything with it you must also license under GNU GPL so it stays open-source. When I uploaded it to http://sourceforge.net/projects/humanainet  I gave everyone legal permission to use it or build their own GNU GPL licensed programs with it. Everyone owns open-source programs. I'm not the master of the system. I have no legal or technical ability to control it, which is a necesssary part of it being unbiased.

    We can't let anyone own our global words. You can own the ability to broadcast from a private-key that represents your mouse movements or other devices you add to the system, but you don't own the public-key that anyone can use to refer to what you choose to broadcast in realtime. Public-key is a type of global word. All existing identity systems either already do or can be upgraded to use public-keys to hook into this system. For example, certificate-authorities which certify in your browser that a website is who it claims to be are already using public-keys. Bitcoin uses public-keys to send and receive money. There are many examples. That is how the identity global words will work. Names that refer to a specific sequence of bytes (and never any other bytes, so its a different name if you change the bytes) are always the same name for the same bytes, and if 2 people independently create the same bytes and name them, they will always create the same name, even if they never communicate about those names or bytes.

    To scale up to a group of 7 billion people, and give us a way to talk about whats happening so we can define problems and start to strategize on solutions, instead of letting leaders talk to other leaders and choose for us through those systems which are failing to solve the world's problems, we need an unbiased secure-hash and digital-signature based global language, for people and technology to use, so anyone can communicate to everyone about anything, and we can build more complex organizations on top of it that everyone can have confidence in the unbiasedness of.

    If you want to help build it, the relevant parts are in the humanainet Java package of http://sourceforge.net/projects/humanainet  version 0.6.3 which I recently uploaded. I defined a specification, like Java has a specification defining what behaviors it must have in all possible cases. I have not yet created the system that acts as the specification defines. Any software which behaves exactly as this specification defines will be considered a Human AI Net and will hook into this global network, but since this is an early version we will have to work out the design flaws in the specification. The core idea is solid, but the details may need some work. We can do this. We can create a global language where anyone can talk to everyone about anything.

    While designing a system to flow thoughts between people and artificial intelligences through feedback loops between mouse movements and realtime generated audio, and connecting those statistical patterns of thinking through the internet to network our minds together statistically a little, I realized that our global infrastructure network behaviors are not up to the task, so I also started designing a software to act as that unbiased global infrastructure, something I could build my system on top of. I also created JSelfModify for Human AI Net to run inside of, kind of like an operating system so Human AI Net never touches your operating system except through JSelfModify. Similarly, the humanainet Java package (download the jar file at the link and unzip it) is like an operating system that sits on top of the existing Internet but never accesses the Internet directly. In a system this advanced, I can't risk letting the software depend on anything that doesn't have and obey a well defined specification of behaviors, so I had to build these levels of abstraction. In that way, Human AI Net is a "virtual machine" that runs on top of a network of "java virtual machines", and when we get this system up and running everyone can build their own "virtual machines" on top of Human AI Net and have confidence that every bit in the program will be 0 or 1 exactly as their specification defines. There is absolute bit level accuracy in the core system of global words, something which is missing from most software today.

    We need a global language for many other things too. That's just how I thought of it.

    Or if you think you can build a better global language, nobody's stopping you, but we'll get it done faster if we work together. Tell me what you agree and disagree with and we can debate it. The core of any global language is global words, so the way to represent and transmit and receive them is the first thing we should debate.

    Tue, Nov 1, 2011  Permanent link
    Categories: language, words, standard
    Sent to project: The Total Library
      RSS for this post
    Add comment
      Promote (1)
      
      Add to favorites
    Create synapse
     
     
          Cancel