seeseekey.net - Invictus Deus Ex Machina

Wenn man JSON-Dateien erzeugt, kann es passieren das man bei der Erzeugung Fehler erzeugt. Zur Überprüfung solcher JSON-Daten kann man einen Validator nutzen, wie ihn jsonlint.com zur Verfügung stellt. Dort wird der JSON-Quelltext eingefügt und kann anschließend problemlos validiert werden. Bei Fehlern in der JSON-Datei, wird angezeigt wo diese entstehen und können damit beseitigt werden.

jsonlint.com

jsonlint.com

Der Quelltext von JSONLint kann auf GitHub bezogen werden. Er ist dabei unter der MIT-Lizenz lizenziert und damit freie Software.

Wenn man eine Präsentation mit einem Office-Programm seiner Wahl erstellt, so führt das meist dazu das man sich die ersten Stunden Gedanken über das Design der Präsentation macht, anstatt sich um die Inhalte zu kümmern. Das war einer der Gründe, warum ich für Präsentationen nur noch Frameworks nutzte, welche im Browser laufen und ihren Fokus auf den Inhalt legen.

Eine Präsentation welche mittels Reveal realisiert wurde

Eine Präsentation welche mittels Reveal realisiert wurde

Eines dieser Frameworks ist reveal.js. Besonders schätze ich an reveal.js die Möglichkeit den eigentlichen Inhalt der Präsentation in Markdown-Textdateien auszulagern. So kann sich voll und ganz auf den Inhalt konzentrieren. Das Framework unterstützt dabei alles was man für eine Präsentation benötigt wie Tabellen, Fragmente, Auflistungen und ähnliches. Der Quelltext ist auf GitHub zu finden. Lizenziert ist reveal.js unter der MIT-Lizenz und damit freie Software. Eine Demo gibt es auf der entsprechenden Demo-Seite des Autors.

Unit-Test sind in der Softwareentwicklung ein wichtiger Teil der Entwicklung. Problematisch wird es wenn ein solcher Unit-Test fehlschlägt. Dann muss der Grund dafür gesucht und beseitigt werden. Unit-Test werden bei vielen Continuous-Integration-Systemen beim Build-Vorgang automatisch ausgeführt. Der Entwickler wird vom System über entsprechende Fehler bei der Ausführung informiert und kann handeln.

github.com/hmlb/phpunit-vw

github.com/hmlb/phpunit-vw

Wem das zu anstrengend ist, der kann sich mit der Phpunit VW Extension behelfen. Sobald die Unit-Test über ein Continuous-Integration-System ausgeführt werden, werden sie dank der Phpunit VW Extension automatisch durchgewunken. Bei der normalen Entwicklung schlagen die Tests wie gewohnt fehl – ein Prüfstandmodus für Unit-Tests.

Das originale Starcraft hat mittlerweile über 15 Jahre auf dem Buckel. Dies hielt den Entwickler Ryuta nicht davon ab eine Umsetzung von StarCraft für den Browser mittels HTML5 und Javascript zu entwickeln. Die Umsetzung ist dabei nicht mit einem fertigen Spiel zu verwechseln, sondern eher eine Tech-Demo, welche allerdings nicht minder beindruckend ist. So können die Einheiten gesteuert werden und andere Einheiten angegriffen werden – auch an die Soundausgabe wurde gedacht.

StarCraft im Browser

StarCraft im Browser

Lizenziert ist die Engine – dessen Quelltext auf GitHub zu finden ist – unter MIT-Lizenz und damit freie Software. Ausprobieren kann man die Engine unter gloomyson.github.io/StarCraft/.

Das Internet Archive betreibt mit der Wayback Machine ein Archiv des Web. In diesem Archiv kann man sich frühere Version einer Webseite ansehen. Problematisch wird es wenn man einen Snapshot einer bestimmten Version einer Webseite benötigt. Bei größeren Webseiten ist der manuelle Download zeitaufwending. Mit dem Wayback Machine Downloader – einem in Ruby geschriebenen Tool – ist es möglich einen solchen Snapshot automatisiert herunterzuladen. Dazu muss das Tool im ersten Schritt über das Terminal installiert werden:

gem install wayback_machine_downloader

Lauffähig ist der Downloader dabei unter Linux, Mac OS X und Windows. Nach der Installation kann ein Snapshot mittels:

