Wie funktioniert das Internet?

Der 13-minütige Animationsmovie „Warriors of the Net“ zeigt in spacigen Bildern, wie Internet und elektronischer Datentransport funktionieren. Als Hauptdarsteller wirken, im Star Wars ähnlichen Science Fiction-Design, bekannte Netz-Gestalten des täglichen Internetlebens: Router, Firewalls und Datenpakete.

Download: ftp://ftp.sunet.se/pub/tv+movies/warriors/

Wer es noch ein wenig ausführlicher mag, schaut sich die WDR Sachgeschichte mit der Maus an. Unter dem Titel „Der Datenweg durchs Internet“ wird erklärt, wie die Internetseite auf den Bildschirm kommt. Nicht so spacig wie im ersten Fall, aber auch schon anzusehen.

Download: http://www.wdrmaus.de/service/download/

Trusted Computing

Screenshot TC

Ein sehr gut gemachter Film, der zum nachdenken anregt: http://www.lafkon.net/tc/
Ein Auszug aus der deutschen Übersetzung:

Vertrauen ist wenn man an die Aufrichtigkeit einer Sache glaubt. Es ist das kompromisslose Gefühl von Wahrheit und Ehrlichkeit …
… und kann nicht erzwungen werden. Vertrauen zwischen zwei Menschen ist eine persönliche Bindung die auf Gesprächen, gemeinsamen Werten und Erfahrungen basiert.
Vertrauen beruht immer auf Gegenseitigkeit.

Quelle: http://www.ste.ag/2005/10/05/trusted-computing/

Projektverwaltung

Open Workbench ist eine in Java geschriebene Projektmanagement-Software. Die Freeware unterstützt Anwender bei der Planung und Durchführung ihrer Projekte. Projekte lassen sich für das Projektmanagement in Aktivitäten, Phasen, Aufgaben und Meilensteine unterteilen und diesen die jeweils erforderlichen Ressourcen an Personal, Material oder Kostenaufwand zuordnen. Das Projektmanagement kann einzelnen Mitarbeitern im Projektplan verschiedene Rollen zuordnen, um das Management von Arbeitsgruppen in komplexen Projekten zu vereinfachen. Außerdem sind Projektverantwortliche in der Lage, für das Projektmanagementverschiedene Projektzeitpläne zu entwerfen und diese Momentaufnahmen mit der Planung beziehungsweise der tatsächlichen Entwicklung abzugleichen.

http://www.openworkbench.org
http://www.openworkbench.de

Die OpenSource Anwendung GanttProject ist eine in Java geschriebene Projektplanung, mit der man Gantt-Diagramme erstellt kann. Für jedes Projekt kann eine hierarchische Aufgabenstruktur festgelegt werden. Für jede Aufgabe lassen sich Start- und Endzeitpunkt, Prioritäten und Abhängigkeiten zu anderen Aufgaben festlegen, sowie den Aufgaben Personen zuordnen.

http://ganttproject.sourceforge.net/
Flash-Demo GanttProject

Putty, PuttyGen und WinSCP

Um die Putty-Sessions von einem PC auf den anderen zu übertragen, kann man mit regedit den folgenden Pfad ex- und importieren.

HKEY_CURRENT_USER\Software\SimonTatham

WinSCP speichert seine Sessions unter:

HKEY_CURRENT_USER\Software\Martin Prikryl

Achtung! Die Sessionnamen der neueren Versionen dürfen keine Slashes enthalten und ersetzen ein Leerzeichen durch die Kombination: %20

Java Properties

Eine Benutzerkonfiguration wird zum Beginn einer Anwendung geladen. Während ihres Laufs werden die verschiedensten Paramter geändert und zum Ende gespeichert.

Für den Zugriff auf die Konfiguration werden Pfad, Name, Parameter-Schlüssel und die Konfiguration (params) selbst global festgelegt.

[code lang=“java“]public static final String CONFIG_PATH =
System.getProperty(„user.home“) +
System.getProperty(„file.separator“) +
„.app“;

public static final String CONFIG_FILE =
„convert.properties“;

public static final String PARAM_XYZ = „param.xyz“;

private Properties params = new Properties();[/code]

Beim Start der Anwendung wird geprüft, ob das Verzeichnis für die Konfiguration vorhanden ist. Wenn dies nicht der Fall ist, wird das Verzeichnis angelegt und eine möglicherweise vorhandene Konfiguration eingelesen.

[code lang=“java“]try {

File confDir = new File(CONFIG_PATH);
if(! confDir.exists()) confDir.mkdir();

String config = CONFIG_PATH +
System.getProperty(„file.separator“) +
CONFIG_FILE;

File c = new File(config);

if( c.exists() ){
FileInputStream in = new FileInputStream(config);
params.load(in);
in.close();
}

} catch (Exception e) {
e.printStackTrace();
System.exit(-1);
}[/code]

