Partition

Wer sein Smartphone in die Hand nimmt oder seinen Laptop aufklappt, der speichert während der Arbeit alle eingegeben Informationen in einer Datei, die wiederum in Partitionen auf der Festplatte verstaut ist. Eine Partition ist ein Teil des Speicherplatz. Als Partition bezeichnet man einen ordentlich abgetrennten Bereich auf der Festplatte, der für die Speicherung einer vorbestimmten Art von Informationen zur Verfügung steht. Der Dateipfad sdcard-Partition speichert zum Beispiel Informationen auf dem Speicherplatz der SD-Karte.

 

Partition
Eine Partition.

Man kann sich eine Festplatte wie ein großes Brettspiel mit einem Rastergitter vorstellen. Jede zu speichernde Information erhält auf dem Spielbrett ein bestimmtes Feld. Die erste Partition ist immer dem Betriebssystem vorbehalten. Ohne Betriebssystem sind Partitionen überflüssig – denn das Betriebssystem fungiert als „Spielleiter“. Fährt man den Computer hoch, so gibt das Betriebssystem vor dem „Spiel“ die Anweisung,  in wie viele Partitionen die Festplatte (“ das Spielbrett“) eingeteilt wird und wo diese anzutreffen sind. Das Betriebssystem als „Spielleiter“ legt also fest, wer wie viele Spielsteine erhält und welche Partition, also welcher „Spielfeld“ als Erstes mit der computerisierten Arbeit anfangen darf.

Doch damit nicht genug. Damit auch die Anwenderin weiß, wo sie ihre Informationen speichert, trägt jede Partition ein Namensschild. Jedes „Spielfeld“ ist also mit einem Namen ausgestattet, zum Beispiel mit dem Begriff „Laufwerk C“.

 

SHP

Body Shaping“ ist der moderne Begriff für den altbackenen Ausdruck von „Sporttreiben“. Unter trainierten Geoinformatikerinnen bedeutet Shape etwas ähnliches: Eine Datei so zu formen, dass Landkarte effektiv hineinpasst. Dementsprechend heißen ihre Dateiformate dann „Shape Files“ oder kurz „SHP“.

Eine Shapefile speichert Geodaten. Eine SHP enthält einen Haufen von Vermessungsdaten. Sie ist der Geometrie-Baukasten des kleinen Mannes oder der kleinen Frau. Die in der Datei gespeicherten Daten stehen für die Höhenmeter eines Berges, die Länge einer Straße oder die exakte Länge eines Gewerbeareals.

Eine Shapefile kann man sich wie eine große Truhe für alte Landkarten vorstellen. Denn die Shapefile fungiert als übergeordnetes große Dateiformat für mindestens drei weiteren Dateien mit den kryptischen Endungen namens -.shp, -dbf., oder -shx.de.

JSON

JSON steht, ähnlich wie CSV für ein Dateiformat in Textform. Wie sämtliche Fachsprache in der Informatik nutzt man nur Abkürzungen. JSON steht für das ausgeschriebene Wort JavaScript Object Notation. Das heißt, JSON ist eine Dateiformat, dass Objekte in der Programmiersprache für Webseiten speichert. Webseiten werden sehr häufig mit der Programmiersprache JavaScript programmiert. JSON-Dateien sind sehr beliebt, denn sie sind einfach und unkompliziert aufgebaut, und können von vielen anderen Anwendungen gelesen werden. JSON-Dateien docken mit ihrer einfachen Struktur an viele andere Dateiformate an.

JSON wurde erst im letzten Jahrzehnt populär, als immer mehr Smartphones verkauft wurden und Apple 2009 seinen ersten Appstore eröffnete. Die JSON-Datei wird hier als einfaches Transportmittel für die Übertragung von mobilen Webseiten eingesetzt, das heißt von Daten von einem Handy-Client zu einem Server und zurück.

CSV-Datei

CSV klingt wie die Abkürzung für einen Fussballverein, tatsächlich ist sie jedoch die Abkürzung für ein Dateiformat. Es gibt viele verschiedene Dateiformate in der Welt der Computer. Jedes Dateiformat speichert Informationen auf unterschiedliche Art und Weise im Inneren des Computers. CSV speichert Text, deswegen kann man sich übertragen den CSV als Fanclub für Buchstaben vorstellen. Das Dateiformat CSV steht für comma seperated value und mit dieser Übersetzung kann man sich eine einfache Eselsbrücke bauen: In jedem Text steht ein Komma, deswegen muss eine CSV-Datei eine Textdatei sein. Um Buchstaben zu speichern, wandelt das CSV-Dateiformat wandelt diese in Zahlen um (siehe: Grundlagen des Binärcodes).

