Raspberry Pi 2

von Christoph

Seit zwei Jahren verrichtet ein Raspberry Pi unter meinem Fernseher seinen Dienst. Der Kleinstcomputer mit 700 MHz Prozessor verbraucht in etwa soviel Strom wie der Fernseher selbst im Standby-Betrieb, also fast nichts.

Anfang Februar erschien nun die zweite Generation mit doppeltem RAM und Vierkernprozessor à 1 Ghz bei ähnlich geringem Stromverbrauch. Was denkt sich der Nerd da? Genau! Muss ich haben. Offiziell gibt es den Pi2 für 35 Dollar. Doch um den Preis tatsächlich zu bekommen, muss man wahrscheinlich aus dem Land der Tapferen und Freien kommen. In Deutschland schwanken die Preise stark zwischen 38 und 60 Euro. Ich habe meinen schließlich bei Reichelt Elektronik bestellt. Die Tastatur, Festplatte und WLAN-Adapter konnte ich vom alten Pi übernehmen, ich habe tatsächlich nur die Platine und SD-Karte ausgetauscht.

Am Wochenende hatte ich den Spaß, das System komplett aufzusetzen. Der Pi2 hängt bei mir permanent im WLAN und erlaubt via nginx Webserver Zugriff auf die angeschlossene Festplatte (macht ihn das eigentlich zum NAS?). Außerdem lauert ein SSH-Server auf eingehende Verbindungen inbesondere für Git-Uploads (Versionskontrollsystem für Softwareprojekte). Das Mediacenter XBMC heißt jetzt Kodi und ließ sich recht komfortabel installieren. Mit vier Kernen rennt das jetzt auch in Full-HD richtig schnell. Gleiches gilt für die Emulationstation. Super Nintendo und Gameboy Color konnte der alte Pi problemlos nachahmen, aber bei Playstation 1 fing er an zu stocken. Das ist beim Zweier nun keine Herausforderung mehr. Tekken 3 läuft bei ihm :).

Dann wollte ich die neu gewonnene Stärke in der Hardware noch weiter ausnutzen und habe ganz kühn Owncloud in der Version 8.0 installiert. Sieht soweit ganz gut aus, aber ist in der Basisversion recht einfach. Dateien hochladen gut und schön, aber ich kann auch (s)ftp benutzen. Also habe ich dazu noch eine Musik-App installiert, mit der ich meine Audiofiles direkt in der Owncloud-Browseranwendung abspielen kann. Funktioniert aber nicht. Lädt nichtmal.

Ich habe kurz untersucht woran das liegt. Der Player will darstellen, was ich in bestimmten Verzeichnissen hinterlegt habe. Dazu fragt er in der Master-Datenbank zunächst mal nach der Liste der Dateinamen. Mit dieser Liste geht er dann in seinen Metadaten-Cache, allerdings auf dem ungünstigsten Weg, den man sich denken kann: SELECT * FROM meta WHERE filename IN (?, ?, ?, ...). Ja, die PHP-Gurus konstruieren allen Ernstes eine Aufzählung, die alle meine 2500 Dateinamen in je einen SQL-Parameter verpackt. Sqlite erlaubt maximal 1000 - und das ist schon bescheuert viel. Wie kommt man darauf, solche Queries zu bauen? Also echt, ich bin ein wenig enttäuscht, dass dies das Aushängeschild der Open Source Cloud-Szene sein soll.

Sonst ist der Raspberry Pi 2 ein tolles Spielzeug.

Announcing Geogen 4.0

von Christoph

Ich schrieb es bereits zum zehnjährigen von Geogen, dass ich mit der vierten Generation der Namenskartierungssoftware experimentiere. Vor drei Monaten war das hauptsächlich aus Spaß und ich wusste noch nicht genau, wo es hinführen sollte. Jetzt ist es immer noch Spaß, aber ich weiß, was das werden soll.

Die Version 4.0 ist öffentlich zugänglich. Sie ist Namenskartierung im modernen Gewand, mit besserer Übersicht und erhöhter Performance. Ich bin in den letzten Monaten ein Fan von Continuous Delivery geworden, d.h. ich habe kleine Features und Verbesserungen sofort nach bestandenen Tests auf das Live-System ausgerollt. Am letzten Wochenende war das zum Beispiel eine coole "Game of Thrones"-Animation der 3D-Karte. Womit ich auch schon bei den Details von Geogen 4.0 bin.

Die Software ist eine komplette Neuentwicklung. Ich habe wirklich keine einzige Codezeile der Vorversionen übernommen. Sie setzt auf aktuelle Webtechnologien und hier jeweils auf etablierte Hilfsbibliotheken. Das Grundgerüst ist HTML5 mit jQuery (was sonst?). Dazu kommen WebGL via three.js, Canvas und SVG via D3.js. Im Backend tummeln sich illustre Gäste wie MS SQL Server Compact, Json.NET und ZXing.Net.