Nach dem Laden hat man über den Parameter-Schlüssel Zugriff auf die Werte der Konfiguration. Ist ein Schlüssel nicht definiert, wird null geliefert.

[code lang=“java“]params.getProperty(PARAM_XYZ)[/code]

Geändert wird ein Parameter ebenfalls über seinen Schlüssel.

[code lang=“java“]params.setProperty(PARAM_XYZ, „abcd“);[/code]

Am Ende müssen alle aktuellen Werte gespeichert werden.

[code lang=“java“]try {
String config = CONFIG_PATH +
System.getProperty(„file.separator“) +
CONFIG_FILE;;

FileOutputStream out = new FileOutputStream(config);
properties.store(out, „Lokale Konfiguration“);
out.close();

} catch (Exception e) {
e.printStackTrace();

}[/code]

Beim Speichern ist zu beachten, das alle gewollten Möglichkeiten – das Programm zu Beenden – beachtet werden. So kommen in einem typischen GUI die Titelleiste, ein Menüeintrag und ein Toolbar-Button in Frage.

Xming

Bisher scheiterten die Versuche einen X-Server unter Windows zu nutzen am Preis oder schlicht an der Größe der Software-Pakete. Beispielsweise schien eine komplette Cygwin-Umgebung einzurichten doch etwas übertrieben, für die wenigen zu erwartenden Anwendungsfälle.

Der Open-Source X-Server Xming (basiert auf Cygwin) kommt aber als 2,1 MByte großes Installationspaket daher. Er besitze ein grafisches Interface mit dem man sich Xml-Dateien erstellen kann, die dann direkt mit einem Doppelklick gestartet werden können.

Screenshot Xming Tray Noch besser ist aber ein flexibles Tray-Icon, was man den eigenen Bedürfnissen anpassen kann.

Die Installation ist denkbar einfach. Nach dem Download führt man das Setup aus, an dessen Ende man die Verknüpfung der Dateiendung xlaunch mit Xming positiv bestätigen sollte. Zusätzlich steht ein Font-Paket zur Verfügung, was weitere Schriften installiert. Auch dieses wird einfach mit dem Setup ins selbe Verzeichnis wie Xming abgelegt (die Meldung, das das Verzeichnis schon existiert, ändert nichts an der Tatsache, das es das korrekte Zielverzeichnis für die Fonts ist).

Nach dem Start von Xming zeigt sich das Tray-Icon Icon Xming und symbolisiert die Betriebsbereitschaft des X-Servers.

Screenshot Putty X Wenn man nun eine Putty-Session startet, muss man lediglich das X11 forwarding aktivieren und als X display location den Wert „localhost:0.0“ hinterlegen. Startet man dann in der Putty-Konsole ein X-Programm (xterm, xcalc usw.), wird dessen Ausgabe auf dem Windows-PC dargestellt und alle Eingabe (Maus/Tastatur) zum Server übertragen.

Nun ist ein xterm nicht gerade spannend, wenn man mit einem Programm wie Putty arbeitet. Interessant wird die Sache, wenn man Tools wie Ethereal startet. Der folgende Screenshot zeigt neben einer Putty-Konsole ein Ethereal und die Werkzeuge redhat-config-bind sowie redhat-config-samba.

Screenshot Xming Desktop

Das zu Beginn gezeigte Kontextmenü vom Xming-Tray-Icon lässt sich erzeugen, in dem man die Datei Xmingrc anpasst. Diese sollte im Programm-Verzeichnis (in das man Xming installiert hat) liegen. Sie kann mit einem einfachen Texteditor angelegt und bearbeitet werden.

Da die gesamte Xming-Dokumentation sehr gut ist, beschränke ich mich hier auf ein kleines Beispiel:

# Xming Resource File
TRAYICON ",101"
menu kunde {
Bash execd "C:\putty -load session"
separator
User exec "C:\plink -load session redhat-config-user"
Bind exec "C:\plink -load session redhat-config-bind"
Samba exec "C:\plink -load session redhat-config-samba"
separator
Ethereal exec "C:\plink -load session ethereal"
}
menu putty {
Kunde MENU kunde
}
menu apps {
"Putty Key Generator" execd "C:\puttygen C:\key.ppk"
"Putty/Plink Session" menu putty
separator
"&Reload Xmingrc" reload
"Edit Xmingrc" execd "notepad C:\Programme\Xming\Xmingrc"
separator
}
menu aot {
"&Always on Top" alwaysontop
separator
}
RootMenu apps
DefaultSysMenu aot atstart
SilentExit
DEBUG "xmingrc to reread"

Die eingesetzten Programme Putty, Plink und Puttygen findet man hier. Putty und Plink erwarten nach dem Parameter load eine Session, die zuvor mit Putty konfiguriert und gespeichert wurde.