
Hallo, ich heiße Michael Kapelko. Ich entwickle Software seit mehr als 10 Jahren professionell. In meiner Freizeit entwickle ich Spiele und Spieleentwicklungstools.
Dieser Artikel beschreibt meine erste dauerhafte Anwendung für Desktop-PCs: PSKOV Static Site Generator.
Haltbarkeit
Eine dauerhafte Anwendung ist eine Anwendung, die ohne eine einzige Änderung auf Betriebssystemen funktioniert, die in den Jahren 2010-2030 veröffentlicht wurden. Mit anderen Worten, eine dauerhafte Anwendung hat eine Abwärtskompatibilität von 10 Jahren und eine Stabilität von 10 Jahren. Tatsächlich läuft PSKOV sogar unter Windows 2000, sodass PSKOV eine Abwärtskompatibilität von 19 Jahren aufweist.
Aus technischer Sicht ist PSKOV eine einzelne HTML-Datei mit Layout (HTML), Stilen (CSS) und Code (JavaScript). PSKOV wird ausschließlich in einem Webbrowser ausgeführt, ohne eine Verbindung zu einem Server herzustellen.
Eine solche Implementierung bietet PSKOV die folgenden Funktionen:
- es kann ohne Einschränkungen kopiert werden
- es kann überall gehostet werden
- es kann lokal ausgeführt werden
- es kann ohne Internet arbeiten
Ich kann 10 Jahre lang keine Stabilität garantieren, weil ich die Zukunft nicht kontrollieren kann. Die Geschichte der HTML-, CSS- und JavaScript-Entwicklung zeigt jedoch, dass diese Technologien mit maximaler Abwärtskompatibilität entwickelt wurden. Erstens funktionieren neue JavaScript-Funktionen immer noch. Zweitens sind Webbrowser-Entwickler daran interessiert, dass ihre Webbrowser mit so vielen Websites wie möglich funktionieren. Beispielsweise funktioniert das <center> -Tag , das 2014 für veraltet erklärt wurde, seit 2019, 5 Jahre, wie erwartet.
Gleichzeitig hat jede Webbrowser-Anwendung eine schwerwiegende Einschränkung namens Sandbox, ein irreführender Name für einen Käfig. Der Käfig verhindert den Zugriff auf das lokale Dateisystem der Benutzer und auf fast alle Internetressourcen ohne die ausdrückliche Erlaubnis des Besitzers (CORS). Infolgedessen kann die Anwendung nur über den jeweiligen Server oder durch manuelles Herunterladen von Dateien mit Benutzern kommunizieren. Das Herunterladen von Dateien nacheinander oder als Archiv ist unpraktisch. Deshalb regiert heutzutage der serverorientierte Ansatz die Welt. Ich werde gleich auf Probleme dieses Ansatzes eingehen.
Um PSKOV aus dem Käfig zu befreien, wurde LFSA erstellt, ein winziges Python-Skript, das manuell ausgeführt werden muss, während PSKOV ausgeführt wird. Mit LFSA kann PSKOV auf das lokale Dateisystem des Benutzers zugreifen. Python wurde ausgewählt, da in Linux und MacOS Python standardmäßig installiert ist und Benutzer Python problemlos unter Windows (sogar Windows 2000) installieren können.
Erfolgsbilanz
PSKOV wurde erfolgreich verwendet, um die folgenden kleinen Websites zu erstellen:
Lassen Sie uns nun sehen, warum PSKOV als dauerhafte Anwendung für Webbrowser erstellt wurde.
Grund Nr. 1: Sammeln und halten Sie Wissen in zugänglicher Form
Ich habe seit einigen Jahren praktische Spieleentwicklungstools entwickelt. Bisher wurde das gesammelte Wissen durch native Anwendungen für Desktop-PCs, Schulungsartikel für verwandte Technologien und Präsentationsvideos dargestellt . Solche Formen des gesammelten Wissens sind grundsätzlich tot:
- wenige würden eine unbekannte Anwendung herunterladen
- wenige würden sich einige Videos ansehen
- noch weniger würden einige Artikel lesen
In vielerlei Hinsicht ist dieser Tod auf Unzugänglichkeit zurückzuführen: Man muss unbekannte Anstrengungen unternehmen, um ein unbekanntes Ergebnis zu erzielen. Kaum jemand hätte Interesse daran. Eine Webbrowser-Anwendung, auf die möglicherweise überall zugegriffen werden kann, ist ein völlig anderes Geschäft: Sie müssen nur bekannte Anstrengungen unternehmen, auf einen Link klicken, um ein unbekanntes Ergebnis zu erzielen. Die Geschichte der Durchführung von Twitter-Revolutionen zeigt, dass fast jeder einen Link öffnen und den Wechsel eines "blutigen Regimes" "mögen" kann.
Grund Nr. 2: Herrschaft von Menschen
Heutzutage wird jede Internetaktivität mit Hilfe von Diensten ausgeführt, die fast immer einem Unternehmen gehören: Nachrichten , Karten , Suche , Musik , Quellcode usw. Eine solche Machtübernahme führt zu Abschaltungen von Diensten , die ihre Eigentümerunternehmen für unrentabel halten. Sie tun dies normalerweise ohne Zustimmung der Benutzer, die diese Dienste überhaupt zum Leben erweckt haben.
In anderen Fällen blockieren Unternehmen einfach den Zugriff konkurrierender Browser auf ihren Dienst, wie dies kürzlich bei der Webversion von Skype der Fall war . Zum Glück gibt es Leute, die einer solchen Politik nicht zustimmen. Dank ihnen werden Entsperrwerkzeuge angezeigt .
Ich halte eine solche Art des Umgangs mit Dingen für unangemessen. Das wilde Geschäft ist jedoch nicht das einzige, das hier die Schuld trägt. Durchschnittliche Benutzer, jeder von uns ist auch schuldig. Sie können argumentieren, dass Benutzer keine Wahl haben, dass jemand anderes (Regierung, Außerirdische, unterstreichen, was Sie mögen) diese Welt unfair gemacht hat. Einige Leute beschuldigen sogar die Regierung / Außerirdische direkt und glauben, dass das Leben ohne sie erstaunlich wäre. Die Menschheitsgeschichte erzählt uns jedoch eine andere Geschichte : " Der Staat ist keine feindliche Horde, die die Gesellschaft besetzt hat, sondern die, die aus der Gesellschaft herauswächst und sie widerspiegelt ."
Als Teil der Menschen habe ich mich entschlossen, mit mir selbst zu beginnen und meine Kraft für das Beste einzusetzen: Anwendungen zu erstellen, die ich brauche, um sie für jedermann überall nutzbar und zugänglich zu machen. PSKOV ist der erste Versuch, der meine Erwartungen bereits übertroffen hat. Sicher, PSKOV hat Einschränkungen wie LFSA und unverschlüsseltes HTTP. Es gibt viel zu tun, um die Zugänglichkeit von PSKOV zu verbessern. Ich bin jedoch bereit, es jedem zu wagen: Die aktuelle PSKOV-Version wird 10 Jahre lang ohne Wartung funktionieren.
Das ist es, um meine erste dauerhafte Anwendung für Desktop-PCs zu beschreiben: PSKOV Static Site Generator.