CSV wird für die Speicherung von Datenbanken, Listen und Tabellen angewandt. Immer wenn ihr diese Buchstabenfolge C-S-V seht, wisst ihr, dass sich hinter dieser Datei eine Datenbank verbirgt.

Für CSV-Formate gelten für bestimmte Regeln der Komma-Zeichensetzung, so wie in der Deutschunterricht Regeln für die Rechtschreibung gelten. Jede Spalte in einer Tabelle muss durch ein Komma seperariert, d.h getrennt werden. Durch diese Schreibweise erkennt der Computer das Format und kann die Datei mit einer .csv-Endung speichern.

API – Schnittstelle

Das API ist eine Schnittstelle für Programmierinnen (engl. Application Programming Interface). Wer einen Anwendung programmiert, muss sicher gehen, dass exakt dieselben Daten auf dem Bildschirm erscheinen, wie man sich das während des Programmierens gewünscht hat. Wer als Hersteller von Hardware eine saubere und vernünftige Schnittstelle anbietet, der bietet Programmierinnen bessere Chancen, eine Anwendung zu programmieren, die mit der Hardware kompatibel ist. Die sogenannte „Dokumentation“ der Schnittstelle legt offen, welche Funktionen in die Anwendung übernommen werden können, d.h. man programmiert nicht unnötigerweise Funktionen, die die entsprechende Anwendung nicht unterstützt.

Auf  den meisten Webseiten von Unternehmen sieht man unter dem Dateireiter „Anfahrt“ eine Wegbeschreibung, die durch einen Straßenausschnitt von GoogleMaps verdeutlicht ist. Innerhalb seines eigenen Programms kann jeder auf den Kartenlesedienst verweisen, weil Google Maps seine Schnittstelle veröffentlicht und gut dokumentiert hat. So kann jede Webentwicklerin diese Schnittstelle – hier heißt sie Web API – in den Programmcode einbauen.

Auch das Filmchenportal Youtube besitzt eine quelloffene Schnittstelle, sodass viele unterschiedliche Webseiten eigene Videos im Youtube-Format mit dem roten Play-Button integriert haben.  Der immense Erfolg der Verbreitung der Produkte von Google und Tochterunternehmen Youtube lässt sich also auf ihren gut dokumentierten Schnittstellen zurückführen. Apple hingegen hält seine Schnittstellen geheim, Entwicklerinnen müssen erst eine Linzenz beantragen.

 

 

Shell

So wie eine Muschelschale ihr Inneres schützt, so schützt auch der Computer sein Inneres durch eine Schale. 

Wenn wir auf den tiefen Meeresgrund hinabtauchen, so erkennt man dort oft Austern, die sich an Felsen und Steinen anhaften. Doch die echte Auster sehen wir nur selten, wir können meistens nur ihre Schale (=Shell) erkennen. Die Shell sorgt dafür, dass das weiche Innere der Muschel geschützt bleibt, sie bietet eine feste Umgebung für die Auster. In der Informatik hat man den Begriff Shell gewählt, um die feste Umgebung einer Software zu beschreiben. Das ist bei Windows beispielsweise der blaue Hintergrunddesktop, wenn wir den Computer das allererste Mal starten. Der Desktop ist eine Shell mit graphischer Oberfläche. Wir können Farben und Formen auf der Shell wahrnehmen.

 

abalone-paua-muschel-a
Die Shell bietet der Software ein festes Gerüst.

 

Eine Shell gehört zu dem Betriebssystem eines Computers. Das eingebaute Betriebssystem setzt sich aus einer Vielzahl von geordneten Programmbefehlen zusammen, diese sorgen dafür, dass überhaupt eine Kommunikation zwischen der Hardware und der Software innerhalb eines Computers möglich ist. Die Shell, als Teil des Betriebssystems, fungiert dabei als oberste Dolmetscherin für einen verständlichen Dialog. Wer die vollen Kapazitäten der Shell als Dolmetscherin ausschöpfen möchte, und nicht nur an der graphischen Oberfläche kratzen will, muss eine Muschelschalenschicht tiefer gehen. Auf dieser tieferen Ebene gibt es keine anklickbaren Elemente. Hier existiert eine Shell-Schicht ohne bildhafte Benutzerinnenoberfläche. Alles, was wir den Computer tun lassen wollen, müssen wir in Form von Programmierbefehlen in die blinkende Kommandozeile eingeben. Deswegen heißen die Schichten befehlsorientierte Shells oder Command-Line Interfaces, kurz CLI oder Kommandozeilen-Shells. Das sind schwarze quadratische Fenster, in die man Buchstaben eingeben muss. Man kann es sich so vorstellen, als kommuniziere man durch diese Fenstern direkt mit der Auster. Für diese Shell existiert eine weitaus größere Anzahl von sprachlichen Befehlsmöglichkeiten als auf der höheren Ebene, auf der Befehle mit dem Mauszeiger angeklickt werden können. Kommandozeilen-Shells werden deswegen hauptsächlich von Webmastern und Administratorinnen genutzt.

 

