Mit der java.time-API die UTC ermitteln

Seit Java 8 gibt es durch den JSR-310 eine neue API für Daten- und Zeitoperationen. Möchte man in dieser API die aktuelle Zeit ermitteln so würde dies so aussehen:

LocalDateTime now = LocalDateTime.now();

Dadurch erhält man die lokale Zeit des Rechners auf dem dieser Codeschnipsel ausgeführt wird. Damit ist das Problem auch schon beschrieben; man erhält nur die lokale Zeit. Wenn mehrere Systeme zusammen arbeiten soll, kann dies zu einem Problem führen. Natürlich könnte man ZonedDateTime nutzen:

ZonedDateTime now = ZonedDateTime.now();

Damit bleibt die Information über die verwendete Zeitzone erhalten. Benötigt man nun z.B. die UTC, also die koordinierte Weltzeit, so könnte man die Zeitdifferenz mittels:

now.getOffset()

ermitteln und diesen Wert für die Berechnung der UTC nutzen. Einfacher funktioniert es allerdings über den kleinen Umweg mit der Clock-Klasse:

LocalDateTime now = LocalDateTime.now(Clock.systemUTC());

Damit befindet sich in der Variable now, das aktuelle Datum und die aktuelle Uhrzeit als UTC.

BRUH.IO

Das Genre des Battle Royal ist spätestens seit dem Erfolg von Playerunknown’s Battlegrounds kurz PUBG den meisten Leuten ein Begriff. Mit BRUH.IO wird das Spielprinzip in die 2D-Welt übertragen. Auf einer Karte kämpft man gegen die anderen Spieler, bis am Ende nur noch Spieler auf dem Spielfeld zu finden ist. Im Laufe einer fünf bis sieben Minuten langen Partie, wird man von einer Gaswolke, welche sich ausbreitet, gezwungen sich immer mehr in Richtung Zentrum zu bewegen. Bis auf gelegentliche Lags, lässt sich das Spiel für eine Runde zwischendurch problemlos nutzen. Gesteuert wird das Spiel mit der Maus und der klassischen WASD-Belegung. Möchte man die Erfolge dauerhaft speichern, bietet es sich an einen Account für das Spiel anzulegen.

bruh.io

Entwickelt wurde BRUH.IO von Bitfox Games. Bei dem Spiel handelt es sich um das Debüt von Bitfox Games. Zu finden ist das Spiel unter bruh.io, wo es kostenlos gespielt werden kann. Die Macher finanzieren sich im Moment über unaufdringliche Werbung im Menü. Neben BRUH.IO gibt es mit Surviv.io noch eine weitere Übertragung des Spielprinzipes in zwei Dimensionen. Im Gegensatz zu BRUH.IO wirkt Surviv.io allerdings sehr abstrakt.

Schach im Browser genießen

Vor knapp zwei Jahren stelle ich eine freie Implementierung des Schachspiels für den Browser vor. Neben dieser 2D-Variante existieren auch wunderschöne 3D-Varianten. Eine Implementation dieser Varianten hört auf den Namen Chess3D. Die Darstellung der 3D-Szene erfolgt dort per WebGL. Neben einigen hilfreichen Funktionen wie einer Undo-Funktionalität können Spiele im PGN-Format gespeichert und wieder geladen werden.

Chess3D im Browser

Mit Chess3D können Schachspiele gegen den Computer bestritten werden. Für den Gegner wird auf Garbochess-JS von Gary Linscott zurückgegriffen. Der Quelltext von Chess3D ist auf GitHub zu finden. Er ist unter der GPL3 lizenziert und damit freie Software.

Markdown-Editor für Integration in eigene Webprojekte

Für ein kleines Webprojekt war ich auf der Suche nach einem Markdown-Editor. Fündig geworden bin ich bei SimpleMDE. Technisch gesehen setzt SimpleMDE auf dem bestehenden Editor CodeMirror auf und erweitert diesen um Markdown-Funktionalitäten, Geschrieben ist der Editor in JavaScript und bietet eine Reihe von Features. Dies fängt an bei der Unterstützung der gewöhnlichen Formatierungen (z.B. Fett und Kursiv) an und geht weiter über Listen und Bildunterstützung. Daneben beherrscht SimpleMDE Autosaving, so das Änderungen auf Wunsch automatisch gesichert werden.

SimpleMDE in Aktion

Leider scheint die Entwicklung in den letzten Monaten etwas eingeschlafen sein. So sind derzeit 17 Pull Request offen, welche auf ihren Merge warten. Der letzte Commit, im development-Branch des Projektes, ist vom Mai 2017. Der Quelltext der Editors ist auf GitHub zu finden. Lizenziert ist der Quelltext unter der MIT-Lizenz und damit freie Software. Die offizielle Projektseite ist simplemde.com.

Piwik ist nun Matomo

Bis zum ersten April dauert es noch einige Tage, so das man davon ausgehen darf, dass der Blogeintrag des Piwik-Teams ernst gemeint ist. Piwik hört in Zukunft auf den Namen Matomo. Bei Piwik handelt es sich um eine Software zur Webanalyse, ähnlich dem bekannten Google Analytics. Begründet wird dies mit einem Zitat von Matthieu Aubry, seines Zeichen der Entwickler von Piwik:

After an epic 10 year journey creating and perfecting the best open digital analytics solution, we felt it was a good time to refresh our brand to reflect how far we have come and to reaffirm our vision: To create, as a community, the leading international open source digital analytics platform, that gives every user full control of their data.

Einer der Gründe für die Umbenennung ist im Namens- bzw. Markenrecht zu sehen. Dafür wurde ein kurzer, leicht zu merkender Name gesucht und am Ende kam Matomo heraus. Matomo bedeutet im japanischen Ehrlichkeit, was nicht unbedingt die schlechteste Bedeutung für das Projekt ist.

Unter anderem mit einem Mailing wurde der Namenswechsel angekündigt

Neben dem Namen soll sich, laut der veröffentlichten FAQ, nichts weiter am Projekt ändern. Matomo wird weiterhin freie Software bleiben. Die neue Heimat des Projektes ist unter matomo.org zu finden. Ebenfalls umgezogen sind die GitHub-Repositories, der Twitter-Account und einige andere Social Media Accounts.