wikisym

12
Deep Hypertext with embedded revision control implemented in regular expressions Victor Grishchenko TU Delft WikiSym’10 2010 git for the Web, Wave-like

Upload: victor-grishchenko

Post on 08-May-2015

233 views

Category:

Documents


2 download

DESCRIPTION

preliminary version of slides for the WikiSym talk

TRANSCRIPT

Page 1: Wikisym

Deep Hypertextwith embedded revision control

implemented in regular expressions

Victor GrishchenkoTU Delft

WikiSym’10

2010

git for the Web,Wave-like

git for the Web,Wave-like

Page 2: Wikisym

Text and hypertext

““PAPERPAPERBEHINDBEHINDGLASS”GLASS”

-- Ted Nelson-- Ted Nelson

The Web you see as a glorified television channel today is just one part of the plan. ......However, the intuitive editing interfaces which make authoring a natural part of daily life are still maturing....need access control and archival tools that, like browsing, don't require one to get into the details of computer operating systems......help of machines... to follow links only from reliable sources... -- Tim Berners-Lee

Ted Nelson/orig h-t(news)paper behind glassindex to cherry-pickhow to merge

Ted Nelson/orig h-t(news)paper behind glassindex to cherry-pickhow to merge

Page 3: Wikisym

Synthesis

Michael: Wikipedia is the best thing ever. Anyone in the world can write anything they want about any subject. So you know you are getting the best possible information. -- “The Office”

Michael: Wikipedia is the best thing ever. Anyone in the world can write anything they want about any subject. So you know you are getting the best possible information. -- “The Office”

how far we can go with wikis

battlegroundlet’s analyzeconclusion?how it REALLY worksbetter ideas?

not defend, but either buy or not

how far we can go with wikis

battlegroundlet’s analyzeconclusion?how it REALLY worksbetter ideas?

not defend, but either buy or not

Knuth is a fan of Wikipedia, but he's a bit leery of the concept, saying that he would not want to have to remain forever on guard after making technically complex contributions, lest his comments be badly reedited. -- Don Knuth

Knuth is a fan of Wikipedia, but he's a bit leery of the concept, saying that he would not want to have to remain forever on guard after making technically complex contributions, lest his comments be badly reedited. -- Don Knuth

Page 4: Wikisym

Social networks

•git network

•Fwd: “network”

•LiveJournal network

•twitter network

social networkfiltering infocommonplace

but how can we social-filter-edit texts?

social networkfiltering infocommonplace

but how can we social-filter-edit texts?

5 MIN5 MIN

Page 5: Wikisym

Revision control•diff/match/

patchparadigm

•Operational Transformation

classic: main abstractiongeeky-freakyno guarantees

OT: invented for LANmain abstractioninconsistentsimply sucksno way to decentralize

Xanadu: nobody saw it working

classic: main abstractiongeeky-freakyno guarantees

OT: invented for LANmain abstractioninconsistentsimply sucksno way to decentralize

Xanadu: nobody saw it working

Page 6: Wikisym

Requirements•real-time

•distributed/decentralized

•deep links,history

•instant access

•simplicity

let’s consider new approach

requirements

hyper-wikipedia

let’s consider new approach

requirements

hyper-wikipedia

Page 7: Wikisym

Simplicity

•definition vs implementation

•data formats: string-based

•formal simplicity: STACKLESS DFA

/^([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-z0-9]{1}[a-z0-9\-]{0,62}[a-z0-9]{1})|[a-z])\.)+[a-z]{2,6})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)$/i

[email protected]

we are making a protocol, not a Google service

simplicity is paramountesp for consistency

we are making a protocol, not a Google service

simplicity is paramountesp for consistency

Page 8: Wikisym

Relativity: Lamport-FidgeRelativity: Lamport-Fidgefundamntal difference from OT:

relativistically consistent

may use in a distributed manner

fundamntal difference from OT:

relativistically consistent

may use in a distributed manner

8 MIN8 MIN

Page 9: Wikisym

MechanicsMechanicsॐ0101T01a1ea1a2xa2b2 b2a5sa2a3 a3b1ta3a4 ⌀ ⌫ 0102

So, let’s explain

diff from OT: ids !!!

atomscausalityforms/stringsyarns, weaves, wefts

So, let’s explain

diff from OT: ids !!!

atomscausalityforms/stringsyarns, weaves, wefts

Page 10: Wikisym

Mechanics IIMechanics II

s/s/.{5}.{5}(?:(?:⌦.{4})+(?:(?:⌦.{4})+⌫⌫.{4})*.{4})*⌫⌫.{4}.{4}(?:[⌫⌦].{4})*|(?:[⌫⌦].{4})*|.0.0..0.0.(?:[⌫⌦⌀].{4})*|(?:[⌫⌦⌀].{4})*|(.)..(..)(.)..(..)(?:[⌫⌦].{4})*(?:[⌫⌦].{4})*/$1$2/g/$1$2/g

the most “popular”operationthe most “popular”operation

Page 11: Wikisym

Formal: contributions

•real-time collaborative editing framework

•enables git-like decentralized workflows

•string-based formats, regex-based algorithms

•deep linking capability

•deep hypertext with instant access

OTX

forking, branchesstretchtextquotationslinks to any range in any state

forking, branchesstretchtextquotationslinks to any range in any state

Page 12: Wikisym

Applications of DH•real-time

collaboration

•federated Wikipedia

•brainstorming wiki

•darknet wikis

•local/offline wikis

MERGE unambigouslyMERGE unambigously