wetter-in-powershell-windows-10-002
Kommandozeilen-Shell von Windows. Diese nennt sich Powershell.

 

Allgemein kann man sich eine Shell wie eine Gußform vorstellen, die die Befehle, die wir in die Kommandozeile eingeben, in eine adäquate Form gießt, damit die Hardware-Komponenten des Computers diese auch tatsächlich verstehen. Wenn sich man die Hardware als unermüdlich arbeitende Auster vorstellt, so ist die Shell die Umgebung, die sie davor schützt, keine genuschelten, unverständlichen Anfragen von außen zu erhalten. Denn die Arbeitsbefehle für eine Shell müssen in klar und deutliche Operatoren verpackt werden. Ansonsten reagiert der Computer nicht. Die Auster bleibt stumm.

Schnittstelle

Eine Schnittstelle, das ist der Moment, in der die scharfe Klinge der Schere ein Blatt Papier in zwei Hälften zerteilt. Möchte man das die zwei Teile exakt wieder zusammenfügen, braucht man viel Klebstoff und akribische Genauigkeit.  Genau das ist das Wesen von Schnittstellen in der Informatik. In einem computerinternen System sind viele verschiedene Elemente vorhanden, die nur miteinander über ihre Schnittstelle miteinander kommunizieren. Genauso wie es rote, gelbe und grüne Farben von Papier gibt, oder Bätter aus Pappe oder Seide, so ist jede Schnittstelle im Computer unterschiedlich gestaltet. Die Aufgabe von Schnittstellen ist es, Informationen möglichst reibungslos zu übertragen.

Schnittstelle 3.png
Schnittstellen

Dienste & Operatoren

Dienste (engl. services) stellen Wegweiser im Labyrinth der Digitalisierung dar. Wenn man sich das Internet als Gestalt von Daniel Düsentrieb vorstellt, so sind Dienste das zugehörige „Helferlein“ , die kleine Glühlampe auf zwei Beinen, die ihm beim Zusammenschrauben der Technik hilft.

Dienste sind eine Sammlung von Operatoren.

Arbeitsanweisungen in der Digitaltechnik nennt man Operatoren. Dienste, als Bündel von Operatoren, veranlassen, dass eine bestimmte Aktion ausgeführt wird. Außerdem erstatten sie danach Bericht, ob die Aktion Erfolg hatte oder nicht. Wie die „Helferlein“-Glühlampe, die in den Donald Duck-Comics strahlend hell aufleuchtet, wenn sie Daniel Düsentrieb etwas mitzuteilen hatte.

daniel (1)

 

Diese Berichterstattung schützt vor Fehlern. Beispielsweise innerhalb der Internetübertragung: Wenn Daten durch das Internet transportiert werden, muss der Dienst der Schnittstelle der nächsten Schicht mitteilen, was dieser gerade erledigt hat. Sonst wüsste die Schnittstelle nicht, welche Daten überhaupt angekommen sind. In seinem Bericht gibt der Dienst der Schnittstelle genau Auskunft, welche Pakete in welche Daten zerlegt wurden: Groß oder kleine Pakete? Lange oder kurze Sequenzen? Ohne Dienste wäre das Internet nur ein großer chaotischer Haufen.

Ein Dienstprimitiv ist ein einzelner Operator.

Man kann sich einen Dienstprimitiv als einen Befehlsgeber vorstellen, der cholerisch seine Peitsche schwingt und dabei nur einen einzigen Befehl erteilt. Eine primitive Vorgehensweise also.

