Problemstellung:
- kein zentrale Server
- kleine Gruppen
- offline First (Verbindungsabbrüche)
- Datenhoheit
- Annonymität
-
Semantic Web -
Progressive Web Apps (PWAs)
-
Distributed Apps (DApps)
{{1}}
-
Etherium
-
BitCoin
{{2}}
-
Browser:
- WebRTC
- IPFS
- Hyperdat
- Tor & onion
-
Conflict Free Replicated Data Types
Strong Eventual Consistency
Mathematisch beweisbar
ACID 2.0
{1}{ Assoziativ } {2}{ Kommutativ } {3}{ Idempotenz } {4}{ Distributed ... irgendwas }
Addition:
{{1}}
{{2}}
{{3}}
Vereinigung
{{1}}
{{2}}
{{3}}
{{1}}
"{a:3}" "{a:3,b:5}"
Alice -----o--- ---------*--------> "Summe = 8 "
\ ^ \ ^
v / v /
Bob ---------------*-o-----------*-o-----------> "Summe = 8 "
"{b:5}" "{a:3,b:5}" "{a:3,b:5}"
{{2}}
- Operation based CRDT
- State based CRDT
Was wird ausgetauscht?
- Globaler Zustand (Join)
- Lokaler Zustand (Update)
- Beaker & Hyperdat - Peer To Peer
- PubNub - Publish-Subscribe
- GunDB - Verteilte p2p Datenbank
- JitSi - WebRTC
- Matrix - ...
Wordcloud
[[___]]
Sammlungen
[[___ ___]]
Single-Choice
[(1)] Option 1
[(2)] Option 2
[(3)] Option 3
Multiple-Choice
[[4]] Option 4
[[5]] Option 5
[[6]] Option 6
Single-Choice
[(gut 1)(mittel 2)(schlecht 3)]
[ ] Option 1
[ ] Option 2
[ ] Option 3
Multiple-Choice
[[1 gut][2 mittel][3 schlecht]]
[ ] Option 1
[ ] Option 2
[ ] Option 3
What is
[[52]]
<script output="quiz:37+15">
if ("@input" == "52") {
true
} else {
"@input"
}
</script>
Man or woman is obvious, but you guess the remaining German grammatical genders?
[[male (der<!-- class="notranslate"-->)] (female [die<!-- class="notranslate"-->]) [neuter (das<!-- class="notranslate"-->)]]
[ [X] [ ] [ ] ] Mann<!-- class="notranslate"--> - German for man
[ ( ) (X) ( ) ] Frau<!-- class="notranslate"--> - German for woman
[ [X] [ ] [ ] ] Junge<!-- class="notranslate"--> - German for boy
[ ( ) ( ) (X) ] Mädchen<!-- class="notranslate"--> - German for girl
[ [X] [X] [ ] ] Paprika<!-- class="notranslate"--> - German for bell pepper
[ (X) (X) (X) ] Joghurt<!-- class="notranslate"--> - German for yogurt
- Update der LiaScript internen Strukturen (Service-orientiert)
- Implementierung eines Rechte- "Hierarch"-management
- CRDT-Trees für kollaboratives editieren