wayback_machine_downloader http://example.com --timestamp 20060716231334

heruntergeladen werden. Je nach Größe der Webseite kann der Vorgang dabei einige Stunden dauern. Der Quelltext ist auf GitHub zu finden. Lizenziert ist der Wayback Machine Downloader unter der MIT-Lizenz und damit freie Software.

Ein Git-Repository kann aus vielen Branches bestehen welche ab und an mit dem Hauptentwicklungszweig gemergt werden. Dies führt dazu das man die Geschichte eines solchen Repositories in Form eines Graphen darstellen kann. Ein Tool um sich sein Repository in Form eines Graphen anzeigen zu lassen ist dabei SeeGit.

SeeGit mit einem geöffneten Repository

SeeGit mit einem geöffneten Repository

Problematisch wird die Bedienung von SeeGit bei größeren Repositories. Dort nimmt der Ladevorgang sehr lange in Anspruch, während der Graph aufgebaut wird. Lizenziert ist SeeGit unter der MIT-Lizenz und damit freie Software – der Quelltext ist auf GitHub zu finden. SeeGit läuft auf Grund einiger Abhängigkeiten zur Windows-API leider nur unter Windows.

Spätestens mit verteilten Systemen wie Git, ist bei vielen der Erklärungsbedarf gestiegen. So werden in Firmen Richtlinien definiert, wie nun gebrancht und gemergt werden darf. Da eine grafische Visualisierung solcher Prozesse wesentlich eingängiger ist, gibt es Frameworks und Bibliotheken wie Gitgraph.js. Dabei handelt es sich um eine JavaScript-Bibliothek um solche Graphen schnell und einfach zu erzeugen und diese auf Webseiten einzubinden.

gitgraphjs.com

gitgraphjs.com

Lizenziert ist der Quelltext unter der MIT-Lizenz und damit freie Software. Der Quelltext kann über GitHub bezogen werden. Die offizielle Seite des Projektes ist unter gitgraphjs.com zu finden.

Wer den Weltraum betrachten möchte, kann sich ein Teleskop kaufen – wem das zu kostenintensiv ist, der kann es mit dem Wordwide Telescope von Microsoft probieren. Dabei handelt es sich um eine Windows- und Webanwendung, in welcher unterschiedliche Teleskopaufnahmen miteinander kombiniert und welche wie durch ein virtuelles Teleskop betrachtet werden können.

worldwidetelescope.org

worldwidetelescope.org

Microsoft hat die Anwendung unter der MIT-Lizenz freigegeben, damit ist das Wordwide Telescope freie Software. Der Quelltext für das ist auf GitHub zu finden – die offizielle Seite des Projektes unter worldwidetelescope.org.

Bei vielen Webapplikationen ist die Internationalisierung, also die Anpassung an unterschiedliche Sprachen, ein wichtiges Kriterium. Damit man bei diesem Thema nicht alleine gelassen wird, informiert die Webseite FormatJS darüber und zeigt Wege die eigene Webapplikation internationalisieren.

formatjs.io

formatjs.io

Die dabei verwendeten Bibliotheken sind unter freien Lizenzen wie der BSD- und MIT Lizenz lizenziert und auf GitHub zu finden.

Im Rahmen des Neubrandenburger Hackerspaces und eines kürzlichen Standes auf dem Marktplatz, waren wir auf der Suche nach einigen Dingen, die man auf diesem Stand ausstellen konnte. Nachdem wir im E5 mit einigen Arduinos und Servomotoren experimentiert hatten, kam mir die Idee zu einem automatischen Xylophon.

Das automatische Xylophon

Das automatische Xylophon

Die Idee wurde anschließend in den nächsten Tagen umgesetzt. Realisiert wurde das ganze mit einem Arduino (und einem Bluetooth-Shield zum drahtlosen flashen), einer Tilt-Pan-Vorrichtung und einem Joystick. Mit Hilfe des Joysticks konnte die Konstruktion auch von Hand bedient werden, was auf dem Stand beliebter war als der automatische Modus. Der Quelltext zum Projekt ist auf GitHub zu finden.. Das Projekt ist unter der MIT-Lizenz lizenziert und somit freie Software. Informationen zum Nachbau sind im Entitäts-Wiki zu finden.