Die Verbindung zwischen einem Client und einem Server wird nur über Dienstprimitive geregelt. Der gesamte Dialog zwischen Client und Server kann man sich als Gespräch zwischen nacheinander hin- und hergeschickte Befehle vorstellen. Der Server ist dabei im stetigen Stand-By-Modus. Er fängt nur an zu arbeiten, wenn er eine entsprechende Anweisung vom einem aktiven Kommunikatonspartner erhält. Das ist der Client, beispielsweise die App auf einem Smartphone. Wenn wir die App „Vegetarisches Kochbuch“ antippen, um sie zu öffnen, sendet dieser Client eine Reihe an Dienstprimitiven an den Server, auf dem die vegetarischen Kochrezepte gespeichert sind. Um die Daten von dem Server abzurufen, verpackt der Client seine Befehle an den Server beispielsweise in folgende Operatoren: – VERBINDEN! – EMPFANGEN! – AUFHÖREN! (connect – receive – disconnect).

Privacy by Design

Privacy by Design kann man sich tatsächlich wie ein Designerkleid vorstellen, dass ihre Trägerin unsichtbar macht. Die zuständige Designerin (die IT-Programmiererin) tüftelt nämlich nicht einfach los, sondern denkt vorher über die Privatsphäre ihrer Nutzerinnen nach. Bevor sie an der Werkbank ihr Software-Produkt herstellt, muss sie folgende Frage für sich beantworten können: Wie kann ich die Daten der Anwenderinnen am Besten schützen, die am Ende meine Software nutzen? Diese Taktik nennt sich „Datenschutz durch Technik“ oder „Privacy by Design“ und gilt als wirksamste Methode effektiver Umsetzung von Datenschutz. „Privacy by design“ meint: Nicht alles, was technisch machbar ist, machen wir auch. Zum Beispiel, dass sich meine Webcam einschaltet, während du auf diese Blogbeiträge klickst. Diese Möglichkeit wird vornherein in der technischen Gestaltung meines Computers verhindert, weil hier eine intelligente Designerin nachgedacht hat, bevor sie den Internetbrowser konfiguriert und verkauft hat.

images

Der Begriff „Privacy by Design“ wurde von der Informationsfreiheits- und Datenschutzbeauftragten der Provinz Ottawa in Kanada, Ann Cavoukian, das erste Mal in den 70ger Jahren definiert. Ihr fiel das Wort beim Muffinbacken ein.

Host, Client, Server

Ein Host ist ein männlicher Gastgeber. In der Computersprache bezeichnet er den Rechner, der alle Gerätekomponenten beherbergt und bewirtschaftet: dem Server. Den Host kann man sich als Butler vorstellen, seine zugehörige Küche als Server. So wie der Butler die Speisen in der Küche vorbereiten und servieren lässt, so holt der Host vom Server die entsprechenden Zutaten und serviert diese seiner Ladyals fehlerfreie Präsentation einer Webseite.

Webseiten aus dem Internet werden direkt auf Servern „gehostet“. Dieser  Blog zum Beispiel wird auf dem Server von WordPress gehostet. Wenn jemand irgendwo auf dieser Erde diese Webseite anschauen möchte, so kontaktiert der Client den Host auf dem Webserver. Der Client – der Kunde –  führt Befehle die Befehle aus, die er durch den Internetbrowsers erhält. Er kommunziert mit dem Butler, dem Host.

Wenn man beispielsweise in die das weiße Google-Suchzeilenfeld des Internetbrowsers www.digilux.blog eingibt und danach die „Enter“-Taste drückt, so springt der Client auf, und kommuniziert mit dem Webserver, auf dem die Daten und Informationen dieser Google-Webseite liegen. In einer technischen Begrüßung, die nach einem starren Protokoll abläuft – Frage:“Hello_Server“, Antwort: „Hello_Client“ – weckt der Client den Server auf. Daraufhin tauschen die beiden die Verschlüsselungsnotizen für den sicheren Transport der Daten aus (siehe TLS-Handshake).

Der Begriff Client wird fast ausschließlich für die Client-Server-Beziehung gebraucht. Das Serverzentrum kann man sich wie eine riesigen Vorratskammer einer Küche vorstellen. Diese Vorratskammer ist die vollgestopft mit technischen Geräten, die Speicherplatz anbieten. Jeder einzelne Server ist auf den ersten Blick erst einmal nur ein kleines quadratisches Kästchen aus Metall und Kupfer. Die Daten jeder Webseite im Internet, die wir ansurfen, müssen physisch irgendwo auf dieser Welt in einem dieser Metallkästchen lagern. Wenn wir die Google-Suchmaschine nutzen, dann nehmen wir zum Beispiel Kontakt zu dem Serverzentrum des US-Bundesstaast Iowa auf. Die Google-Server lagern dafür in Kellern unter der Erde von streng bewachten Gebäuden.