Ich mag Dateien.

Als ich als Kind gerade lernte, mit dem Computer umzugehen, organisierte ich alle meine Dateien nach Typ in Ordnern: meine [Kid Pix](https://en.wikipedia.org/wiki/Kid_Pix)-Zeichnungen in einem, meine [SimCity](https://en.wikipedia.org/wiki/SimCity_(1989_video_game)) Städte in einem anderen usw.

Ich erinnere mich noch gut daran, wie ich mir überlegt habe, wie ich meine Dateien am besten organisieren kann, damit alles, was mir wichtig ist, schön verstaut und leicht zu finden ist, wann immer ich es wollte. Das war vielleicht ein frühes Anzeichen dafür, dass ich ein Sauberkeitsfreak (oder besser ausgedrückt: ein Minimalist) bin, aber die Dateiorganisation hat mir geholfen, in einer ansonsten desorientierten und verstreuten Computerwelt einen inneren Frieden zu bewahren. Es bot mir eine Art Zufluchtsort in einem größeren Bereich des Abenteuers.

Ich erinnere mich, dass mir [als Dropbox im Jahr 2009 auf den Markt kam](https://techcrunch.com/2008/03/11/dropbox-the-online-storage-solution-weve-been-waiting-for/) sofort klar wurde, wie dieser digitale Zufluchtsort auf die Cloud ausgeweitet werden kann, indem man die streng „lokale“ Sammlung von Dateien in eine Sammlung umwandelt, die mit einem „entfernten“ Speicher im Internet synchronisiert wird und auf den man überall und mit jedem Gerät zugreifen kann zur Hand. Die Stärke von Dropbox bestand darin, dass ich einfach alle meine organisierten Dateien hineinziehen konnte und sie sich sofort von einer isolierten digitalen Heimatbasis in eine allgegenwärtige verwandelten, verbunden und dennoch unabhängig von der physischen Realität eines persönlichen Geräts.

Mittlerweile habe ich jedoch eine Karriere auf die Entwicklung von Websites und Anwendungen aufgebaut, die auf allen möglichen *Datenbanken* basieren, und nicht auf den sogenannten *Flatfiles*, die ich in meinem Privatleben liebgewonnen habe – solchen, die jeder normale Mensch ohne spezielle Software öffnen und lesen könnte. Datenbanken haben viele Vorteile, da sie die Abfrage und Verknüpfung von Daten erleichtern, aber grundsätzlich sind sie im Vergleich zu Dateien in Bezug auf Transparenz, Transport und Transformation unzureichend. Es ist einfach einfacher, Inhalte anzuzeigen, an einen anderen Ort zu verschieben oder zu ändern, wenn diese Inhalte in regulären Dateien und nicht in Datenbanken gespeichert sind.

Die Inhalte, die jeder von uns als Individuen produziert, werden für die Welt, in der wir leben, und insbesondere für die Natur des Internets immer wichtiger. Jeder von uns ist ein kleiner Verlag und Content-Produzent, und jedes Jahr sehen wir die wachsende Macht dieser Rolle, die wir im öffentlichen Raum spielen. Aber wir sind schreckliche Content-Manager* und *Crafter*, egal ob mit unseren öffentlichen oder privaten Daten. 

Wir neigen dazu, unsere Inhalte an den Verteilungspunkt zu verteilen, der es am einfachsten macht, sie anderen Leuten zugänglich zu machen, aber diese Inhalte landen schließlich als Zeilen in Datenbanken, die wir kaum kontrollieren, und werden auf Websites angezeigt, die wir kaum entwerfen. Selbst wenn Sie Ihren eigenen Blog auf Ihrer eigenen Domain hosten, besteht die Möglichkeit, dass der Inhalt in einer Datenbank und auf einem Server gespeichert wird, für den Sie sich nicht mehr genau an das Passwort erinnern können. Sicher, es gibt es *irgendwo*, aber es wäre viel leistungsfähiger, wenn Sie alles direkt mit Ihren Fingerspitzen steuern könnten, so wie Sie die Kontrolle über die Dateien auf Ihrem Laptop haben, indem Sie [eine breite Palette erlernter Techniken] verwenden (https://www.youtube.com/watch?v=YtdWHFwmd2o).

Vor etwa einem Jahr begann ich, eine Konvergenz meiner beiden digitalen Welten zu versuchen – meinem Zufluchtsort privater Dateien und meiner Menge schlecht verwalteter öffentlicher (oder halböffentlicher) Online-Inhalte –, indem ich eine neue Version von [meiner Website](http://markmhendrickson.com) veröffentlichte, die auf einer benutzerdefinierten Open-Source-Software basiert, die ich unter dem breiteren Dach von [Neotoma] erstellt hatte (http://github.com/neotoma). Die Website basiert vollständig auf Flatfiles, die ich direkt auf meinem MacBook, iMac oder iPhone bearbeite. Diese Dateien werden vom [Server](http://github.com/neotoma/personal-server)-Teil der Software geladen, sodass der [Website](http://github.com/neotoma/personal-web)-Teil die Daten laden kann, die angezeigt werden müssen, ohne dass eine Datenbank erforderlich ist. Wenn Sie beispielsweise den Server direkt nach dem Inhalt fragen, aus dem [dieser Beitrag](http://api.markmhendrickson.com/posts/) besteht, werden Sie feststellen, dass er genau denselben Inhalt bereitstellt, der als Datei auf meinem Computer gespeichert ist:

![Screenshot der API-Antwort des Neotoma-Personalservers]()

Bis zu dieser Woche mussten jedoch alle in meiner Dropbox gespeicherten Dateien, die ich auf meiner Website veröffentlichen wollte, manuell mit [einem Skript](https://github.com/neotoma/personal-server/blob/fefbdd6eb565958cafb79f94a973a3f6e9438d13/Gruntfile.js#L46) auf den Server meiner Website kopiert werden, was die gesuchte Konvergenz ergab kaum nahtlos. Mein Ziel war es, im Texteditor meines Computers auf die Schaltfläche „Speichern“ zu klicken und alle Änderungen sofort auf meiner Website zu veröffentlichen, ohne dass ein weiterer zusätzlicher Schritt erforderlich war. Auf diese Weise besteht nie die Gefahr, dass meine Inhalte zwischen meiner privaten und meiner veröffentlichten Welt asynchron sind. Ich muss einfach entscheiden, welche Inhalte ich privat oder öffentlich haben möchte, und diese Entscheidung wird einfach durch die Organisation der Dateien in verschiedenen Ordnern auf meinem Computer getroffen. Der Rest ist Magie.

Dieses Ziel habe ich diese Woche erreicht, nachdem mir aufgefallen ist, dass Dropbox über eine praktische Linux-Version (https://www.dropbox.com/install-linux) seiner Synchronisierungsanwendung verfügt, die ich auf dem Server meiner Website installieren und so konfigurieren kann, dass nur die Ordner, die ich öffentlich machen möchte, [selektiv synchronisiert](https://www.dropbox.com/help/desktop-web/linux-commands) werden. Nachdem ich die App eingerichtet habe, muss ich nur noch alle Dateien, die ich veröffentlichen möchte, in Dropbox speichern und einen Moment warten, bis die Dropbox-Synchronisierungsanwendung meines Computers die Änderungen in Dropbox hochlädt und sie dann auf meinen Server herunterlädt, wo sie sofort veröffentlicht werden.

Ich bin nicht der Erste, der dies als eine Technik für die Veröffentlichung persönlicher Websites betrachtet. Ich hoffe jedoch, das Prinzip noch weiter voranzutreiben, indem ich zusätzlich zu meinen unabhängig erstellten Inhalten automatisch meine Inhalte aus verschiedenen datenbankbasierten Unternehmensdiensten (wie Facebook, Twitter und Foursquare) in meine Dropbox kopiere.

Der kopierte Inhalt wird dann automatisch nicht nur mit meinen „lokalen“ Geräten (z. B. Laptop) synchronisiert, um ihn als Datei zu sichern, sondern auch mit meiner Website, wo ich ihn auf beliebige Weise erneut veröffentlichen kann. Die aggregierte Neuveröffentlichung auf der eigenen Website ist einer der Hauptanwendungsfälle für den Neotoma-Synchronisierungsdienst, und ich habe kürzlich beschlossen, dass ich mich darauf konzentrieren möchte, den Synchronisierungsdienst hauptsächlich für diesen Anwendungsfall zu entwickeln, ihn auf meiner eigenen Website zu verbreiten und das System für Freunde einzurichten, die auf die gleiche Weise auch selbst veröffentlichen möchten.

Das Kopieren von Daten aus einer Vielzahl von Diensten in dieses System wird Zeit und viel Arbeit kosten, daher möchte ich die Unterstützung für sie schrittweise freigeben, beginnend mit Foursquare, da es sich um eine App handelt, die ich intensiv verwende. Ich konzentriere mich derzeit darauf, Neotoma einzurichten, um meine Check-ins von Foursquare mit meiner Dropbox und anschließend mit meiner Website zu synchronisieren, wo ich sie in umgekehrter chronologischer Reihenfolge auflisten und so eine Zeitleiste meines Lebens erstellen kann (mit Fotos und anderen Inhalten im Zusammenhang mit meinen täglichen Reisen).

Dann habe ich vor, auch meine Tipps-Inhalte von Foursquare zu synchronisieren, um maßgeschneiderte Stadtführer auf meiner Website zu erstellen. Diese Reiseführer integrieren automatisch sowohl die Tipps als auch die Check-in-Daten, die ich fortlaufend erzeuge, um die aktuellsten Informationen zu meinen Lieblingsorten auf eine Art und Weise anzuzeigen, die schön verpackt, einfach zu verwenden ist und nicht veraltet.

Wenn Sie daran interessiert sind, Ihre persönliche Website auf ähnliche Weise einzurichten, würde ich mich gerne über Ihre Bedürfnisse unterhalten und darüber, wie meine Bemühungen hier auch Ihnen helfen können. Und wenn Sie als Entwickler daran interessiert sind, bei der beteiligten Software mitzuhelfen, sprechen wir über Neotoma und darüber, wo Sie etwas bewirken können.