Geogen 4.0 gibt es in zwei Fassungen:

Es gibt derzeit keine Bestrebungen Geogen 3.1 abzuschalten. Ich entwickle aber dort keine neuen Features mehr und deaktiviere höchstens Gadgets, die vor Jahren einfach schlecht implementiert wurden.

Update 07.03.2015: Ich habe begonnen, die neue Engine international parametrisierbar zu machen. Die Geogen-Konsole funktioniert jetzt auch für Österreich: http://geogen-at.stoepel.net/console.html und phonetische Namensgraphen gibt es ebenso.

Jahresrückblick 2014

von Christoph

Ende des Jahres fängt man meist an, rückblickend zu bewerten. Da mach ich auch mal mit! Ich habe mir dieses Jahr keinen Eimer mit eisgewürfeltem Wasser über den Kopf geschüttet sondern ganz unspektakulär Hobbies fortgesetzt, ausgebaut und wiederentdeckt.

Computerfreaking: Ja, mein Beruf ist auch mein Hobby. Letzteres war zuerst da. In 2014 war mein hobbymäßiger Output nicht sehr hoch. Neben vielen Literaturstudien, Theorie und Code-Reviews kamen zwei größere Projekte heraus: MusicDb und Geogen 4.0. Ich hatte aber auch "klassischen" Spaß am Computer. Die besten Spiele auf meinem PC waren Wolfenstein The New Order (Bethesda Softworks) und The Walking Dead Season 1 (Telltale Games).

Fotographie: Es gab komplett neues Equipment auf semiprofessionellem Niveau (bilde ich mir zumindest ein). Besonders nützlich war das auf Reisen nach Boston in den USA und in die Blaubeeren sowie für Zeitrafferaufnahmen. In 2015 will ich es weiter ausbauen, sobald das Wetter wieder angenehmer ist. Mir schwebt da schon was vor :).

Kochen und Backen: Gutes Essen ist ja schon was wert! Noch mehr, wenn man es selber macht. 2014 waren dabei: Lasagne, Pizza, Grillsteaks, Rosmarinkartoffeln, Gemüsepfanne pour homme und Walnuss-Bananen-Muffins.

Sport: Oh ja ganz neu! Beziehungsweise eigentlich ganz alt, denn ich war bis vor 10 Jahren schon einmal ambitionierter Läufer. Ich habe dieses Hobby dieses Jahr wiederbelebt, genauer im April. Leider hatte das ziemlich negative Auswirkungen auf mein Gewicht - oder wie ich es nenne: Down with the Christoph!

Kann's nicht lassen

von Christoph

Ich kann es einfach nicht lassen. Wenn da ein Flugzeug ist, muss ich mitfliegen. Wenn da Wasser ist, muss ich ins Boot. Wenn es Filmmaterial gibt, muss ich es zusammenschneiden. Hier nun aber wirklich der letzte Blogbeitrag zu meinem USA-Aufenthalt!

Vorsicht vor dem Foto

von Christoph

Eine Anekdote aus dem Land der Freien und der Heimat der Tapferen muss ich unbedingt niederschreiben. Also nicht ganz exakt aus dem Land, sondern aus dem Flughafen. Aber das ist noch Hoheitsgebiet. Die Einreise kostete mich gerade mal zwei Stunden, ich hatte die ESTA-Einreisegenehmigung bereits besorgt, frage mich allerdings immer noch (1) wie man die $14 "Bearbeitungsgebühr" per Internet an die Homeland Security bezahlt wenn man keine Kreditkarte hat und (2) ob Amerikaner ähnliches Eintrittsgeld für Europa bezahlen müssen.

Naja, egal. Es geht um die Abreise. Die Erfahrungen der Amerikaner mit Flugzeugen sind ja nicht die allerbesten und die Medien tragen ihren bescheidenen Teil dazu bei, dass das auch tief im kollektiven Gedächtnis verankert bleibt. Da ich keinen Bart trage und meine Hautfarbe sehr europäisch ist, kam ich problemlos durch die TSA-Kontrollen. Überraschenderweise hatte ich an keiner meiner Hände (deren Fingerabrücke mir bei der Einreise abgenommen wurden und die nun immernoch in den Staaten liegen, danke CDU!) Spuren von Sprengstoff. Der Maine-Lobster, von dem ich mich die Tage zuvor wie mit einem Grundnahrungsmittel ernährt habe, war also sauber.

