[Musik] Tatsächlich sprechen wir heute über das, was früher mal mit eBay zu tun hatte, jetzt nur noch Kleinanzeige heißt, aber eigentlich am besten immer noch auf einem Flohmarkt stattfindet und damit übergebe ich an den Speaker heute und zwar Gerinthold. Ja, danke schön Till. Danke, ja ich möchte euch heute die Geschichte meines mittlerweile halbjährigen Prototype One Projektes Flohmarkt erzählen. Vor etwa einem Jahr hatte ich mal irgendwann die Idee, dass dieses Mastodon, dieses dezentrale Twitter ja eigentlich ganz toll ist und dass es eigentlich sehr schön wäre, wenn man da auch seine Gegenstände, die man nicht mehr haben möchte, die man weiter benutzt wissen möchte, über ein solches System verteilen könnte und ja, da ist die Idee Flohmarkt entstanden und dann habe ich festgestellt, dass auf Mastodon schon sehr viele Leute sich das wünschen und dachte mir, okay, ja, machen wir, machen wir. Was werdet ihr heute hören? Wir steigen ein mit einem kleinen Rückblick über die Entwicklung selbst. Wie geht man eigentlich vor, einen dezentralen Service im Activitypub-Universum zu bauen? Wir sind ja schließlich auf der Hacker-Konferenz, da möchte man auch ein bisschen technisch werden, also die ersten 15 Minuten wird es um das System per se gehen. Was ist eigentlich dieses Fediverse? Wie ist es technisch? Dann hoffen wir, dass oder ich hoffe, ihr hofft das mit mir, dass mir die Live-Demo-Götter gewogen sind und dass das hier vorhandene WLAN ausreicht, um euch eine akzeptable Präsentation darzubieten, wie man das System eigentlich benutzt und anschließend daran würde ich sagen, machen wir eine Q&A-Session, da sich in meinem letzten Vortrag gezeigt hat, dass da immer sehr viel Diskussionsbedarf besteht. Würde ich sagen, fangen wir an. Was ist eigentlich dieses Fediverse? Das Fediverse ist im Endeffekt eine Social-Media-Plattform, die nicht aus einem zentralen Server besteht, so wie bei Facebook oder Twitter, sondern wo der Service von einer Software bereitgestellt wird, die im Grunde jede Person auf einem Server, auf einem eigenen betreiben kann. Diese Services haben die Eigenschaft, miteinander zu kommunizieren. Wir sehen hier schon ein paar Dienste. Ich habe hier mal als Beispiel Mastodon, PeerTube, Pleroma und MIS-key genommen und wenn diese Server miteinander federieren, dann werden Postings, die auf diesem Server gepostet werden, auch quasi auf die anderen Systeme übertragen. Hier zum Beispiel auf einem PeerTube, das ist ein Videodienst ähnlich wie YouTube, jemand ein Video postet und jemand anderes nur einen Mastodon-Account hat, dann kann er mit dem Mastodon-Account diese Videos kommentieren. Diese Interoperabilität wird eben gewährleistet von einem Protokoll, das heißt ActivityPub. Was wir wollen, ist, wir wollen da so einen Flohmarkt reinbauen. ActivityPub ist ein JSON-Standard, also sämtliche Server-to-Server- Kommunikation findet über JSON statt, also JSON over HTTP und so eine Message sieht im Grunde relativ gemütlich aus. Du hast bei jeder Message einen Typ der Aktion, die ausgeführt werden soll. Hier ist das zum Beispiel das Krieren eines Posts, also der Server, auf dem der Post gepostet wird, gibt hier quasi den User an und ergibt dann quasi das Inhalt, also den Inhalt des Objektes mit. Hier soll jetzt eine Node angelegt werden mit dem Content, also Text "This is a Node", Veröffentlichungsdatum und einem Adressaten, also wir können entweder an den ganzen Server, an die ganze Welt Dinge senden oder an einzelne Leute, Gruppen von Leuten etc. Und das ist nachher noch ein spannender Punkt, weil da ging viel Überlegungsarbeit rein, wie wollen wir denn ActivityPub überhaupt nutzen, um diesen Anwendungsfall im kleinen Inserrat überhaupt abzubilden? Was ich denn rausgefunden habe, als ich mich tatsächlich damit beschäftigt habe, ist, dass es überhaupt nicht nur ActivityPub ist. Je nachdem, mit welchem Server man eben förderieren möchte, ist da auch Webfinger und Ostatus, also es ist ein älteres Protokoll, mit dem dezentrale soziale Medien realisiert werden sollten, immer noch quasi Altlasten in Gebrauch haben und dass man sich mit denen da auch auseinandersetzen muss. Das hier ist jetzt, wir haben vorhin gesehen, in dem letzten Post, da ist nur ein einziger Protokollheader, nämlich der von ActivityPub, also dieses ActivityStreams hier oben. In der Realität werdet ihr vermutlich so was finden. Da ist dann das erste Protokoll ActivityStreams, aber es leit noch Semantik aus von Ostatus, von Atom, von Mastodon selber, also es ist spezifisch und einige andere Dinge. Also das ist so der Punkt, wo es dann beim Entwickeln ungemütlich wird und man auf sehr viele Fälle reagieren muss und die einzelnen Testen. Ja, auf jeden Fall. Und wenn du der Meinung bist, dass der Standard noch nicht genügt, kannst du einen weiteren machen, da gibt es noch mehr. Also kennt man ja. Genau, deswegen habe ich mir erst mal zu Hause so ein Fediverse Labor überhaupt gebaut. Dazu habe ich mir einen NixOS Container Host genommen, habe da zwei Mastodon Instanzen aufgesetzt, habe mir einen eigenen DNS daneben gestellt, weil Mastodon arbeitet sehr gerne mit Hostnames und möchte die auch zur Verfügung haben und dann ist da eben noch mein Entwicklerrechner drin. Also das hier sind diese drei Container, das sind NixOS Container und die laufen da. Jetzt ist es so, Mastodon ist im Grunde relativ sicher gebaut, das heißt Mastodon möchte immer mit HTTPS laufen. Mastodon hat überhaupt keine Lust darauf, mit unverschlüsseltem HTTPS zu laufen. Deswegen ist man gezwungen, sich da so Zertifikate über Let's Encrypt zu holen oder sie selber zu machen und was man dann eben tun muss, damit die miteinander reden, ist man muss in seiner PKI dafür sorgen, dass jeder Server eben die Zertifikate der jeweils anderen im Labornetz beteiligten Server hat. Das muss man manuell tun. Und was man dann eben als nächstes feststellt ist, man möchte Traffic mitlesen. Man möchte ja quasi in seinem Labornetz schauen, wenn ich jetzt von FloMarkt aus ein neues Inserat starte, wie kommt das auf den Mastodon Server und gibt es da eventuell noch Probleme und wenn ja, welche und welches Bit ist falsch. Also muss man jetzt gucken, wie man da überhaupt rankommt. Und was mir aufgefallen ist bei Mastodon ist, die Problematik ist, dass ich hier eben, da ich auf der Leitung HTTPS habe, nicht reintappen kann, weil es ist ja verschlüsselter Traffic und deswegen müssen wir jetzt irgendwie eine Möglichkeit bekommen, den Traffic auch mitlesen zu können, damit wir daran entwickeln können. Und was dann eben bei Mastodon der Fall ist, ist, dass Mastodon ein Engine X als Reverse-Proxy vorgeschaltet hat und der direkt über einen Unix-Socket mit Mastodon kommuniziert und in den kann man sich reintappen. Und bei FloMarkt ist es ganz angenehm, weil da habe ich ja meine Entwicklerkonsole hinten dran hängen, da sehe ich ja auch die Logs. Und so ist dieses Labor entstanden. Ein letztes Ding, wenn man einen Service bauen möchte, ist, man muss Mastodon davon überzeugen, dass es in einem LAN laufen möchte. Mastodon möchte nämlich auch nicht in einem LAN laufen. Und dafür gibt es diesen Patch. Es gibt eine Funktion in Mastodon, die heißt Check Private Address. Wenn man da einfach nur ein Return einfügt, so dass diese Funktion nichts mehr effektiv tut, dann kann man das auch relativ simpel umgehen. Also das war die Patch, nachdem man mal gefunden hat, woran es liegt. Man hat natürlich erstmal geschaut, okay, da kommt doch keiner drauf, so etwas einzubauen. Wieso überhaupt? Deswegen war das ein bisschen nicht ganz offensichtlich. So, das ist das letzte Stück Code, das mir sehr weiter geholfen hat beim Debuggen. Das ist nämlich, wie tappe ich in einen Unix-Socket rein. Das habe ich nämlich davor auch noch nie gemacht. Man kann mit dem Tool SoCut quasi, man kann erst diesen Websocket umbenennen in etwas anderes. Und dann kann man mit SoCut quasi eine Wipe-Hype reinhängen, die quasi der Webanwendung ihren ursprünglichen erwarteten Websocket suggeriert. Und zwischendrin kann man den Trafficer mitlesen. Also man gibt diesen Command ein und dann fangen an quasi die In- und Outputs daraus zu purzeln. Witzigerweise ohne Paketsortierung. Wenn zwei Pakete gleichzeitig kommen, dann schreiben die ineinander und es sieht aus, als hätte Cthulhu irgendwie eine Message überbracht. So, dann wollen wir mal live reingehen und uns das System mal anschauen. Ich habe Dinge mitgebracht. Das ist ein Flohmarkt. Ihr seht den Test-Flohmarkt, der hier für das Chaos Communications Camp 2023 läuft. Die URL kriegt ihr später noch. Das ist die Ansicht als eingelogter User. Und was ich hier tun kann, ist zum Beispiel ein neues Inserat anlegen. Dazu wähle ich mir ein Foto, wie zum Beispiel ich habe da so ein Net Neutrality-Poster. Dann kann ich dazu eine Image-Description abgeben, also für Menschen mit Einschränkungen beim Sehen. Da sind die immer sehr happy darüber. "A Poster with Net Neutrality". Dann gebe ich dem Ganzen einen Titel. Dann gebe ich dem einen Preis. Verschenken zum Beispiel ein schönes Andenken an das Camp 23. Und dann drücke ich "Create" und dann habe ich da den Artikel. Und was ich jetzt zum Beispiel tun kann, ist mit einem anderen User auf die Startseite gehen. Und entweder ich sehe das Poster hier irgendwo in meinem... Habt ihr es schon? Da ist es ja schon. Also ich habe quasi die Möglichkeit, dass es so die Startseite, auf der Startseite sind Artikel aufgelistet, die entweder neu, sehr alt, populär oder random sind quasi. Also es ist so der Versuch, ohne irgendwie groß KI benutzen zu müssen, halt so ein Feed, der interessant für das erste Mal drauf schauen ist zu machen. Ich habe aber auch die Möglichkeit oben mit einer Volltextsuche so nach diesem Poster zu suchen, da habe ich das eben als Ergebnis angezeigt. Und dann sehe ich hier so, okay, der Person kann ich jetzt mal Nachrichten schreiben und sagen "Hallo, fällt mir". Was? Was? Letzte Preis ist natürlich sehr relevant und in diesem Moment sehe ich hier... Wer war das? Einer von euch war das. Aus dem Internet hat schon jemand hier geantwortet. Jedenfalls, die Nachricht ist jetzt eben hier und hier kann ich eben antworten und sagen "Warum soll ich es dir geben?" Und dann geht die Nachricht eben wieder zurück. So kennen wir das ja auch von etablierten Plattformen, die das ganze Konzept schon seit ein paar Jahrzehnten für uns machen. Aber da ist jetzt noch nichts mit Fediverse. Wie funktioniert das denn? Ich mache jetzt einfach mal einen neuen Tab auf, gehe nochmal auf diese Instanz als nicht angemeldeter User und suche mir jetzt auch mal dieses Poster raus. Als nicht angemeldeter User sehe ich dann auf der Artikelseite hier so ein Text "To answer this offer, please log in or create an account or use another Fediverse account". Auf Deutsch, um auf dieses Insolat zu antworten, bitte loggt euch ein oder macht einen Account oder benutzt einen anderen Fediverse Account. Und genau das machen wir jetzt mal. Also wir stellen uns einfach mal vor, ich habe jetzt keinen Flohmarkt-Account, sondern ich habe nur meinen "grinthold@chaos.social" Masterton-Account. Dann ich habe das eingegeben, ich tippe Enter und auf einmal sehe ich hier diesen Post von meinem "grintholdsexuser@ccccamplet-feduem.grinthold.de" und kann hier darauf antworten von Masterton aus. Und was hier ganz wichtig ist, ich hatte vorhin eingangs erwähnt, dass man sich Gedanken machen musste, wer ist denn Adressat von so einem Posting. Hier muss man jetzt als nicht Flohmarkt-User, sondern ein anderer Fediverse-Software-User dafür sorgen, dass man eine private Nachricht schreibt. Wenn man jetzt eine Public Message schreibt, wir können das mal testen. "Hallo, Interesse". Ich sehe nicht, was ich tippe, ich tippe wahrscheinlich gerade voll den Unsinn. Dann bekomme ich hier gleich eine automatische Nachricht, die mir erzählt, "You have made a public post to an item on Flohmarkt. This post is going to be ignored by the system. Please use private posting." Also man möchte sich ja privat mit der Person unterhalten, zu der man sich über was auch immer unterhält, was man haben möchte. Genau, deswegen ist der eigentliche Weg, den man geht. "Respond". "Mentioned only". "Mentioned only" und dann kann man hier schreiben, "Hallo, das hätte ich gerne". Und dann können wir zurück auf Flohmarkt gucken und sehen, oh, da ist eine dritte Nachricht angekommen. Und das ist die Nachricht aus dem Fediverse, die gerade zu mir kam. Das geht auch mit anderen Services. Ich kann ja mal zum Beispiel Firefish benutzen. Firefish ist so ein Kelki-Klon, der in letzter Zeit recht populär wird. Firefish.tech. Und schwupps, lande ich auf Firefish. Ach, ärgerlich. Okay. Aber bisher hat es ganz gut funktioniert. Das war eh komisch. Das ist in der Vorführung. Genau, aber das ist eben das Prinzip, mit dem man quasi die Messages austauschen kann über Systemgrenzen hinweg. Und das Schöne daran ist auch, niemand, der von der Käuferseite aus benötigt überhaupt einen Flohmarkt-Account. Also ihr könnt alle die bestehenden Accounts benutzen. Also gute Erfahrung bisher mal gemacht mit, ja, klingt lustig, ist aber so, Firefish hat bis gestern noch funktioniert, Mastodon, Kelki, MISKI, Pliroma. Pliroma, da ist so, dass die Voraussetzungen sind einfach. Es muss Activity Pub sprechen und es muss dir ermöglichen, private Nachrichten zu schreiben. Deswegen funktioniert zum Beispiel leider PixelFed nicht. Ja. Denn gibt es bis zu diesem Punkt Fragen erst mal? Also ich hatte beim letzten Mal schon an dieser Stelle sehr viele Fragen. Da ist eine erste Frage. Möchtest du vielleicht, can we have a mic please? Wie kann man mit Blocking umgehen? Also kann man, also wenn ich jetzt was reinstellen will und ich heute irgendwelche Schrottnachrichten oder so kriege, kann ich die blocken? Kannst du als User hier hergehen auf Settings? Da hast du ein Blocking-Tab, da gehst du drauf, dann sagst du zum Beispiel der User, grönfall@chaos.social ist so ein Depp, den möchte ich nicht. Da gibst du den da ein, dann blockst du User und dann kriegst du keine Nachrichten mehr von mir. Könnte man das nicht direkt rein tun quasi? Keine Ahnung, es ist ja oft so, dass dann Frauen bei solchen Flohmarkt-Sachen oder bei solchen Teilen irgendwelche anzüglichen Nachrichten kriegt, damit man einfach den Glei ausschalten kann, jetzt sofort. Du meinst da einfach im Nachrichtendialog? Genau. Das könnte man tun ja. Da spricht nichts dagegen. Gibt es noch eine Frage? Da hinten sehe ich noch eine Frage. Was passiert, wenn dein Server weg ist? Und die zweite Frage ist, was passiert, wenn die Polizei deinen Server mitnimmt? Das kommt darauf an, wie gut du ihn verschlüsselt hast. Nö, also die Software selbst macht halt HTTPS, auf Netzwerkebene ist natürlich alles verschlüsselt, aber wie du deine Festplatten sicherst, wenn du Dinge tun möchtest, die relevant sind, dann bist du nach wie vor dein Server verantwortlich. Also wir versuchen so safe wie möglich zu programmieren, aber mehr können wir auch nicht tun. Also kann ich das auch selbst hosten? Da kommen wir nachher noch dazu. Also ich kann insofern sagen, es ist freie Software und natürlich, ihr könnt theoretisch alle eine solche Plattform hosten, aber eben unter den rechtlichen Voraussetzungen, auf die ich eben nachher noch zu sprechen kommen möchte. AGPL, ja sorry. Auf den etablierten Plattformen gibt es ja oft diese Funktionalität "Pausieren". Wie setzt ihr das hier um? Pausieren haben wir nicht. Und ist auch nicht geplant, oder? Ist nicht geplant. Weil es ja manchmal so ganz praktisch ist, wenn es was ist, was viele haben wollen, man 10.000 Anfragen gleichzeitig kriegt. Was wir haben, ist Assign. Also du kannst, wenn du eine Message bekommen hast, die dir gefällt und wo du denkst, okay dieser Person möchte ich das geben, dann kannst du hier sagen bla bla bla bla bla und dann auf Assign drücken, dann bekommen alle Leute, die sich auf dieses Ding auch beworben haben oder halt mit dir darüber geredet haben, eine Message, hey der Gegenstand ist jetzt leider zugeteilt worden und die Person, der du die Nachricht geschrieben hast, die bekommt quasi deine special Nachricht mit, hey du hast das jetzt. Dafür haben wir leider noch nichts. Aber das ist ein sechsmonatiger Prototyp. Es ist leider noch kein voll ausgereiftes Produkt. Wenn einmal Assigned ist, dann ist glaube ich, dann ist vorbei erstmal. Du kannst neue reinstellen. Im Moment hält dich technisch nichts davon ab, aber es ist natürlich nicht sinnvoll, das zu tun. Frage? Die Überfahrung ist oft sehr meh. Macht sie Design Patterns, die irgendwie die Erfahrung, die Interaktion zwischen den Verkäufer*innen und den Käufer*innen verbessern könnte? Also dann komme ich mal kurz auf die Grundidee zurück. Die Idee war es ursprünglich, dass es keine beliebe großen Server gibt, sondern dass jeder Flohmarktserver auf eine bestimmte Area gegeofenst ist. Also du betreibst einen Flohmarktserver für deine Stadt, sodass halt noch deine Nachbarstädte mit eingeschlossen sind, damit da die Leute auch noch zu dir fahren können. Und eine der Strategien ist es, wir erhoffen uns, dass dadurch die Chance, dass du noch mal mit einer Person zu tun hast, auf derselben Plattform höher ist und dass du dadurch dir vielleicht überlegst, okay, ziehe ich den jetzt über den Tisch oder nicht, weil ich könnte nochmal brauchen. Also diese große Anonymität ein bisschen aufzubrechen und eher ein Community-Feeling zu etablieren auf Flohmarktinstanzen. Das idealerweise noch durch eine engagierte Moderation, die Community Building gerne macht und ja daran Freude hat. Des Weiteren haben wir halt diese ganzen Dark Patterns mit Pay to Win nicht drin, logischerweise. Also das finde ich auch sehr schrecklich, wenn du möchtest, dass deine Anzeige wieder ganz oben gelistet ist, dann schmeißt du nochmal irgendwie drei Euro in die Kasse, finde ich jetzt auch nicht so geil. Und solche Sachen haben wir natürlich komplett draußen gelassen. Bin ich live? Ja, ich habe hier noch eine Frage aus dem Internet. Hallo? Okay, hi-ho. Okay, ich habe hier noch eine Frage aus dem Internet, schon darüber nachgedacht, dass eine Flohmarktinstanz einer anderen folgen kann, um einen gemeinsamen Suchindex aufzubauen? Natürlich. Instance-Following haben wir bereits implementiert, da müsste ich jetzt mal kurz auf den Admin-Account wechseln. Ich kriege es gerade auf die Schnelle nicht hin, ich habe das Admin-Passwort an einer anderen Stelle. Ja, es ist bereits implementiert, also wenn du als Admin-User auf den Site Settings-Dialog gehst, dann kannst du einem ähnlich aussehen, das Menü mit diesem Blocking gerade, nur du schreibst halt eine Instanz rein, dann bekommt die andere Instanz einen Follow Request, dann kann der andere Admin oder die Admin entweder auf Accept oder Reject klicken und ab diesem Zeitpunkt sind beide Instanzen miteinander verwoben, solange sie sich in ihren Geo-Ranges schneiden. Also ja, ist da und funktioniert auch. Ja, ich hätte noch eine Frage, Puncto, wie sich solche Inserate jetzt ins restliche Fediverse so reinfiltrieren, dass man die auch teilen und boosten, was weiß ich kann. Genau, du kannst. Und noch eine kleine Follower-Frage, wie man es, ob du schon mal nachgedacht hast, wie man es bei solchen viralen Anzeigen irgendwie machen könnte, dass manche Informationen da live angezeigt werden, wie zum Beispiel ist das schon vergeben oder solche Sachen. Tatsächlich ein interessanter Punkt. Also du kannst Flowmarkt Inserate boosten. Flowmarkt Inserate sind technisch nichts anderes wie Nodes, also dieselben Objekte, die Mastodon beispielsweise auch handelt. Das ist ein bisschen Text mit ein paar Bildern dran und im Grunde ist Flowmarkt nur ein anderer View auf diese Daten. Und du kannst die boosten, dann können andere Leute wissen, okay, das ist ein Inserat, da muss ich mit Private Message drauf antworten, wenn ich da auch drauf antworten möchte. Aber wir haben auch gesehen von, du kriegst diese automatische Message, wenn du es nicht von selber. Kann ich Verkäufern auch schon folgen? Wie bitte? Kann ich Verkäufern auch schon folgen? Du kannst doch Verkäufern folgen. Wenn die regelmäßig irgendwie Zeug posten, wo du dir denkst, geil, wenn da jemand irgendwie seine Keramik-Sammlung oder so vercheckt und immer mal wieder interessante Stücke auftauchen, natürlich. Du kannst diesen Playern folgen, du kannst hier die User URL nehmen. Zack. Dann haben wir hier den Grindhold 6 und gehen mal auf Chaos.Social und den hier oben rein. Und dann kann ich dem folgen und ab dem Zeitpunkt kriege ich dann halt seine Posts mit in die Timeline gespült. Ja, dann würde ich mal nochmal ein Segment Präsentation. Noch eine. Kann man auch quasi gewisse, ich sag jetzt mal Hashtags machen, also keine Ahnung, damit ich dann filtern kann. Ja, ich suche jetzt keine Ahnung Computer oder das macht so über Kategorie heute und wenn dann so eine Computer drin steht, so ein Laptop oder keine Ahnung was. Gibt es noch nicht. Dafür hat die Zeit nicht gereicht. Es gibt tatsächlich aber schon einen Plan, wie das am geilsten wäre. Also einmal, wie du schon gesagt hast, die Hashtags aus dem Text rausziehen und archivieren in der Datenbank und den Moderatoren eine Möglichkeit geben, einen Baum aus diesen Hashtags zu bauen, sodass man quasi etwas wie Kategorien erhält. Wer hat die Möglichkeit, Synonyme von Hashtags quasi anzulegen, damit falls sich irgendwie auf dem einen Server das Wort Klamotten durchsetzt für Bekleidung und auf dem anderen das Wort Bekleidung, dass man quasi die Bedeutung einfach erfasst und nicht die Syntax. Also dafür gibt es Pläne, ist aber nicht umgesetzt. Ich würde jetzt gerne auch nochmal ein kleines Segment einsetzen. Wir können gerne danach Q&A weitermachen. Was ich an der Stelle noch zeigen wollte, das ist eine ganz nette Demo. Ich hatte gerade erwähnt, dass man auf Flohmarkt nur eine andere Sicht auf die Daten hat. Das ist natürlich nicht die ganze Wahrheit, denn stellen wir uns jetzt mal vor, wir machen jetzt so ein, wir haben jetzt hier irgendwie so einen Flohmarkt in Sarat. Machen wir kurz eins zum testen. Nehmen einfach das B zum Beispiel. Keiner haben. So. Und wir nehmen uns jetzt dieses in Sarat und antworten davon aus drauf. Und dann schreiben wir Verkäufer ja, hi, ich bin bereit dir 8 Euro für das Zahlen. Dann posten wir das. Und dann wird dort zurückgeschrieben. Ja, cool. Kannst du da und da hinkommen. Und dann denke ich mir hier so, ja, ich möchte eigentlich keine 80 Euro zahlen, weil das ist teuer. Das taugt mir eigentlich gar nicht. Und dann denke ich mir so, hey, machst du das, oder kann ich doch posteditieren. Also ich gehe jetzt einfach mal her und sage Dude, wo ist das Editfeld? Sind. Edit. Jawoll. In der Suche, weil die Suche da offen ist. So, da sind wir. Genau, Edit. Dann schreibe ich hier einfach mal rein, ja, ich würde dir gerne die 20 Euro dafür zahlen. Weichere das und schreibe der Person dann zurück. Auf die neuere Message schreibe ich dann, ja klar, kann ich dahin kommen. Und ich bring dir die 20 Euro mit. So als wäre das die ganze Zeit besprochen gewesen. Und in Mastodon sieht es jetzt so aus. Da sieht es jetzt wirklich aus, so da ist das Angebot, da ist hier das Angebot vom Verkäufer, da ist das Angebot vom Käufer, dann hier quasi das Acknowledgement und dann da bestätige ich das nochmal. Also das ist die Perspektive von Mastodon aus. Auf Flohmarkt hingegen, wenn wir uns diese Unterhaltung, wenn ich F5 drücke, nochmal anschauen, da sehen wir noch Folgendes. Da ist diese Nachricht durchgestrichen und ich habe die neue quasi, die ersetzte, unten dazu bekommen mit neuem Timestamp. Also es wird sofort offenbar, wenn jemand versucht euch irgendwie über den Tisch zu ziehen. Sowas ist quasi mit der reinen Mastodon Lösung auch nicht möglich. Anti-Gaslighting, exakt. So, dann soll ich noch über ein paar weitere Punkte sprechen. Sprechen, nicht Folie machen. Das habt ihr alle schon gesehen. Weiter geht's. Es wurde vorhin gefragt, jeder kann sich ein, ob sich jeder eine Instanz aufsetzen kann. Die Antwort ist Ja und Nein. Ja, denn es ist freie Software, es ist alles unter AGPL lizenziert, ihr dürft euch alles frei runterladen, verändern, daraus lernen, alle for freedoms nutzen. Allerdings hat uns das Plattformsteuertransparenzgesetz so einen kleinen Dämpfer reingehauen, denn es gibt da dieses Gesetz, was sämtliche Anbieter von, ich sag mal Handelsplattformen im Allgemeinen dazu verpflichtet, dem Bundeszentralamt für Steuern sehr, sehr viele, sehr, sehr intime Daten zu melden. Ich möchte ferne anmerken für dieses Segment "I am not a lawyer", ich habe keine fachliche Kompetenz in Sachen Recht. Ich lese einfach Text und interpretiere ihn und genau das würde ich jetzt mal tun. Die Plattformdefinition ist unsere große Hoffnung, nämlich dass Flohmag einfach nicht in diese Plattformdefinition fällt. Eine Plattform ist jedes auf digitalen Technologien beruhende System, das das Nutzen ermöglicht über das Internet mittels einer Software miteinander in Kontakt zu treten und Rechtsgeschäfte abzuschließen, die gerichtet sind auf. Das Schöne hier in diesem Segment ist diese Bedingung, weil das heißt quasi, ich muss mir das mal anschauen und gucken, ob ich das irgendwie entkräften kann und wenn ich das entkräften kann, dann sieht es wieder ganz gut aus. Das Rechtsgeschäft ist ja definiert als die Übereinstimmung zweier Willenserklärungen und die kommt unserer bescheidenen Meinung nach dann zustande, wenn ich zu dir nach Hause gehe, sage ok, schönen Computer hast du da, den will ich haben, hier sind gute Scheine dafür und dann tauschen wir aus. Das ist der Moment, in dem eigentlich die Willenserklärung zustande kommt und deswegen bilden wir auch den Preis als Freitext ab. Also alles, was mit dem eigentlichen Handel zu tun hat, ist super freigestaltet und wir wollen alle Menschen dazu ermutigen, diese Handel wieder quasi von Face to Face zu machen. Unter diesen Bedingungen können wir uns vorstellen, dass ein rechtssicherer Betrieb möglich ist. Es gab da auch schon eine Interessensbekundung seitens Digitalcourage e.V., eine eigene Instanz betreiben zu wollen. Danke dafür, weil die Jungs, die ja unmedels, die haben die entsprechenden Ressourcen, um so ein Konzept auch aufzusetzen und ich glaube, sie lassen euch abschreiben, wenn sie da sind. Danke an Digitalcourage an der Stelle. Genau und bei Danke sind wir angekommen. Ich möchte mich erstmal beim Prototype Fund bedanken und beim Bundesministerium für Bildung und Forschung, die mein halbes Jahr Arbeit an dieser Software erst mal finanziert haben. Danke schön dafür. Ich möchte mich ferner bei Digitalcourage nochmal bedanken, ohne dir dieser Talk gar nicht hätte stattfinden können, weil ich mich ursprünglich bei Bits und Bäume beworben habe, da aber hätte ich gar nicht talken können und dann hat Padelouni gesagt, ja Moment mal, tritt doch bei uns auf. War sehr nice. Danke schön dafür. Und bei meinem Arbeitgeber, der mich einfach mal irgendwie für ein halbes Jahr solche verrückten Ideen umsetzen lässt und mich danach wieder nimmt. Danke schön dafür. Und damit möchte ich euch noch auf die URLs hinweisen. Die Codebase, die ihr gerade gesehen habt, ist unter codeberg.org/grinthold/vormarkt. Hackt mit. Die Camp Demo ist unter ccccamp.ladfathom.grinthold.de zu erreichen. Ich möchte euch explizit bitten, es steht auch auf der Startseite, bitte zählt von Sicherheitsforschung auf dieser Seite ab und es gibt für diesen Zweck vormarkt-zerforschen.ladfathom.grinthold.de. Da forscht, soviel ihr Bock habt, solange ihr die unterliegende Infrastruktur nicht angreift. Es läuft auf dem gleichen Server. Ich wäre euch sehr dankbar. Und nein, DDoS ist keine Sicherheitsforschung. Ihr erreicht mich bei weiteren Fragen unter der 3564 oder jetzt direkt nach dem Talk können wir gerne noch eine Runde quatschen oder ich bin Grinthold auf chaos.social in Mastodon. Dann vielen Dank für eure Aufmerksamkeit. Vielen Dank für die Zeit. Hat Spaß gemacht. Gut, wir hatten zwar jetzt schon ein relativ extensives Fragen und Antworten happening, aber gibt es denn weitere Fragen und Antworten, zum Beispiel aus dem Internet? Ja, wieviel die Entscheidung auf den Objekt Typ Notes und nicht etwa auf ein ... Moment, ich kann es nicht hören. Ja, ich habe noch eine Frage. Wieviel die Entscheidung auf Objekt Typ Note, Notes und nicht etwa auf ein andere, im Gegensatz einem mehr spezifischen Termin, Unterdaten, Hashtags, Kategorien, Ort, Abholung, Versand, im Hinblick auf Sortierbarkeit, Filterbarkeit und mögliche weitere Features wie zum Beispiel auf meiner Flohmarkt Instanz einer ganzen Kategorie zu folgen, gegebenenfalls mit Nachrichtigungssystem? Der Grund dafür ist, dass die Note von den meisten abgebildet werden kann und die Alternative zum Artikel Note, die Alternative zum Note ist ja der Artikel und der Artikel kann noch weniger als die Note und da ist eben das Problem, du kannst schon hergehen und einen eigenen Datentyp erfinden und total toll spezifizieren, bringt mir halt nichts, wenn Master dann nicht damit umgeht. Das haben wir relativ schnell aufgegeben. Weitere Fragen? Ja, eine Frage. Könnte man quasi auch so einen Finden Teil machen? Wir haben jetzt den "Ich biete an"-Teil, aber auch quasi so "Ich brauche X, Y, Z", dass man quasi... Ach so, du machst einfach ein Inserator, einschreibst dich, suche, haben wir einige Leute auf ccccamp.net/fessenden, schreibst halt einfach in den Titel, ich suche das und das, schreibst halt was du dir dafür ausgeben möchtest oder hergeben möchtest und die Beschreibung von dem ist... Ach ja, irgendjemand hat bei der Flugsicherheit seinen Laptop liegen lassen und sucht nach einem Ersatzlaptop, vielleicht hat er jemand von euch für den, ist auch das Inserat noch da. Thema Rechtssicherheit und Moderatoren, wie geht man da mit illegalen Postings nach hinten? Löschen. Okay, also als Moderator sehr aktiv werden. Das Moderationsmenü und löschen. Okay. Genau. Da hinten ist eine Frage. Genau, einmal nach da hinten, oder? Ja, ich habe eine Frage. Wie ist das Geofencing genau umgesetzt, weil wenn das irgendwie... Du als Administrator legst beim Erstellen der Instanz fest, auf welcher Geokoordinat und mit welchem Perimeter deine Instanz gelten soll. Eben solches machen die anderen Administ auch und dann gibt es quasi eine Intersection über die Strecke. Kann die Seite dann nicht abgerufen werden von anderen Bereichen oder anderen Domälen? Natürlich. Also es ist tatsächlich eher ein Gebrauchsmuster als irgendwas sicheres, sage ich jetzt mal. Es ist einfach so, wie das System gedacht ist. Es hält dich nichts davon ab, eine deutschlandweite Instanz zu machen. Wir können uns zum Beispiel auch vorstellen, dass es sehr interessant ist für themenspezifische Leute, dass man themenspezifische Instanzen macht. Also stell dir vor, keine Ahnung, der Club der seltenen Überraschungseiersammler, die da irgendwie ihre Überraschungseilfiguren austauschen wollen, die haben da irgendwie eine großartige Community-Expertise und wollen die dann auch bündeln und wollen dann berechtigter Weise auch das Zeug austauschen oder Motorradschrauber für irgendwelche seltenen Ersatzteile für Oldtimer. Beispiele fallen da genug ein. Von dem her, wir haben das nicht unterbunden, weil das auch ein valider Use-Case ist. Was wir halt insgesamt erreichen wollen, ist halt overall ein bisschen weniger CO2 beim Transport von Dingen und solange uns das gelingt, sind wir eigentlich froh. Boah. Weitere Fragen? Gut. Otto? Otto ist Internet nicht? Na dann, letzte Frage. Könnte man sich als Moderator auch in eine Diskussion einklinken, wenn irgendein Mensch überwältigt ist, dass er quasi so "Ich brauche hier Moderatoren-Unterstützung" sagt? Oder nun? Wir haben es hier mit Einzelmitteilungen zu tun, um mal ein altes Wort aus BTX zu nehmen. Wenn das nicht so ist, dann kann man das nicht so machen, dass man das nicht so macht, dass man das nicht so macht. Ich habe hier mit einem anderen Modell von einem der Moderatoren-Unterstützungen gesagt, dass man als Moderator dann sagen kann, dass man als Moderator auch Zugriff hat, dass man als Moderator auch ein Modell von einem anderen Modell von einem anderen Modell, das man nicht so macht, dass man als Moderator auch einen anderen Modell von einem anderen Modell, das man nicht so macht, dass man als Moderator auch ein Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell von einem anderen Modell Gute Überleitung zum nächsten Vortrag, der auf dieser Stage in ca. 15 Minuten stattfindet. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Dankeschön! Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. Vielen Dank Krindholm für die sehr erleuchtenden Informationen. SWR 2020 SWR 2020