Articles and Writeups
Here you'll finde articles and other writeups.Longer articles will be displayed on a new page or as PDF.
Das „Spring Rich Client
Project“ 
Michaela Kieneke
Der
Artikel als PDF
Source
Code

Das „Spring Rich Client Projekt“ zeigt die Flexibilität und
Wiederverwendbarkeit von Desktop-Anwendungen, die auf dem „Spring
Framework“ basieren.
Eine einmal erstellte Applikation kann für weitere
Projekte als Basis verwendet werden. Zur Erstellung der Oberfläche wird
die „Swing“-Bibliothek verwendet. Hierbei bietet das „Spring
RCP“
Komponenten, einzelne Elemente wie z.B. „Menu-“ und „Toolbar“,
„Wizards“, „Views“ oder Prioritäten bzw. Abhängigkeiten mit
vergleichsweise wenigen Codezeilen zu realisieren. Die
Oberflächenprogrammierung und das Applikationsmanagement
werden somit vereinfacht. Darüber hinaus bietet es ergänzende Klassen
zur Datenbindung und
-validierung. Zur Datenbankanbindung
können Komponenten des „Spring Frameworks“ verwendet werden.
Wrapping Perl with PHP
Jochen Lüll
View
Article
View
Demos

A lot of low cost hosting solutions have only PHP support and don't
support Perl CGI scripts.
Although PHP is good for creating web pages it might be sometimes
desirable to use Perl scripts.
This articles shows how to write an PHP to Perl wrapper to supper Per
CGI scripts for web hosting solutions on which only PHP is supported.
Creating Screen Casts with ScreenCam
Jochen Lüll
View
TutorialScreenCam is a small applications that records screen shots and turns them into a video. This tutorial shows how to record screen casts and how to enhance the recording by using FFmpeg.
ScreenCam is just a small tool, so it is not comparable with full sizes screen capture applications, but it should be sufficient for recording small screen casts.
One main advantage is the ScreenCam is platform independent so it runs on all platforms (e.g. Windows and Linux) capable of running Java.
The standard output format of ScreenCam is Quicktime (MOV) but if FFmpeg is installed an FLV file will be created in addition.
At the end of the tutorial I will describe how to tune the resulting movie files by reducing the framerate and adding sound.
Multicasting Images with Java
Jochen Lüll

Distributing images within a network can be useful for a presentations or simply if a beamer is missing in a meeting room.
This article shows how to multicast images and screenshots, so that they can be viewed by anyone within the network.
Multicasting is based on UDP packets. UDP offers (unlike TCP)
no
traffic control. This means that packes are not guaranteed to be
delivered in the right order or that they might not be delivered at
all.
Computers can join a so called Multicast Group which is
represented by an IP-Number and a port.
In this sample application we will multicast screenshots and images so
that they can be displayed everywhere within the network.
The application consists of a sender and receiver Java application.
A GUI application using the techniques described in the article can be found in the Download Area.
Kanonische Huffman Codes 
Michaela Kieneke
Der
Artikel als PDF
Applikation
starten
Source
Code

Sicher kann sich fast jeder von uns daran erinnern, wie er vor vielen Jahren mit Freunden verschlüsselte Nachrichten ausgetauscht hat. Dazu wurde mühsam jedes einzelne Zeichen durch ein anderes ersetzt. Im einfachsten Fall verschob man die Buchstaben des Alphabets um ein oder mehre Stellen vor oder zurück. Erste Unstimmigkeiten kamen auf, sobald Zahlen bzw. Ziffern mit verschlüsselt werden sollten. Wurden sie einfach ans Alphabet hinten angehängt? Oder sollten die zehn Ziffern für sich selbst verschoben werden? Es mussten also eindeutige Regeln für die Verschlüsselung aufgestellt werden.
Eine Erweiterung waren selbst erfundene oder z.B. vielleicht den Micky Maus Heften entnommene Symbole, die für jedes Zeichen des Alphabets abgemalt werden mussten. Das Verschlüsseln fiel uns noch recht leicht - aber wenn dann eine verschlüsselte Nachricht bei uns ankam, dauerte es meist sehr lange, bis wir alle Zeichen wieder zurück übersetzt hatten. Klar, beim Verschlüsseln konnte aus einer sortierten Liste gewählt werden, beim Entschlüsseln musste man Zeichen für Zeichen vergleichen, um auf das richtige Symbol zu schließen.
Häufig auftretende Buchstaben, wie beispielsweise das E
im deutschen Wortschatz, konnte man bald auswendig, seltene Buchstaben
wie z.B. das Q
konnte man sich eher nicht merken.
So kam man auf die Idee, für häufiger auftretende Zeichen einfachere
Symbole zur Verschlüsselung zu wählen, die Symbole für seltenere
Zeichen konnten ruhig komplizierter zu malen sein.
Etwas Ähnliches lässt sich beim Morsealphabet erkennen,
welches auf Samuel Morse zurück geht. Bei diesem wird jedes Zeichen
des normalen Alphabets durch eine festgelegte Kombination von kurzen
und langen Signalen ersetzt, deren Vorteil darin besteht, dass sie
akustisch oder visuell übertragen werden können. Für häufig auftretende
Zeichen wie das E
wird nur ein kurzes Signal, für
das viel seltenere Q
werden zwei lange, ein kurzes
und wiederum ein langes Signal verwendet.
Diese Idee wird ebenfalls vom Huffman Code berücksichtigt. Allerdings wird dieser nicht dazu verwendet, Texte zu verschlüsseln. Er soll in erster Linie die Daten komprimieren. Dazu wird der vorliegende Text untersucht und den am häufigsten auftretenden Zeichen bzw. Worten die kürzesten Codewörter zugewiesen, welche ausschließlich aus Bits, also 0 und 1, bestehen. Komprimierte Texte lassen sich relativ einfach wieder decodieren, da eine Besonderheit des Huffman Codes darin besteht, dass kein Codewort der Anfang eines anderen Codewortes ist.
Der Nachteil beim normalen Huffman Code besteht darin, dass der Aufbau dieser Codewörter mit unterschiedlichen Ergebnissen durchgeführt werden kann und somit nicht eindeutig ist. Hierzu müssten umfangreiche Regeln aufgestellt werden. Der kanonische Huffman Code dagegen verwendet eine eindeutige Codierung und belegt den Schwerpunkt dieser Projektarbeit.