Nach der Kontrolle noch schnell ein Foto von dem Durchlass machen und dafür das Nexus-7 Tablet raus. Auf einmal steht ein großer Afroamerikaner in zivil neben mir und schreit: Tie Ess Äii, TIE ESS ÄII. Und noch einmal TIE ESS ÄII. Oh Gott! Was war los? Ein muslimischer Terrorist? Nein, ich war das. Ich habe ein Foto gemacht. Ich sehe meine gemütliche Heimreise schon davonwehen und mich mit einem Bombenkontrollstab im Po bei einem schönen Brett Wasser in einem kubanischen Verhörzimmer hängen. Die TSA kommt auch prompt. What's going on? This guy is taking photos!1!! What? Why are you taking photos? I just wanna show this at home. Here look at this. Is it forbidden to take photos?

No.

Mit zittrigem Zeigefinger deutet der patriotische Farbige weiter auf mein Tablet, als wäre es das Zeichen Satans höchstpersönlich oder eine Heavy-Metal-CD. There! He took photos! Sir, it's not forbidden to take photos in general. Only details of our equipment are forbidden. Puh. Welch Freiheit! Die TSA zieht sich zurück. Der Einheimische neben mir nun etwas erleichtert: But watch what you are taking photos of! - Sure Sir. Und in Gedanken: Hope this photo will not explode when i'm right above the Bundestag.

Bob around the World

von Christoph

Ich mache mir auf Reisen seit einiger Zeit den Gag, Bob den Baumeister als Miniatur mitzunehmen und in typischen Touristenfotos zu verewigen. Eine Art von Spießigkeit ohne selbst der Spießer zu sein :). Hier die Ausbeute vom letzten Halloween in den USA.

10 Jahre Geogen

von Christoph

Ich habe mal die Backup-Festplatten und alten Quelltexte durchstöbert und dabei fiel mir auf: Geogen ist nun schon 10 Jahre alt.

Es fing in den Semesterferien 2004 mit einer normalen Desktop-Anwendung an, mit der ich mir hauptsächlich selbst Landkarten für Familiennamen erstellen wollte. Schnell stellte sich heraus, dass auch andere diesen Wunsch hatten. Es gab eine Lücke zu füllen, die Anzahl der Downloads war überwältigend. Einiges am Programm war noch nicht rund, weil mir als Student damals schlichtweg die Erfahrung fehlte. Die Lokalisierungsdatenbank als MS Access auszuliefern war sicherlich ein Fehler und brachte unzählige Support-Anfragen. Der Einsatz des damals noch sehr neuen .NET-Frameworks in der Version 1.1 war zumindest ambitioniert.

Ich doktorte einige Male an der Architektur der Software, stieg auf Sqlite zur Datenhaltung um, aber als Desktop-Anwendung war Geogen einfach nicht zu warten. Das Ding musste auf den Server!

Version 2 schrieb ich Ende 2005 komplett neu, jedoch immer noch in C# (ASP.NET 2.0). Auf meinem Server hatte ich das Deployment schließlich selbst im Griff und ab da lief es weitestgehend problemlos. Eine größere Überarbeitung des Layouts brachte Geogen 3 und danach folgten kleinere Wartungs-Releases, aber keine größeren Änderungen im Backend mehr. Es funktionierte einfach.

Eher aus Spaß habe ich in den letzen Wochen mit einem neuen Kern experimentiert. Mit nun 10 Jahren Erfahrung in Geogen und fast doppelt soviel in Software-Entwicklung wollte ich sehen, was so geht. Ergebnis: 10-15 mal schneller geht. Nun, das ist ein guter Wert, aber ich habe selten Performance-Probleme. Es gibt also keine Not für ein Upgrade. Interessanter ist die neue Technologie, zeitgemäße Architektur, neuer Spaß. Vielleicht gibt es auf dieser Basis mal ein Geogen 4.0. Solange bleibt die Subdomain Entwicklerspielwiese. Oder um einen bekannten Mann aus der Informatik zu zitieren: Just for fun.

Banana Walnut Muffins

von Christoph

Versprochen ist versprochen und wird auch nicht gebrochen :). Hier nun bewegte Bilder der Spiegelreflex. Aber nicht irgendwelche mit der Videofunktion! Natürlich mit Impulsgeber, eingestellt auf 3 Sekunden und zusammengefügt zu einem Zeitraffer mit ffmpeg.

Es geht um Bananen-Walnuss-Muffins nach einem Rezept von Cynthia Barcomi (natürlich!). In der Zutatenübersicht im Video fehlen Nelken, aber ich wollte es nicht nochmal komplett neu timen und rendern, nachdem es bereits fertig war. Einfach dazudenken.