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