Bachelorarbeit: Leute erkennen
Soeben ist mein Bachelor-Informatikstudium an der TU Darmstadt zuende gegangen. Der letzte offizielle Termin war die Abschlusspräsentation. Normalerweise schreibe ich hier wenig über mich selbst, für heute mach ich davon gerne eine Ausnahme.
Das Thema der im TK-Bereich und bei T-Labs angesiedelten Arbeit war "2-Factor biometric authentication using body shape and voice". Was meiner Meinung nach einfach toll klingt - und sogar zutrifft. Denn was ich gemacht habe, ist mit einer Kinect unter Linux Leute zu erkennen. Zum einen mit Sprechererkennung per Mistral, zum anderen mit einer Körperformerkennung mithilfe des Skeletts von NITE. Also ungefähr so:
Die Abschlusspräsentation gibt einen Überblick, die Bachelorarbeit erklärt wesentlich mehr. Kern war die Körperformerkennung und die basierte auf diesem Schema:
Den Prototyp habe ich auf github hochgeladen, er sieht so aus:
Es lief alles recht gut, die ganze Arbeit über. Dass ausgerechnet bei der Abschlussdemonstration die Körperformerkennung scheiterte (die sonst ziemlich stabil war), hatte ich fast erwartet. Das schieb ich auf den Vorführeffekt und wurde mir sicher verziehen.
Nächste Station ist Siegen, dort versuch ich mich am Master in Human Computer Interaction. Vielleicht sieht man sich ja dort.
Existenz
Dieser Artikel zeichnet im Kleinen das Bild einer großen Geschichte. Griechenland kämpft nicht um lächerliche Papstbesuche mit den zu erwartenden absurden Schlagzeilen, in Griechenland kämpft ein Staat um seine Existenz, scheint nur ein deus ex machina den Kampf beenden zu können. Ich bezweifel, dass dieses Ende die parlamentarische Demokratie dort bewahren wird. Aber wer weiß schon, was dort passieren wird.
Symphonic Legends
Legend of Zelda mit Orchester. Das eingebettete Video ist das Finale (das fünfte der Youtubevideos), ich fand es am eindrucksvollsten. In der ersten Hälfte der des Konzerts wurde auch Musik anderer Nintendo-Spiele gespielt. Leider fehlt Terranigma.
Auf Umwegen via dee.
Troja
Troja wird gerade fertig. Es ist fertig geschrieben, Dirk hat es auf einem Server laufen, der erste Test schien erfolgreich. Dabei ist das die zweite Version, die erste war ein node.js-Server, der aber nur auf meinem System zu laufen schien (jetzt ist es ein socat-Bash-Skript).
Es fehlt noch der letzte Schliff, bessere Rückmeldungen nach den Aktionen, vielleicht mehr Adminaktionen, aber das Grundsystem steht.
Es gibt drei Aktionen, die vom neuen Import-Menü des Spamblock-Bayes-Plugins gestartet werden können:
Importieren
Aufgabe Trojas ist es ja, Spamdatenbanken per Klick importieren zu können. Das soll möglichst dezentral funktionieren, Troja ist nur der Vermittler. Mit der Funktion soll verhindert werden, dass Nutzer des Spamblock-Bayes-Plugins erstmal mit leerer Datenbank dastehen und lange brauchen, bis der Filter ordentlich funktioniert.
Nach einem Klick auf den "Importieren per Troja"-Button fragt das Plugin bei Troja nach. Troja schaut in seiner Datenbank nach einem eingetragenen Blog, wählt zufällig einen aus. Von diesem holt es einen RSA-verschlüsselten Key, entschlüsselt ihn, und sendet dann den Key und die Ziel-URL zum anfragenden Blog. Dieser kann nun mit dem Key bei dem anderen Blog die Spamdatenbank holen und sie einlernen.
Registrieren
Damit Troja nicht nur aus Dirks und meinem Blog besteht, kann sich jeder s9y-Blog dort eintragen. Das Plugin sendet nach einem Klick auf den Button die eigene URL an Troja, dann fragt Troja bei dieser URL nach, ob der Blog wirklich eingetragen werden soll.
Wichtig: Man muss sich nicht Registrieren, um Importieren zu können!
Austragen
Soll der Blog nicht mehr zum Ziel von Importanfragen werden, kann man sich natürlich einfach wieder austragen. Das Protokoll ist das gleiche.
Ich werde es hochladen, sobald ich von Dirk ein "Ja, funktioniert" höre :)
Verwirrung mit LXDE
Wenn ich selbst verwirrt vor dem PC sitze weil etwas nicht funktioniert wie erwartet, schau ich mir das inzwischen gerne ganz genau an. Oft sind das perfekte Beispiele für schlechte Usability. So auch dieses:
Im Rechnerpool gibt es seit diesem Semester neue PCs mit neuen Monitoren. Deren native Auflösung war die ganze Zeit nicht auswählbar, sie waren also nicht benutzbar. Jetzt hat sich jemand erbarmt und ein passendes neues Linux-Image zur Verfügung gestellt, das beim Boot ausgewählt werden kann. Die Auflösung funktioniert jetzt. Toll.
Es ist ein neueres Linux mit neuer Software und weniger Altlasten. IceWM fehlt. Statt um Aufnahme des Fenstermanagers zu bitten schaute ich mir die Alternativen an - ich bin eh bald weg, voraussichtlich. LXDE hatte ich ganz am Anfang seines Lebens schonmal getestet und es war damals vielversprechend. Es hat sogar ein ähnliches Design wie mein IceWM.
Und dann stand ich da mit der halbwegs hübschen Standard-Oberfläche (das Hintergrundbild ist mir zu arg) und hatte nur zwei Desktops. Erstmal ignoriert, zum Problem wurde das erst, als ich noch ein PDF korrigieren sollte. Denn dafür braucht es unbedingt vier Arbeitsflächen (man stelle sich Sheldon-artige Organisiertheit vor).
Rechtsklick auf den Pager. Keine Auswahl dafür. Rechtsklick auf den Desktop. Da gab es zwar ein Menü, aber keine Option für die Anzahl der virtuellen Desktops. Nur mein Interesse an dem Grund für diese Konfusion bewahrte mich davor, nun völlig kribbelig zu werden. Was gut so war, denn der Monitor ist sowieso festgeschraubt und daher nicht gut werfbar. Das Startmenü hat ein Menü für Einstellungen, dessen Einträge ich durchforstete, aber nichts sah passend aus.
Da erinnerte ich mich: Openbox. LXDE nutzt Openbox als Fenstermanager. Also kann das Openbox-Einstellungsprogramm, das so freundlich im Menü platziert ist und von mir bisher völlig - weil irrelevant erscheinend - ignoriert wurde, wohl weiterhelfen. So war es dann auch.
Großartiges Beispiel dafür, dass eine solche Platzierung von Einstellungsmöglichkeiten erst dann Sinn machen, wenn man das System im Detail kennt. In einem viel größeren Detail, als der normale Nutzer es kennen müssen sollte.
Natürlich ist mir klar, dass bei einem solchen Misch-Linux das Menü von LXDE wahrscheinlich besonders unaufgeräumt war und dies das Problem vergrößert hat. Und dass ich auch nicht weiß, ob es eine aktuelle LXDE-Version war. Aber es geht mir nicht um das Bashing, nicht um Schuld. Es ist meiner Meinung nach einfach ein tolles Beispiel für einen Gulf of Execution.
Cover
Diese Seite des Prospekts ist mir am Wochenende aufgefallen. Ich blieb an ihr richtig hängen. Vier Cover, immer Leute in Bewegung, die alle ihre Waffen hochhalten. Uncharted 2 verzichtet auf die Waffe, sie fällt und ist überklebt, aber wie bei den anderen Spielen beugt sich der Protagonist dynamisch durch das Bild. Kleine Abwandlungen des gleichen Motivs. Müssen Cover für Actionspiele so aussehen?
Scheinbar ja, denn es fiel mir wieder ein, als ich das Cover von Deus Ex 2 sah. Das folgte auch einem sich wiederholenden Muster, das dynamische Beugen ist die Weiterentwicklung.