Und dann denkt man sich vielleicht so, die Festplatte
ist aber schon ganz schön alt. Vielleicht mach ich mal ein
Backup. Ja ich mach ein Backup,
definitiv mach ich ein Backup. Ja, du machst sowas von keinem
Backup Coding Buddies dein Podcast rund um
Softwareentwicklung und aktueller Tech News.
Herzlich Willkommen, Halli Hallo und herzlich
Willkommen zur neuen Folge am Donnerstag vom Coding Buddies
Podcast. Und wir beide sind natürlich
wieder da, und zwar ich, der Fabi und natürlich auch der
Tino, den ich hier herzlich begrüße.
Tino, Wie geht's, wie steht's? Moin Moin, was geht ab Fabi ja
alles gut, alles gut, alles beim alten alles unverändert, alles
gut, immer noch Bock Podcast zu machen, deswegen sehr schön mal
loslegen. Hast du denn die schönen
Wettertage jetzt letztens genossen?
Ja, tatsächlich, es waren ja jetzt schon mal die ersten
wirklich sommerlichen Tage. Und ja, war super, was macht man
so? Man geht im Biergarten oder
grillt. Super super Sachen.
Das sind auf jeden Fall Evergreens, hab ich auch
gemacht, also ja vor allem grillen Biergarten hatte.
Ich grillen ist geil. Ja, dann lass uns doch mal
Reinstarten in die neue Folge, und zwar in das Thema.
Und das ist ja jetzt mal. Sagen wir mal n bisschen was
anderes, weil aktuell wird ja viel über LLMS geredet, viel
über KI und so weiter diesen ganzen AI Bereich und das ist
natürlich auch mega interessant und wir haben jetzt in der
letzten Folge auch über Vibe Coding gesprochen, hat natürlich
auch sehr viel damit zu tun mit diesem Thema und wir haben uns
aber jetzt auch mal gefragt, was gibt es denn vielleicht noch
abseits von diesen ganzen LLM, Thema KI und so weiter gibt es
denn da vielleicht noch irgendwas?
Was eventuell trotzdem irgendwie so ne Art.
Ja ich sag mal Trend oder ja oder upcoming oder dass man da
wirklich mal n bisschen so das Ganze auch mal betrachten
beleuchten kann. Ja, da haben wir halt n bisschen
recherchiert und sind auf n Thema gestoßen, was wirklich
interessant ist. Und deswegen haben wir es auch
für das heutige, für die heutige Folge mal mitgebracht und zwar
das Thema Local First Software und da würde ich halt dann jetzt
gern mit dir drüber sprechen. Mal über also mal erklären
quasi, welcher Ansatz dahinter steckt, welche vor und Nachteile
das mit sich bringt. Und deswegen würde ich sagen,
lass uns da doch mal rein starten.
Was ist Local First Software oder was steckt hinter diesem
Begriff Trend? Die Grundidee dabei ist im
Prinzip zu sagen, OK, was ist denn momentan so State of the
Art? Wir haben halt viele Software as
a Servicelösungen, viele Cloud Geschichten und die Grundidee
hinter Local First ist, wie der Name schon sagt, wieder n
bisschen mehr so in die Oldschoolige Richtung zu gehen
sag ich mal so in eine Welt bevor es Clouds gab.
Und zwar zu sagen, Hey meine Steinzeit, genau zurück in die
Steinzeit. Meine Software speichert Daten
jetzt wieder primär auf meinem eigenen Gerät und nicht in der
Cloud, das ist im Prinzip der Grund Gedanke dahinter, das
heißt man braucht halt keine Server mehr, wenn überhaupt nur
noch zur Unterstützung und nicht mehr so als Source of Truth, da
würde ich später aber noch mal genauer drauf eingehen, warum
man den vielleicht. An manchen Stellen doch einen
Server braucht, weil gibt da halt noch so ein 2
Anwendungsfälle, aber im Prinzip kann man das so sehen, wenn ich
das jetzt mit einer normalen Cloud Anwendung vergleiche, ne
da liegen die Daten zentral auf diesem Server, zum Beispiel was
nehmen viele Leute so Google Docs oder so ist ne feine Sache
ne du kannst halt von allen Geräten über dein Google Konto
drauf zugreifen, kannst die Dateien ändern.
Andere sehen das, wenn du es geändert hast.
Aber im Endeffekt liegen halt diese Daten halt wirklich da
zentral ab und du hast ja Zugriff drauf, aber du bist
nicht Herr der Daten im ursprünglichen Sinne und das
versucht halt genau dieser Ansatz Local First wieder zu
kippen und quasi wirklich wieder in die Oldschool Richtung zu
gehen und zu sagen, Nein wir speichern unsere Daten lokal ja.
Das Problem dabei ist natürlich, was ich jetzt wahrscheinlich die
ersten schon fragen werden. Ja gut, dann hab ich jetzt meine
Daten lokal. Aber was ist denn wie du ja Tilo
wie du eben meintest mit dem Syncen so ja und das ist halt
genau die Schwierigkeit und das anspruchsvolle dabei, worüber
wir heute mal reden wollen, wie kann ich es schaffen meine Daten
lokal zu haben und zu verwalten und vielleicht trotzdem mich mit
anderen Usern zu syncen oder auch ganz klassisch über Geräte
hinaus ne zum Beispiel von meinem Handy auf dem Laptop.
Ja. Genau.
Ja, ich find das ist auch n ziemlich spannendes Thema.
Ich find als ich das das erste Mal so gelesen hatte, also es
ist ja jetzt nicht komplett neu dieser Ansatz, aber er kommt
jetzt noch mal n bisschen zurück, hab ich das Gefühl oder
wird sich zeigen sagen wir mal so wie weit das sozusagen dann
am Ende geht aber ich fand das erstmal interessant so ich
dachte so Local first klingt irgendwie weiß nicht erstmal
konnte ich mir im allerersten Moment gar nichts darunter
vorstellen und ich find es aber auf jeden Fall also als ich das
dann so n bisschen genauer noch mal betrachtet hab, also dem
unter dem Begriff. Weil man kann sich das ja
natürlich super Easy vorstellen. Du hast das ja gut beschrieben,
aber mir ist da auch relativ schnell so ein Thema Datenschutz
aufgekommen und da ist mir auch zum Beispiel eingefallen, dass
irgendwie ich glaube, das ist jetzt auch relativ frisch, dass
gerade bei zum Beispiel bei Samsung gab es jetzt auch wieder
ein riesen Datenleak oder Datenleck oder wie man das nennt
und. Also da ist das ist mir
irgendwie so aufgekommen, weil wenn du jetzt wirklich so ne
zentrale Lösung hast, wo alle Daten komplett zentral auf dem
Server sind, dann hast du natürlich direkt auch einen
Angriffsvektor, den du fahren kannst beziehungsweise einen
eine eine Angriffsstelle. Besser gesagt um halt deine
ganzen Daten zu bekommen. Ne, wenn du jetzt so ne
dezentrale Lösung hast, wie du es gerade sagst, wo Daten auf
einzelnen Geräten drauf sind, eventuell gesynct, aber
vielleicht auch eventuell nicht gesynct oder noch nicht gesynct.
Dann kriegst du ja vielleicht auch noch nicht alles.
Aber das sind zuerst mal so Gedanken, die mir als erstes so
durch den Kopf gingen. Natürlich kann man sich
hinstellen und sagen, ja gut, große Server von großen Firmen
sind vielleicht besser gesichert gesichert als Endgeräte von
einzelnen Usern, aber das ist glaube ich noch ein anderes
Thema, das ist mir nur als erstes in den in den Sinn
gekommen, dass es eventuell angenommen man macht es richtig,
sozusagen, also richtig in Anführungsstrichen ne, dann
könnte man vielleicht sowas verhindern, aber.
Aber vielleicht auch nicht. Du siehst schon, das sind immer
so sehr, sehr vage Sachen, die Fans, genau.
Ja, also ich glaube, dass diese Bewegung halt auch noch mal
genau deswegen aufkommt zu sagen, dass es heutzutage umso
wichtiger ist, sich Gedanken über den Datenschutz zu machen,
auch über Ownership. Wem gehören eigentlich die
Daten, also wer verwaltet sie, wer ist verantwortlich für die
Daten, das sind ja halt wirklich immer oder zunehmend.
Einfach ein wichtiges Thema. Es wird ja immer wichtiger und
deswegen finde ich, fand ich das auch cool, wieder von diesem
Trend sage ich mal 2025 zu lesen, dass wieder Entwickler
versuchen, Softwarelösungen nach diesem Prinzip zu basteln und
das ist halt irgendwie cool und weil es halt genau diese, sage
ich mal, diese Themen adressiert und versucht, da bessere
Lösungen für zu finden, und da hatten wir ja einen ganz coolen
Artikel gefunden. Wo im Prinzip so verschiedene
Ideale der Local First Software erläutert wurden, also im
Prinzip so Vorstellungen oder Prinzipien, die man damit
erreichen möchte. Aber nicht nur, dass die jetzt
quasi einfach gegeben sind, sondern das ist das ideal
dahinter, ne, also da möchte man damit hinkommen und das hat
natürlich auch große Herausforderungen und da werden
wir auch noch später drauf eingehen, aber ich möchte mal
kurz auf diese 7 Punkte eingehen, nur kurz und knapp,
aber dann kriegt man glaube ich noch mal n ganz cooles Bild,
weil ein. Punkt dabei.
Den fand ich ganz witzig, der hieß keine Spinner mehr, das ist
halt so so n typisches UI Ding was glaub ich, jeder kennt immer
dieser drehende Kreis, ja warten wird verarbeitet.
Und was dahinter steckt, ist einfach, dass eine Local First
Software schnell und responsive sein soll.
Das heißt dadurch, dass du halt keinen Server mehr dahinter
hast, von dem Daten geladen werden sollen, erwartet man
schneller und ja responsive zu sein und nicht mehr diese
Netzwerk Wartezeiten dabei zu haben und das fand ich halt n
ganz cooler Gedanke dahinter zu sagen, wenn ich die Daten lokal
hab kann ich sie ja auch viel schneller aufrufen ja oder
abrufen. Das war so ein Punkt, den ich da
jetzt ziemlich witzig fand. Also was witzig im Sinne von, ja
klar, macht absolut Sinn so, ja, und da gehst du ja direkt
theoretisch, kannst ja direkt weitergehen und sagen, wenn du
keine, also diesen Netzwerkzugriff in diesem Sinne
nicht mehr hast oder nicht mehr haben musst, dann bist du ja
auch irgendwo offline fähig, ne, also du hast die Daten und
kannst ohne Netzwerk, also ohne Internet wie auch immer kannst
du ja auch zum Beispiel, nennen wir es mal diese App oder diese
Anwendung verwenden, ne zumindest bis zu einem gewissen
Grad. Genau das war nämlich auch
gleich schon ein weiterer Punkt, der ja eigentlich nur logische
Schlussfolgerung ist. Genauso wie du sie gerade
gezogen hast, das Netzwerk quasi optional wird.
Das heißt, du bist nicht mehr auf eine Verbindung angewiesen?
Ja, und dann wurde halt sowas gesagt, wieso ein klassischer
Fall, Du sitzt im Zug, fährst durch den Tunnel, aber Hey, du
kannst noch weiter mit deiner App arbeiten, weil die
Verbindung nicht weg ist, ne oder falls das wlan im café mal
wieder nicht funktioniert. Solche Geschichten, das fand ich
halt ganz cool. Auf aufgearbeitet, sag ich mal
in diesem Artikel und auch ne Wünschenswerte, wie soll ich
sagen Eigenschaft einer Software zu sagen ich kann dich also
diese Software dich im Sinne von die Software komplett offline
verwenden, das ist ja ne nette Sache, halt ne.
Wieso n Telefonanruf, wo man einfach mit sich selber kurz
reden kann. Genau so n Dosentelefon hältst
dir links und rechts ans Ohr. Und dann?
Genau und natürlich auch die nächste Schlussfolgerung daraus.
Auch der dritte Punkt ist Langlebigkeit und das finde ich,
macht halt auch absolut Sinn zu sagen, ey ich bin nicht mehr
abhängig von irgendeinem Anbieter der eventuell insolvent
geht, seinen Service einstellt, den komplett umbaut, gar nicht
mehr so ist wie ich ihn eigentlich möchte.
Das heißt, da stand dann so, ja funktioniert auch in 10 Jahren
noch und das find ich halt auch n ganz cooler Punkt zu sagen,
OK, das ist jetzt meine offline Anwendung und auf diesem Gerät
wo sie läuft wird sie so auch funktionieren, auch zukünftig
und nicht dass ich sie irgendwann starte und sag ey
hier Service nicht erreichbar so nach dem Motto Ja.
Eben das sind halt wirklich coole Punkte dahinter, die
erstrebenswert sind in meinen, in meinen Augen und halt auch
absolut Sinn machen. Ich mein Datenschutz hatten wir
ja schon gesagt, Datenschutz und Sicherheit, dass du halt nicht
mehr diesen zentralen Datentopf hast eben, sondern halt weniger
Angriffsfläche in der Hinsicht. Es ist halt wie gesagt, es ist,
finde ich müsste man. Das ist so n zweischneidiges
Schwert an der Stelle ne, weil wie ich schon meinte so du hast
entweder diese großen Server, da musst du auch erst mal irgendwie
rein. Gut wenn du es schaffst, dann
hast du natürlich vielleicht n Jackpot, wenn du aber vielleicht
sag ich jetzt mal nur ein einzelnes Device an Zapfs, wo
wahrscheinlich aber nicht diese ganzen Daten drauf liegen von
allen ne, also vielleicht sozusagen nur von dir und deinen
Kontakten, eventuell, je nachdem was das für eine Anwendung ist,
am Ende, aber dann hast du vielleicht nicht direkt Zugriff
auf alle Daten, was halt diesen Datenschutz vielleicht wieder
hätte. Bei der Sicherheit bin ich mir
nicht ganz sicher, Sicherheit sicher.
Weil es natürlich die Frage ist, wie gut ist ein Endgerät
geschützt und man weiß ja auch, dass oftmals, sage ich mal, ein
sehr, sehr großer Angriffs angriffsvektor, den man
irgendwie hat, ist natürlich der Mensch und dem irgendwie was zu
entlocken oder irgendwie über Social Engineering oder was auch
immer da ranzukommen ist, vielleicht noch ein bisschen
einfacher als so bei großen Firmen, Servern und so weiter ne
aber ist trotzdem erstmal so ein valider Punkt an dieser Stelle
darüber nachzudenken. Genau, weil das ist nämlich auch
n Punkt da gewesen und der geht da halt genau rein zu sagen, OK,
ich hab halt n Shift, Wer hat jetzt die Kontrolle über die
Daten? Ne also in dem Moment hab ich
als Nutzer die Kontrolle darüber ne über die Daten ich muss mich
über Backups Gedanken machen über die Formate, über den
Zugriff, über alles halt ne weil.
Es ist halt kein Server oder keine große Firma mehr dahinter,
die sagt Hey, kein Problem, dass dein Handy weg ist.
Die Daten sind ja bei mir, die kriegst du wieder so nach dem
Motto, Ja und das ist halt wirklich n großer Shift, dem der
eine, also das muss einem dann halt auch klar sein, wenn man
diesen Ansatz verfolgt, ja, dass du halt nicht mehr.
Diese, wie soll ich sagen, diese Bequemlichkeit hast dahinter zu
sagen, ja, ich muss mir um meine Daten keine keine Gedanken
machen, ne, und genauso wünscht man sich ja heutzutage diesen
Multi Device Support, was ich vorhin schon mal kurz
angesprochen hatte ist deine App oder deine sag ich mal
Applikation im Sinne der Funktionalität soll ja nicht auf
einem Device gefangen sein ne? Also wenn ich jetzt quasi
unterwegs bin kurz mir mal ne Notiz ein.
Tippe auf dem Handy ne, dann soll die ja nicht quasi da drin
gefangen sein. Das wäre jetzt nicht so
wünschenswert, wenn ich sie doch später meinetwegen auf dem
Laptop noch mehr ausformulieren möchte, dann hätte ich ja gerne
diese Notiz auch auf dem Laptop und das sind da halt dann auch
so Challenges hinter dem Ansatz, wie schaffe ich das?
Auch Stichworte Kollaboration wie schaffe ich es, mit anderen
zusammenzuarbeiten, zum Beispiel auch in Echtzeit oder Halt
asynchron, ja, also du machst heute morgen ne Änderung und ich
mach heute Abend einen, aber wir wollen das irgendwie sinken und
haben halt nicht mehr dann ne Cloud dazwischen hängen die das
für uns unternimmt und das sind halt so die großen Punkte dabei.
Ja. Ja, definitiv.
Ich finde es halt spannend, weil im Endeffekt kommst du ja dann,
also gerade wenn du jetzt so sagst, man muss sich um Backups
kümmern und so, da kann man jetzt vielleicht auch wieder
denken, ja gut, aber da bin ich ja eigentlich wieder
zurückversetzt, weil wenn man sich so früher überlegt, du hast
vielleicht irgendwie, es gab noch keine Cloud, du hattest das
alles auf dem USB Stick, den USB Stick oder deine Festplatte,
deine externe geht kaputt riesen Panik, ich meine es hat
wahrscheinlich jeder schon mal erlebt, dass man sich dachte so.
Ah, ich hab jetzt noch ne Festplatte, da hab ich noch was
weiß ich 10000000 Videos drauf natürlich alle legal.
Ist ja klar und und dann denkt man sich vielleicht so ja die
Festplatte ist aber schon ganz schön alt vielleicht mach ich
mal n Backup ja ich mach n Backup definitiv mach ich n.
Backup ja du machst sowas von keinem Backup.
Und die Platte ist irgendwann kaputt und man denkt sich, ah,
verdammt so, und da hast du dann natürlich ne, also ich sag mal
so es gab ne Testphase wo es um Backups ging und ich glaube.
Also ich lehne mich aus dem Fenster und sage mehr als 100%
haben. Wir sind auf diese Falle
reingefallen. Nee, aber das ist natürlich,
also da kann man sich vielleicht auch dann wieder denken, so nee,
aber ist es vielleicht nicht auch irgendwie wieder n
Rückschritt, ne und? Genau.
Und um das quasi oder Gegenargumente zu bringen, muss
man sich halt mal jetzt mal die Vorteile wirklich vor Augen
führen. Ne, es ist definitiv erstmal.
Auf dem Papier ein Rückschritt zu sagen, Hey, wir nutzen das,
was momentan alle nutzen, was ja wirklich super verbreitet ist
und auch jeden Fall seine Daseinsberechtigung hat.
Das nehmen wir jetzt nicht mehr, aber warum machen wir das nicht?
Also es muss ja einen Grund geben, es muss ja Vorteile geben
und da hatten wir jetzt zum Beispiel die bessere
Performance, du hast halt keine Roundtrips mehr, Server
Kommunikation beziehungsweise Cloud, sondern du bist halt auf
deinem Gerät und dadurch erreichst du halt eine bessere
Performance und der riesen Vorteil, den hattest du ja
genannt ist einfach. Mal.
Stichwort Privatsphäre. Ja, also dieses typische
Privatsphäre bei Design, also dadurch so wie die Software
entwickelt wurde oder funktioniert habe ich halt eine
höhere Privatsphäre, weil diese Daten sind bei mir lokal und
hoffentlich verschlüsselt auch ne, das heißt da kommt keiner
ran, es gibt keine Angriffsfläche auf dem Server wo
man an diese Daten rankommt. Ja man kann die jetzt
vielleicht. Jetzt sage ich mal das Handy
klauen. Wenn das jetzt eine mobile App
ist, dann klaut man dir das Handy und wenn die jetzt nicht
zum Beispiel irgendwie verschlüsselt ist, also keine
Ahnung 2 Faktor irgendwas, dann kommst du da halt dran.
So nicht cool, aber trotzdem hast du und das ist auch wieder
Stichwort nutzerkontrolle du bist natürlich auch
verantwortlich für deine Daten, das heißt lass dir das Handy
nicht klauen, aber du hast halt erstmal diese Privatsphäre per
Design schon auf deiner Seite. Ja, das ist auch n großer
Vorteil aus der Sicht. Ne, das ist ja auch so,
Stichwort Web Three, ich weiß nicht ob Liebe zura Liebe zura
dir das n Begriff ist, will ich jetzt auch nicht näher drauf
eingehen, ist wahrscheinlich eher ne eigene Folge mal wert
über diese Technologie zu sprechen, aber da geht es ja
irgendwo so n bisschen in die Richtung hin ne wenn man jetzt
diesen dezentralen Ansatz fährt. Und was ich aber zum Beispiel
auch vielleicht, was man dazu noch sagen kann ist, ich finde
es immer was, also was ich schwierig finde an der Stelle
ist zu sagen, Du hast zum Beispiel so eine Möglichkeit, ne
also local First Software zu entwerfen, zu entwickeln, ne du
kannst das so designen wie du meintest ne und ich ich finde es
ist oft so, dass so ein Gedankengang dahin geht und dass
man sagt so. Local First Software OK, das und
das ist das Prinzip, macht aber da und da gar keinen Sinn.
Es ist irgendwie in in dem und dem Anwendungsfall ist doch
völlig quatsch und das ist ja auch wieder absolut der Punkt ne
also es es ist ja auch nicht immer für jede Anwendung
hundertprozentig immer sinnvoll ne also wenn du jetzt wirklich
mal sagst, OK du hast Banken, banktransaktionen und solche
solche Sachen ne dann ist es schon irgendwo sinnvoll zu
sagen, OK du hast irgendwo zentrale Daten über.
Überprüfung an der zentralen Stelle und so weiter und sofort.
Es gibt aber vielleicht auch andere Anwendungsmöglichkeiten
wo du sagst, das ist vielleicht eine eine coole Sache, zum
Beispiel wenn du jetzt sagst, Ey, du hast jetzt Fotos, die du
irgendwie teilen möchtest mit anderen Leuten, du hast
vielleicht irgendwie ein cooles Event gehabt und sagst, ey, ich
möchte jetzt meine Fotos teilen, ist natürlich die Frage, lade
ich jetzt alle Fotos nie Cloud hoch, ne, ist es jetzt gut, dass
theoretisch alle das sehen können?
Manchmal hast du ja zum Beispiel einen Link, ne wo du sagen
kannst echt. Klickt den Link rum.
Alle können auf diesen Link gehen und können Fotos
hochladen, runterladen, wie auch immer so, wenn du jetzt aus
Versehen den Link irgendwo anders hinschmeißt, können ja
andere Leute es auch sehen so und da ist natürlich dann die
Frage oder ne beim bei irgendeinem Angriff datenleak
was auch immer kann es natürlich eben auch sein, dass diese
Fotos, je nachdem was du da für Fotos hast sag ich jetzt mal.
Irgendwo. Ne irgendwo hingelangen, was
halt vielleicht nicht sein soll und das ist natürlich, da wäre
eventuell so ein Local First Ansatz natürlich nicht schlecht
zu sagen, OK ich kann es teilen und.
Mit entsprechenden Leuten, aber auch wirklich nur dann auf
diesen Geräten verteilt. Beispielsweise ne und das sind
also was ich meine ist, du hast halt Anwendungsfälle wo es
sinnvoll ist und Anwendungsfälle wo es auch nicht sinnvoll ist.
Ne also ich weiß nicht was für mich zum Beispiel auch n Punkt
war ne wenn wenn man das ganze jetzt mal so gedanklich mal
dieses oder dieses Gedankenexperiment mal weiter
treibt und sagt OK du hast jetzt deine Daten lokal, das wird bei
Youtube nicht funktionieren. Ja.
Dafür hast du halt einfach nicht diesen Speicherplatz.
Logischerweise ne und deswegen muss man natürlich gucken, OK,
wo lohnt sich das oder wo ist es sinnvoll und wo nicht, das ist
immer n wichtiger Punkt. Ja also ich denke das hast du ja
auch schon richtig angesprochen, da ist einfach sobald so n
sensibler Kontext gegeben ist, zum Beispiel in Bezug auf Daten
ne oder in der Anwendung. Dann ist dieser Ansatz gar nicht
so verkehrt, den zu gehen oder zumindestens zu überprüfen, ob
es möglich ist, das Ganze so zu entwickeln.
Das heißt ja nicht, dass es immer gegeben ist, aber
vielleicht diesen Weg zu gehen, zu sagen, ich überlege mir mal,
ob ich das Local First Prinzip da etablieren kann oder meine
mein Software Design danach ausrichten kann und nicht immer
gleich sagen, Na ja gut dann. Da habe ich einen Server mit
einer Datenbank, da speichere ich das und dann ja, gibt es
einen Client und der kann dann drauf zugreifen und so weißt du,
sondern einfach mal zu sagen, ja, vielleicht muss ich diesen
Weg nicht gehen, vielleicht ist in meinem Kontext wirklich, weil
ich zum Beispiel sensible Daten habe, der Weg gar nicht schlecht
zu sagen, nein, ich werde es nicht irgendwo im World Wide Web
speichern und dann halt auch wieder dieses Stichwort
Ownership, meine Daten gehören dann auch wirklich mir.
Ja, also zum Beispiel auch dem Anwender der Software.
Man muss es ja auch aus Anwendersicht sehen und das das
finde ich halt schon ziemlich spannend, aber natürlich gibt es
halt auch große Herausforderung dabei, keine Frage, und da
möchte ich mal mit dir drüber sprechen und zwar dieses ganze
Multi device, was ich vorhin meinte oder halt auch
Kollaboration zu sagen. Ey, ich möchte jetzt mit
mehreren Geräten oder mit mehreren Nutzern an gewissen
Dateien zum Beispiel arbeiten. Nehmen wir noch mal das Google
Docs Beispiel, ich habe jetzt ne Textdatei wo Notizen drin
gemacht werden und da möchten aber mehrere Notizen drin machen
und ich möchte auch die Notizen der anderen da drin sind.
Ich möchte sehen ob es ne neue Version dieser Datei gibt.
Und dieses Synchronisieren ist halt eine riesen Challenge, wenn
ich sage diese Daten liegen aber bei dem Gerät lokal vorbei, dem
Nutzer sozusagen, das heißt, es wird sehr aufwendig und
schwierig diese Synchronisation durchzuführen, Stichwort
Konflikte. Wie kann die Software erkennen,
ob mich vielleicht jemand anderes an diesen Dateien, also
an deinen geht ja schon mal nicht weil sie bei dir lokal
sind, aber ich sag mal. Im Kontext der Gesamtsoftware
nehmen wir mal eine geteilte Notiz.
Wie kann ich erkennen, dass Konflikte entstanden sind, weil
jemand vielleicht diese Notiz weiterentwickelt hat auf seinem
lokalen Gerät, wie erkenne ich das ja, wenn doch die Daten gar
nicht irgendwo zusammen vorliegen und nicht nur das,
selbst wenn kein anderer an den Dateien arbeitet, sondern ich
einfach das von Gerät zu Gerät übertragen will zum Beispiel.
Voll noch mal noch mal die Notiz, ich find da kann kann man
das gut verstehen. Ich hab jetzt auf dem Handy noch
mal n paar Notizen gemacht, ich hatte einfach so n so ne so n
schnellen Gedanken und dachte mir Ach hier guck mal von
gestern die Aufzeichnung noch mal kurz aufgemacht geändert und
wenn ich nachher am Laptop bin dann seh ich das das
funktioniert halt nicht mehr so einfach weil halt diese diese
große Wolke klaut da jetzt fehlt ne die das für dich
synchronisiert. Also ist ja jetzt wirklich die
große Problemstellung, wie synchronisier ich Daten zwischen
Usern oder schrägstrich Geräten, wenn diese nicht auf einem
Server abbiegen und das ist halt ne ne super spannende Frage und
dieses ganze Softwarekonzept ändert sich darum, da darum also
auch Stichwort User Experience, was erwartet eigentlich mein
Kunde, wer der dieses? Das Produkt sag ich mal, die
Software an sich verwendet. Wie soll es für ihn
funktionieren, da gibt es ja auch ne gewisse
Erwartungshaltung, wenn man halt so Cloud verwöhnt ist und das
find ich halt ist extrem spannend dabei und.
Das Interessante ist ja auch, weil du meintest so OK es ist,
dass man vielleicht auch wirklich darüber nachdenkt, ne,
dieses dieses typische es gibt mehrere Möglichkeiten, ich denk
mal drüber nach, ob es sich vielleicht lohnen würde oder
welcher Ansatz sich lohnen würde ne und ich glaube und das kenn
ich auch von mir selber, dass man halt öfter mal gerne mal
sagt, Ja warte mal. Also.
Wenn wir jetzt irgendwie n zentralen Server haben mit einer
zentralen Datenbasis, was auch immer das ist doch einfach, dann
können wir da und haben wir da unseren Server, wir haben unsere
Clients, dann können wir ne kennt man, hat man schon
gemacht, kriegt man auch relativ schnell auf die Beine gestellt
so diesen Ansatz ne also damit es ist vertraut ne und wie wie
ich gerade meinte so ich kenn das ja von mir selbst auch ne
also wenn du jetzt zum Beispiel. Sagen wir mal du sagst ey ich
möcht ne. Also jetzt aus meiner Sicht
gesprochen, ich möcht n irgendwie ne Anwendung
entwickeln so und ich möcht oder n Server oder n Client, dann
denk ich natürlich auch erstmal an das was ich kenne, weil ich
mir denke na ja damit geht es doch schnell, ich kenn mich
damit aus, ich bin da schon n bisschen bewandert und so weiter
und ich glaube, dass es auch oftmals ne Rolle spielt zu
sagen, also was ich auch schon oft erlebt habe, dass ich Leute
und ich auch selber, wie ich meinte, sich hinstellen und
sagen lass uns doch mal irgendwie das und das machen.
Ja, ich glaube, wir könnten das so machen.
Ja, das funktioniert alles. Klar, das andere würde auch
gehen, ja, aber ey ganz ehrlich, wenn wir das so machen, da
müssten wir echt noch ein bisschen over draufpacken, bis
wir das hinkriegen, weil ja müssen wir erst mal gucken, wie
das geht, weißt du, weil du ja auch wie du meintest.
Es ist natürlich eine Herausforderung, definitiv
irgendwie das Ganze zu synchronisieren ohne einen
zentralen Server gar nicht so einfach, das ist echt super
spannend, also ob du dann irgendwie wirklich so p to p
Verbindung nutzt. Aber so einfach kann es ja auch
nicht sein, ne? Aber auch diese ganze
Synchronisation der Daten dann es ist nicht einfach ne, also
der eine ändert was der andere ändert, was synchron, wie wird
das dann gemacht? Ne also du kennst das ja
vielleicht bei bei git ne wenn du so einen 3 Wege Merch machst
oder was auch immer, so werden Daten ja die gleichzeitig so.
Sag ich mal. Beschrieben werden muss ja
irgend, kann ja irgendwas passieren.
Im optimalen Fall ist es OK, du sagst OK das geht rein, das geht
auch rein, alles cool, aber wenn du wirklich das gleiche
beschreibst sag ich jetzt mal, dann kann es ja zu einem
Konflikt kommen, wie wird der gelöst, so dass natürlich die
Daten auch noch irgendwie sinnvoll sind oder so ne.
Also nicht dass ich jetzt zum Beispiel irgendwie schreibe hi
Tino und du schreibst Hi fabi und dann steht da hi Tino Fabi,
weißt du. Ja, also das ist halt wirklich
der Punkt, dass man. Wahrscheinlich jetzt anfängt
eine Anwendung sich zu überlegen.
Kommt denn zu dem Punkt, ja, ich brauche jetzt, ich brauche einen
Server mit Daten, ich muss jetzt zentral Daten bereitstellen und
sobald man sich überlegt ja will ich vielleicht das doch anders
machen, dann ist das Halt so ein Bequemlichkeitsfaktor nenne ich
es mal, dass du sagst ja aber so Software es ist Service wenn ich
die jetzt einfach nutze und dann kann ich das da einfach machen
und das ist bequem, das ist vertraut ich weiß das
funktioniert, ich habe das schon mal gemacht dann.
Dann neigt man halt auch dazu zu sagen, Ach komm, wir lassen das
schon so, das ist schon alles gut so, gerade wenn ich mir halt
so eine Sync Strategien überlegen muss.
Du hast ja jetzt zum Beispiel Peer to Peer genannt, was ja auf
jeden Fall valide ist. Eine Peer to Peer Verbindung
aufzubauen, aber da hast du natürlich jetzt schon mal das
Thema, beide müssen aktiv sein, also du kannst ja diese
Verbindung aufbauen, wenn so gesehen beide die Applikation
laufen haben, dann kannst du den Austausch machen, kein
Hexenwerk, das geht ja. Das heißt, du hast jetzt so ne
Prämisse zu sagen, beide Applikationen müssen online
sein, sonst krieg ich diese Verbindung nicht hin.
So dann kannst du sagen, na ja OK gut, weil ich vorhin meinte
vielleicht braucht man n optionalen Server, du kannst ja
so ne Art Relay Server machen, der sagt OK, ich sorge dafür,
dass das Async also nicht beide müssen online sein funktioniert,
ich Speicher aber nicht, die Daten auf diesem Server sondern
Changes zum Beispiel, da gibt es ja auch weil du auch Stichwort
Git gesagt hast, da gibt es ja auch verschiedene.
Dateistrukturen oder Datenstrukturen nenne ich es mal
nicht. Datei wie ich das speichern
kann, Änderung an Daten an definierten Daten und dass ich
die denn zum Beispiel verschlüsselt über den Server
übertrage und im Prinzip nur noch gesynct wird.
Was gibt es für Veränderungen, aber die eigentlichen Daten
niemals auf dem Server gespeichert liegen, das wäre
dann quasi ein optionaler Schritt, den man da in Erwägung
ziehen könnte und das finde ich halt wirklich spannend und
irgendwie auch eine Challenge. Zu sagen, ey, ich mach jetzt
beispielsweise mal ne kleine Notiz App ja und versuch genau
das mal zu zu implementieren, zu sagen, Nein die ist local first
und meine Daten so wie sie wirklich sind liegen nur auf
meinem lokalen Gerät vor und dann versucht man mal so n Sync.
Zwischen 2 Geräten irgendwie zu implementieren finde ich finde
ich es halt eine wirklich spannende Sache.
Ja, auf jeden Fall. Also ich finde es auch
interessant, weil du ja auch meintest, dieses, dieser,
dieser, dieser abweichende Zustand wird gespeichert, ne
also und da sind wir dann tatsächlich muss man auch ja
sagen an dem Punkt wo man theoretisch ne in diesem Modell
jetzt oder dann auch rein praktisch einen Server hat, wo
das dann. Ich nenne es jetzt mal zentral
gespeichert wird. Also du hast jetzt trotzdem
irgendwo so eine Art eventuell oder kannst du aufbauen, wenn du
es wieder. Also es geht ja immer vieles,
aber du kannst ja an der Stelle sagen, du hast einen zentralen
Server und diese Changes werden über diesen zentralen Server
gespeichert oder nicht gespeichert, also doch
gespeichert, aber dass du dieses Syncen sozusagen über diesen
Server machst. Demzufolge hast du zwar mehr
oder weniger die Datenhoheit im Endgerät, aber die.
Dieser, diese diese Synchronisation der Daten findet
halt trotzdem auf dem Server statt.
Ne, also das ist ja zum Beispiel eine Möglichkeit, da hatte ich
ja also was ich gelesen hatte, was ich interessant fand war,
dass so dann zum Beispiel deine Datenbasis ist, dann zum
Beispiel eine sogenannte. Coach DB Ich weiß nicht, ob ich
es richtig ausspreche. Das ist so eine javascript
Datenbank beispielsweise, die ist auf dem Endgerät, da liegen
deine Daten und dann hast du noch eine Couch.
Ich hoffe, dass ich es auch richtig ausspreche Couch DB die
dann am Ende sozusagen diese Changes verwaltet und dann hast
du sozusagen auf jedem Client hast du eben diese diese Coach
DB und auf dem Server hast du dann diese Couch DB so und damit
hast du dann trotzdem am Ende wie gesagt dennoch eine Art.
Zentralisierung, aber nicht mehr der gesamten Datenmenge fand ich
auf jeden Fall auch super spannend, ja.
Genau das ist ja im Prinzip, was so hinter so einem Relay Server
dann am Ende steht. Das ist ja auch temporär ne,
also du musst ja die Changes nicht dauerhafter speichern, was
ja wieder ein Unterschied zu der Cloud wäre ne, sondern es geht
ja nur darum erstmal zu syncen. Also du hättest theoretisch die
Möglichkeit die ja auch. Quasi nur temporär zu halten.
Jetzt ist natürlich die Frage, wieviel Clients hast du, sind
alle gesynct und so weiter ne und das sind halt die
Überlegungen die man denn bei so einer Local First Software am
Anfang und auch währenddessen logischerweise machen muss und
auch Entscheidungen die man treffen muss um sich n Konzept
zu erarbeiten. Wie soll denn diese App oder die
allgemein die Software verwendet werden es?
Es ist halt, es ist ne Philosophie und perspektivfrage
und das find ich halt auch ganz spannend, weil es geht ja nicht
darum zu sagen, EY das ist total Anti Cloud.
Ja also ihr seid jetzt hier so ne Anti Cloud Bewegung, wenn ihr
danach entwickelt und was soll denn das, sondern es geht ja
eher darum zu sagen, nee lass uns doch mal eher pro Kontrolle.
Und Eigentum der Daten sein. Lass uns mal Gedanken darüber
machen, warum sollen andere über meine Daten verwalten, warum
kann ich das nicht selbst machen, warum ist es nicht
vielleicht sinnvoll, wirklich ein Gefühl von owner Chip zu
haben? Ne und das finde ich halt ganz
spannend. Also da war zum Beispiel auch in
dem Artikel so ein Zitat so nach dem Motto Es ist doch wie, also
würde ich sagen ich will meine Musik besitzen, ja statt sie zu
streamen. Weil da ganz spannend, hatte ich
jetzt auch im privaten Fall, na ja, aber jetzt mal angenommen,
du hast ich mein wie fast jeder, du nutzt sowas wie Spotify,
dieser gibt ja 1000 services ne so und jetzt entscheidet aber
jemand also sag ich mal der Herr über die Datenbasis ist und sagt
ja aber Band XY nimmt jetzt dein Lieblingsalbum raus, dann hast
du kannst du es nicht mehr hören.
Das ist dein Album. Weißt du, du liebst es und du
willst es unbedingt hören, aber es ist einfach nicht mehr da, so
der Unterschied ist, wenn du die Musik besitzt.
Du hast beispielsweise die Platte Schallplatte, CD, was
auch immer gekauft oder halt vielleicht auch wie du meintest
einen Download, ja hast einen schönen Download Code bekommen,
konntest du runterladen, so dann hast du sie, du besitzt sie, es
ist lokal bei dir, jetzt bist du natürlich dafür verantwortlich,
dass beispielsweise die CD nicht kaputt geht, dass die MP Dreis
nicht verloren gehen. Wie auch immer.
Das ist aber jetzt deine sind deine Daten und du musst sie
verwalten, hast aber den Vorteil, dass du dafür sorgen
kannst, dass sie in 20 Jahren auch noch da sind.
Na, ich habe meine ganzen Maxi CD s von damals weggeschmissen.
Leider. Ja, siehst du.
Und das wirst du bereuen. Du wirst es noch richtig hart
bereuen. Ich sag's dir, ey.
I'm Blue hab ich gelebt, aber das ist leider weg, obwohl ich
weiß nicht, guck noch mal nach, vielleicht hab ich das auch noch
mal. Nach wenn du es findest, machst
du n Foto auf unseren Social medias.
Bitte ganz genau, ganz genau. Nee, aber ich weiß ganz genau,
was du meinst und ich ich find das ist also mir ist es
tatsächlich schon mal passiert, dass ich bei einem ne so einem
Streaming Anbieter für Musik hab ich also jetzt nicht n ganzes
Album, aber ich hatte irgendeinen Song geliked den ich
halt gut find und das. Dann wollt ich den irgendwann
wieder hören und das war aber so n keine Ahnung, Special Song was
weiß ich, das will ich nicht lügen, aber der war auf einmal
weg so also der war ausgegraut also ich ich konnt also ich
konnt ihn sehen so nach dem Motto Er existiert aber du
kannst ihn nicht abspielen und ich dachte.
Das kann ja auch so genau so ne Lizenzfrage sein.
Ja genau, dass er in deinem Land nicht mehr zur Verfügung.
Steht genau und da dachte ich mir so, oh, das ist ja also, das
ist ja schon echt nervig, ne und ich find es ja auch gut zu
sagen, also man. Man muss immer gucken, ne, weil
du ja jetzt meintest so ey hier ne blöde Cloud, so ist es ja
nicht, ist ja keine krasse, irgendwie krasse Bewegung.
Man kann sich auch überlegen, ob man zum Beispiel n gewissen Teil
zum Beispiel zentralisiert und aber einen gewissen Teil der
Daten, vielleicht aber auch dann in diesem Local First Prinzip
sozusagen austauscht, ne an ja über die Endgeräte oder Punkte
so. Also es heißt ja nicht immer nur
ey, du musst immer nur entweder alles so machen oder alles so,
weil wie ich eingangs auch schon meinte.
Es ist so einfach, ein Prinzip zu hören und mir geht das
manchmal selber, dass ich dann direkt so ich fang an zu denken
und sag mir ja gut, aber wenn du das ist jetzt n neues Prinzip
und jetzt machen macht man nur noch das so ne so.
Also manchmal ist man also ich kenn das von mir manchmal weil
ich dann völlig übertreibe in meinem Kopf und mir denke so du
kannst doch nicht alles dafür nehmen so.
Und das ist es halt nicht. Ne.
Also du kannst entweder sagen okay es gibt wie gesagt
Anwendungen wo es sinnvoll ist, Anwendungen wo es nicht sinnvoll
ist oder vielleicht auch einen hybriden Ansatz um zu sagen Ey
du kannst jetzt zum Beispiel ein Userprofil anlegen um zum
Beispiel auch andere User in deinem Service zu finden, aber
Daten die du austauscht, was auch immer oder die werden
definitiv nicht irgendwie in der Cloud gespeichert, sondern
irgendwie auf dem Endgerät synchronisiert.
Ne also angenommen ich möchte jetzt beispielsweise einen diese
Notiz App die du meintest ne du. Du kannst ja zum Beispiel bei
irgendeinem Social Media ne wie zum Beispiel bei Instagram.
Ne, folgt uns gerne kann man ja jemanden einfach suchen und
adden, weil es ne Datenbasis gibt auf der du suchen kannst.
Ne und wenn du aber diese Datenbasis nicht hast, kannst du
natürlich diese User auch logischerweise nicht suchen so
und kannst dann vielleicht auch nicht irgendwie mit denen
interagieren, das heißt du müsstest dann irgendwie, ich
nenn es jetzt mal manuell, so eine Verbindung herstellen, ne
also. Oder überhaupt dieses, wie will
ich sagen, also manuell muss man es auch machen unter Umständen
wenn du sagst ja ich möcht es aber gerne ne, dass man das
nicht automatisch. Du musst halt den Kontakt
kennen. Genau das mein ich so und das
ist halt wieder dies besitzen ne und da mein ich da könnte man ja
zum Beispiel auch so n hybriden Ansatz fahren und sagen, OK du
kannst jetzt vom Profil anlegen und sagen ey ich bin jetzt hier
user Fabi ABC und du kannst mich gerne bei der Notiz App.
Sozusagen hinzufügen und mir mit mir die Daten teilen.
So nach dem Motto, aber diese Daten werden niemals irgendwo
auf dem Server hinterlegt sein. So ne und ich finde das ist ein
ganz interessanter Gedanken Ansatz oder einen generellen
Ansatz über den man auch nachdenken kann.
Total valide. Ja absolut, was ich auch noch
spannend finde ist, dass natürlich so Clouds bei vielen
wie eine Art Blackbox betrachtet wird oder halt auch irgendwo
eine sind. Ja weil du bei.
Weil so Services ja auch einfach nicht weiß, was wirklich
dahinter steckt. Du hast halt nur einen Service,
den du verwenden kannst und das ist bequem und halt diese
Vergänglichkeit finde ich halt auch spannend, gerade jetzt noch
mal das Beispiel Musik was wir hatten was ist wenn der Dienst
verschwindet, wenn Features sich ändern, all seine Geschichten,
so dass man sagen kann und das Stand auch in dem Artikel und da
gehe ich auch irgendwo mit. Dass dieser Local First Ansatz
irgendwo einen Ansatz der digitalen Nachhaltigkeit ist,
und das finde ich halt irgendwie auch wirklich cool, das so zu
betrachten. Ja voll, man kann ja auch dann
theoretisch sich noch mal aus dem Fenster lehnen und sagen
Okay, Du schreibst ein Client, der das sozusagen den du dafür
verwendest, mit diesem Local First Software Prinzip und
machst den auch noch Open Source auch eine Möglichkeit, dann hast
du vielleicht sogar noch das ganze, was sozusagen breit
gemained wird. Muss nicht immer sein, aber ist
auch durchaus denkbar. Dann würde ich sagen, lass uns
doch mal jetzt abschließen, weil wir haben jetzt schon so ein
bisschen drüber gesprochen und auch hast du es ja eben schon
mal so ein bisschen angerissen. Also wie könnte man jetzt so
eine Local First App oder allgemein also eine Software
entwickeln? Wir haben ja gesagt, lokale
Speicherung gut, das ist keine Challenge, du kannst es in einer
lokalen Datenbank speichern, du kannst du auf deinem Dateisystem
speichern, in sämtlichen Formaten, das ist ja irgendwo
nicht der schwierige Teil, die haben ja raus kristallisiert,
dass das Syncen an sich das schwierige ist, wie du ja gerade
meint, ist in deinem Beispiel, ich kann jetzt halt nicht online
nach einem User suchen und mir sagt jemand, ja, der gibt, den
gibt es oder den gibt es nicht, du bist halt eher wieder so.
Sehr zum Beispiel Peer to Peer, wie wir es genannt hatten, ne
unterwegs zu sagen, OK, du kannst halt so Implementierungen
machen wie ey hier guck mal, ich zeig dir auf meinem Handy NQR
Code, da ist ne Nummer hinterlegt und damit kannst du
mich jetzt finden, ne. Und wir müssen halt jetzt beide
online sein. Das ist so wie noch mal so ne
kleine gameboy Analogie, die wir schon paar mal gebracht hatten.
Kennst du noch diese Link Kabel von früher, weißt du, ist also,
dass du halt wirklich sagst, beide müssen jetzt an sein, wir
müssen am Start sein und jetzt das Link Kabel ist im Prinzip
unsere Verbindung und jetzt können wir unsere Daten
austauschen oder halt gegeneinander kämpfen was man
halt so macht dann ne. Mit pokémon oder wo sind wir
gerade? Ja genau, pokémon tauschen oder
kämpfen, welches Kämpfen kannst du dir ausmachen?
Und das ist halt irgendwie n spannender Ansatz.
Dann hatten wir ja gesagt, so n Relay Server könnte ne Lösung
sein, damit du halt nicht gleichzeitig online sein musst.
Ne und da gibt es noch n dritten Ansatz und der Begriff war mir
gar nicht geläufig. Fand ich ganz witzig, deswegen
würd ich das so jetzt noch mal teilen und zwar den Ansatz
sneakernet und das find ich ganz witzig, weil ich wusste gar
nicht wo ich dachte selber sneakernet hä?
Weil das ist im Prinzip einfach wirklich wie du weitest, dieser
manuelle Austausch ne. Also ich mach jetzt zum Beispiel
n Export oder n Import von Daten die ich jemandem geben kann.
Ich schick sie als Mail weiter, ich nimm NUSB Stick und bring es
dir sozusagen zu Fuß vorbei, weil das find ich halt ganz
witzig ist natürlich auch ne valide Option zu sagen ey man
geht jetzt wirklich wieder auf das absolut lokale lokale
offline Ding zurück und sagt nee Datenaustausch wirklich nur
noch. Usb Stick in Briefumschlag und
verschickt. Weißt du, wie das am Ende
ausgeht? Das ist so so nach dem Motto, Du
erzählst deinem, deinem Opa oder deiner Oma oder was wem auch
immer, so weißt du so n bisschen ne sagst du so ey, wir machen
das so und so ne Pass auf, ich schick dir das und dann hast du
das auch so und dann kommt sowas wie und ich stell mir das so
vor, du gibst das rüber und dann so ja ja du ich hab das übrigens
mal in die Cloud geladen, die Fotos damit Tante XY das auch
noch mitkriegt, OK. So stell ich mir das vor.
Ja, genau so wird es noch. Oder Sie fragen sich einfach das
Ey Brief haben wir damals schon geschrieben, warum gehen wir
jetzt wieder komplett zurück? Ich hab da gerade erst mal
verstanden wie diese wie hier Google Docs funktioniert.
Immer auf Trump limoma. Genau, genau.
Und dann hast du auf jeden Fall noch so Stichwort Git hattest du
ja angebracht. Es gibt natürlich auch schon
Softwarelösungen, die sich halt mit dem Thema Syncen
beschäftigen und das Halt super umsetzen.
Ja, wenn ich jetzt beispielsweise lokale Änderungen
habe, wie kann ich Konflikte erkennen, wenn ich es jetzt doch
synchronisiere? Auf meinen lokalen stand, da
gibt es auch Tools mittlerweile. Ich meine, man muss es nur
googeln, wenn man so soft, Local First Software, Google gibt es
auch so github Repositories, wo einfach schon coole Projekte
verlinkt sind, die versuchen diesen Ansatz umzusetzen und da
sind wirklich geile Sachen bei gibt es zum Beispiel n Tool
automerch das ist ne javascript Library.
Die dir halt schon extrem unter die Arme greift.
Das ist im Prinzip, dass die Daten so Chasen ähnlich als
CRDTS synchronisiert werden, also Conflict Free replicated
Data Type, um mal kurz die Abkürzung auszuformulieren und
da geht es halt genau darum zu sagen, wir synchronisieren halt
changes ne, also wir merken uns was für Änderungen gab es und
diese Konflikte können halt durch Automerge sowohl offline
als auch online. Aufgelöst werden und das find
ich halt cool, dass es da halt auch Tools gibt, die dir schon
bei diesem Synchronisieren helfen, sodass man sagen kann,
ey OK, ich versuch wirklich mal so n local First Ansatz zu
implementieren. Also das mal so als Beispiel, es
wird da auf jeden Fall schon was heißt schon das gibt es ja schon
länger, meintest du ja auch, aber es wird halt auch noch in
die Richtung entwickelt und dieser Ansatz verfolgt und
natürlich auch ganz wichtig anzumerkende Sicherheitsaspekte.
Wenn ich jetzt sowas entwickel. End zur Endverschlüsselung ne
oder dass du halt dann auch keinen zentralen Zugriff mehr
ermöglichst. Das sind halt wichtige Punkte
dabei, wenn ich mir überlege, sowas sollte eigentlich immer n
wichtiger Punkt sein, Side Note, aber hier spielt das natürlich
auch ne Riesenrolle. Ja, dieses CRDT, was du
angesprochen hattest für die Synchronisierung hab ich mir
auch mal n bisschen angeguckt und ist auf jeden Fall auch echt
ganz interessant, weil oftmals ist es ja so, dass man so
bestimmte Mechanismen hat, die werden benutzt, aber oftmals
guckt man sich die gar nicht genauso an.
Also. Wenn das irgendwie mal
vielleicht interessiert, dann können wir da vielleicht auch
noch mal eine Podcast Folge drüber machen.
Oder man guckt sich das noch mal einfach selber an, ist auf jeden
Fall mal einen Blick wert, wollte ich noch mal so am.
Auf jeden Fall auf jeden Fall. Ja, was kann man dazu noch
sagen? Was bedeutet das denn am Ende?
Also ja, wir haben Tooling in den Kinderschuhen und
Frameworks, also es wird in der Richtung entwickelt entwickelt,
aber es gibt halt irgendwie noch so diese Möglichkeit von
Pionierarbeit, was ja auch immer spannend ist.
Ne, es ist jetzt kein Bereich der, so sag ich mal bei 99%
angekommen ist, sondern ey, das kann ja auch ne Motivation sein
zu sagen, ey ich find den Ansatz cool und es gibt noch nicht
viel, aber ich werde jetzt zeigen und dafür Lösungen
basteln, auch zum Beispiel Open Source was du meintest.
Und Lösungen für andere, die den Ansatz verfolgen, bereitstellen,
wie zum Beispiel dieses Automerch Tool.
Und das find ich halt irgendwie cool, da geht halt auf jeden
Fall was da ist n Riesenpotenzial drin, auch zum
Beispiel wenn ich jetzt diesen Ansatz verfolge ne geile Idee,
hab für n Startup ne oder wirklich allgemein nur um Ideen
zu implementieren. Da ist halt noch eine Menge
möglich. Das kann man so am Ende sagen.
Das bedeutet natürlich auch, wenn ich diesen Ansatz verfolge,
mehr Verantwortung am Ende, weil ich das Halt nicht rausgebe
bequem an irgendeinem Service habe, aber halt dann auch mehr
Freiheit und mehr Sicherheit über die Daten an sich, absolut.
Passt ja auch irgendwie zum Zeitgeist.
Was ich auch meinte mit der Privatsphäre, mit Daten, die
vielleicht irgendwie auch, man kriegt sie öfter auch mal mit,
die dann wieder geleakt werden. Irgendwie kommt was raus,
vielleicht sind das dann auch noch mal so.
Impulse, die noch mal dafür sorgen, dass man sagt, Ja, komm,
hier ist vielleicht wichtig, dass man da auch dann am Ende,
wie soll man sagen, auch diese dieser Ownership behält von den
Daten, das ist schon ganz, ganz wichtig, oder ganz, also passend
zum zurzeit halt, wie ich meinte, und ich weiß nicht,
Tino, vielleicht kann man ja sich auch mal überlegen, ob wir
so was auch mal einfach mal aus Spaß mal so einen kleinen
Prototypen. In der Community Maja was, weil
ich halt auch mega spannend finde.
Ja zum Beispiel einfach mal so wirklich die Prinzipien dahinter
verfolgen und versuchen das umzusetzen ist halt schon ne
spannende Sache und das geht ja auch irgendwo über Tag hinaus,
also Tag im Sinne von Softwareentwicklung ne es ist ja
auch irgendwo diese globale Frage, wie wollen wir eigentlich
digitale Werkzeuge benutzen und wie wollen wir sie besitzen,
besitzen wir sie überhaupt? Oder macht das ein anderer für
uns? Das ist ein genauer Grundsatz,
sie besitzen uns, und das ist halt, das ist im Prinzip so,
auch eine Grundsatzfrage dahinter, ne, ja, ich würde
sagen, wir haben ja das Thema doch ganz cool besprochen, ich
finde es wirklich spannend, ich finde es auch gut, dass du
sagst, ey, vielleicht macht man da mal was, liebe Zuhörer, liebe
Zuhörer, lass es uns gerne wissen, ob wir vielleicht auch
mal auf Twitch, da alle gemeinsam mal Prototypen bauen,
das ist auf jeden Fall eine spannende Sache, aber.
Aber erzähl uns doch auch gerne, was du von local first hältst.
Hast du vielleicht schon mal in die Richtung entwickelt?
Nutzt du Tools, diesen Ansatz implementiert haben oder bist du
jemand, der sagt, Nein, ohne Cloud geht gar nicht oder mit
Cloud geht gar nicht? Wie auch immer, lass es uns
wissen, die Mail findest du in den Shownotes, wie immer auch
die anderen Plattformen. Meld dich auf der der Plattform
deiner Wahl, sage ich mal. Wir freuen uns darauf, ansonsten
wenn dir die Folge gefallen hat. Lass auch gerne ne Bewertung da,
das hilft uns enorm weiter. Empfehle auch gerne den Podcast
weiter und ansonsten würde ich sagen, hören wir uns alle beim
nächsten Mal wieder. Habt ne gute Zeit bis dahin
deine Codename Buddies. Gemeinsam besser.