Code Monkey home page Code Monkey logo

cheshirenet's Introduction

cheshirenet

The nework without a medium is like a smile without a cat

What is this thing all about

Have you noticed than revolution made by Tim Berners-Lee have somehow reversed revolution made by Gutenberg? In the world of printed books each text exists in thousand copies, and no one is able to silence a word, once word have been printed and copies sold. Even most oppressive goverments were unable to collect and burn all the copies of most hated books.

Moreover, in the pre-Web world everyone kept a copy of some Encyclopedia in his home library. and every town run a local library. So, if for some reason communication with entire world was lost, there were sources of information which can help to solve a problem.

So, we want to build an offline web - an information-exchange network, where each node keeps a local copy of information which is synchronized with other node each time a possibility arises. Sounds much like good old Usenet or FIDO? Yes. These things were invented when communication links were week and no one would rely on immediate availability of a link to other end of world.

But Usenet was invented when computes were big and unmovable. And there were few of them, so each system administrator was able to maintain his own UUCP maps of the world.

Now, if two friends meet in the pub, both probably have something with few gigabytes of storage and high-bandwidth Wi-Fi interface in the pocket. So, while people exchange tidings by the world of mouth, their smartphones or tablets can exchange much more information using ad-hock wi-fi network.

So, there are millions of computers which can be potentially members of this network, and no one could account for all of them. So we should be prepared to synchronize our news spools with a stranger.

One consequence of this is that messages are passed through number of untrusted nodes. So, each message is protected by digital signature to ensure that in was not changed in the way.

Of course, if internet is available, we would use it for syncronization. It is also planned to utilize torrent-like protocol to speed-up synchronization if more than two nodes can see each other.

Basic principles of CheshireNet

  1. Every body has full control of the node one owns. This makes it differnet for example from FreeNet. Every node is allowed to filter all information it recieves and keep only what he wants to keep.
  2. Each message is proteced by digital signature to prevent tampering.
  3. Each signature key represents itself only. We would use some algorithmic way to derive memorizable nicknames and/or userpics from the key fingerprint.

cheshirenet's People

Contributors

vbwagner avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cheshirenet's Issues

Как избежать cкачивания дублирующихся сообщений?

Предположим, у меня произошёл сеанс связи, в котором я скачал некую подборку статей (анекдотов за последние 5 лет, например) из ньюсгруппы.

Потом я подключился к другому пиру, и снова сделал запрос об анекдотах. И мне вновь предложили частично старые, а частично неизвестные мне статьи.

Как планируется избежать дублирования передачи данных в этом случае?

Ссылка на цитату в документе

Добавить в спецификацию ссылок URL возможность сослаться на конкретное место в документе, например chn://uuid?p=25:36 будет ссылаться на часть документа с 25 по 36 символ, если это текстовый документ, или с 25 по 36 секунду если это звуковой файл. Конкретная интерпретация позиции зависит от формата документа.

Тогда при цитировании можно будет указать конкретное место цитирования. И при отображении цитируемого документа можно будет отобразить обсуждение конкретного места, например так, как это было в google wave. И собирать треды обсуждения не по "исторически-сложившейся" структуре, а по логической цепочке обсуждения конкретных фрагментов.

В принципе можно цитаты в цитирующий текст и не помещать вовсе, просто при запросе цитирующего документа сразу же получать и цитируемый. А при отображении цитирующего документа цитируемый текст встраивать программно с возможностью перехода к просмотру цитируемого документа в полном объёме. Это также уменьшит и искажения при цитировании.

Разъясните про "3.1.3 список тегов, которых НЕ должно быть у документа"?

Зачем это нужно?

3.1.3 список тегов, которых НЕ должно быть у документа, со списком постановщиков

Теги задаются только именами или частичными именами с указанием "иерархия". Логика по тегам и постановщикам "и" (как если бы каждый из этих тегов с каждым постановщиком шел отдельным критерием). Версия документа удовлетворяет критерию, если никто из постановщиков никакой из тегов (в иерархии) не поставил в "да".

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.