Raspberry Pi 2

Sonntag, 22 Februar 2015 08:02 by 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

Montag, 9 Februar 2015 07:02 by 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.