Paul Schmidinger

Papierreal

Handwerk im Netzwerk

Papierreal - Handwerk im Netzwerk

Papierreal - Handwerk im Netzwerk

Technische Beschreibung

Um die Software verwenden zu können, sind mindestens zwei Rechner nötig: ein Client und ein Server. Der Client ist der Rechner des Benutzers, auf welchem der Hauptteil der Software, das Java-Applet, läuft. Dieses synchronisiert sich in bestimmten Intervallen mit dem Server, auf dem die Eingaben des Benutzers mittels PHP in eine MySQL-Datenbank gespeichert werden.
1. Server
Bei dem Server muss es sich um einen klassischen Webserver handeln, auf den über das World Wide Web zugegriffen werden kann. Bei der Entwicklung wurde ein sog. WAMP-System verwendet: Windows als Betriebssystem, Apache als Webserver, MySQL als Datenbank, PHP als serverseitige Sprache. Die Testversionen im Internet wurden hingegen auf einem LAMP-System installiert. Der einzige Unterschied dabei ist, dass das Betriebssystem Linux verwendet wird.
2. Client
Beim Client handelt es sich um einen Rechner mit Internetzugang und Web-Browser, wobei letzterer über ein entsprechendes Java-Plugin verfügen muss. Die Idealkonfiguration, unter der die Software entwickelt und getestet wurde, ist ein Internet Explorer 4 oder neuer unter Windows mit einem aktuellen Java-Plugin der Firma Sun.
3. Datenmenge, Ladezeit
3.1 HTML-Seite
Die HTML-Seite, die das Applet beinhaltet, hat prinzipiell lediglich eine Größe im Kilobyte-Bereich. Allerdings addieren sich die Daten für den Inhalt eines Papiers, da sie beim Aufruf des Applets diesem in der Form eines Parameters aus dem HTML-Code übergeben wird.
3.2 Java-Applet
Durch die Kompression sämtlicher Klassendateien, die das Applet benötigt, in eine einzelne JAR-Datei beträgt die Größe der gesamten clientseitigen Software rund 50 Kilobyte, kann also mit einer durchschnittlichen Internetverbindung in wenigen Sekunden aus dem Netz geladen werden. Außerdem werden diese Daten bei modernen Browsern nur einmal geladen und bei mehrmaliger Verwendung von Papierreal automatisch wieder verwendet.
3.3 Skriptographische und typographische Daten
Dieser Bereich benötigt bei umfangreichen Seiten am meisten Daten: Wirklich voll geschriebene Seiten, die auch schon mehrmals gelöscht und vollkommen ausradiert wurden, haben einen Platzbedarf von rund 100 Kilobyte bis 1 Megabyte.
3.4 Synchronisation
Die Synchronisation übermittelt erstellte Elemente (Grafiken, getippter Text etc.) an den Server und empfängt gleichzeitig neue Elemente, die von anderen Benutzern in den letzten Sekunden erstellt wurden. Die Datenmenge, die für jede Synchronisation benötigt wird, bleibt im Rahmen von 20 Byte bis max. 1 Kilobyte (je nach Aktivität der Benutzer).
4. Sechs Sprachen
Für die Erstellung und den Betrieb der Software wurden sechs Sprachen im (programmier)technischen Sinn benötigt. Grundsätzlich handelt es sich dabei um Konventionen zur digitalen Codierung von Daten und Abläufen oder, um die medienwissenschaftlichen Begriffe zu verwenden, von Medien und Prozessen. Diese Sprachen sind HTML, JavaScript, Java, MySQL, PHP und ein eigens entwickeltes Vektor-Dateiformat.
Genau genommen handelt es sich bei EPS um eine 7. Sprache, die in diesem Fall aber nicht gezählt wird, da der EPS-Export nur eine optionale Zusatzfunktion darstellt, die nicht zum Kern der Software gehört. PDF zählt ebenfalls nicht als verwendete Sprache, da es sich auch dabei zum einen nur um eine Zusatzfunktion handelt, und weil zum anderen eine Programmbibliothek verwendet wurde, die konkrete Kenntnisse vom Aufbau eines PDF-Dokumentes überflüssig machen.

Hardware / Software

Systemanforderungen:
- Mindestens: Web-Browser mit Java-Plugin
- Empfohlen: Windows, Internet Explorer 4+, aktuelles Java-Plugin von http://java.sun.com/getjava/index.html
Verwendete Hardware:
PC, Internetanbindung, 1 GB RAM, P4 mit 1.8 GHz, Grafiktablett
Verwendete Software:
Betriebssystem: Windows
Webserver: Apache, PHP, MySQL-Datenbank
Entwicklung: Java-Compiler von Sun, JCreator zum Programmieren, selbstentwickeltes CMS-System "Websolution" für die Webseite, HTML-Editor für HTML/PHP-Programmierung, Adobe Photoshop für die Bildbearbeitung, Adobe Indesign für den theoretischen Teil