Offene Gesetze

Nachdem Gesetze in Deutschland verabschiedet wurden, werden sie im Bundesgesetzblatt veröffentlicht und dadurch verbindlich. Geregelt wird dies im Artikel 82 des Grundgesetzes. Dort heißt es:

Die nach den Vorschriften dieses Grundgesetzes zustande gekommenen Gesetze werden vom Bundespräsidenten nach Gegenzeichnung ausgefertigt und im Bundesgesetzblatte verkündet. Rechtsverordnungen werden von der Stelle, die sie erläßt, ausgefertigt und vorbehaltlich anderweitiger gesetzlicher Regelung im Bundesgesetzblatte verkündet.

Problematisch daran ist dass der Bundesanzeiger-Verlag, welcher für die Veröffentlichung zuständig ist, seit 2006 privatisiert wurde. Mittlerweile ist der Verlag im Besitz der Dumont-Mediengruppe. Für ein entsprechendes Abo, ist es möglich auf die Bestände der Bundesgesetzblätter zuzugreifen. Eigentlich ein Unding, bei Gesetzten an die sich die Bevölkerung halten soll. Die Bundesgesetzblätter sind als amtliche Drucksachen nicht schützenswert. Stattdessen wird seitens des Verlages mit dem Datenbankschutz argumentiert. Da die Dokumente zu einer Datenbank zusammengefasst wurden; ist dies ein Werk, welches wieder Schutzrechte genießen soll.

Das Portal Offene Gesetze

Alles in allem eine fragwürdige Konstruktion, mit der das Portal Offene Gesetze, zu finden unter offenegesetze.de aufräumen will. Dort findet man sämtliche Bundesgesetzblätter seit 1949. Die Bundesgesetzblätter können durchsucht, gedruckt oder als Ganzes heruntergeladen werden. Daneben wird eine API bereitgestellt, mit welcher ebenfalls auf die Dokumente zugegriffen werden kann. Zu Beachten ist dass die Bundesgesetzblätter keine vollständigen Gesetze (außer bei der erstmaligen Veröffentlichung des Gesetztes), sondern die jeweiligen Änderungen enthalten.

Betrieben wird das Portal von der Open Knowledge Foundation Deutschland. Dabei handelt es sich um einen offiziellen Chapter der Open Knowledge Foundation. Die verwendete Software ist auf GitHub zu finden, unter der MIT-Lizenz lizenziert und damit freie Software.

Thymeleaf ohne Servlet in Standalone-Anwendungen nutzen

Thymeleaf ist eine Template Engine, welche für die Nutzung mittels Java (oder anderer JVM-Sprachen) gedacht ist. Über diese können entsprechende Templates geschrieben werden, anschließend gefüllt und genutzt werden. Thymeleaf verfügt über eine Dokumentation, allerdings fehlt mir dort ein minimales Beispiel für Anwendungen, welche sich nicht im Web (sogenannte non-web environments) abspielen.

thymeleaf.org

Für ein minimales Beispiel wird natürlich ein Template benötigt. Dieses wird hier als HTML definiert:

<!DOCTYPE html>
<html>
<head>
    <title th:text="${title}"></title>
</head>
<body>
</body>
</html>

Interessant ist hierbei das Feld title, welches wir mit einem Titel füllen wollen. Im Java-Quellcode sieht die Implementation wie folgt aus:

ClassLoaderTemplateResolver resolver = new ClassLoaderTemplateResolver();
resolver.setPrefix("templates/");
resolver.setTemplateMode("HTML5");
resolver.setSuffix(".html");

TemplateEngine templateEngine = new TemplateEngine();
templateEngine.setTemplateResolver(resolver);

Context context = new Context(Locale.GERMAN);
context.setVariable("title", "Ein minimales Beispiel");

final String content = templateEngine.process("header.html", context);

Im ersten Schritt wird mit dem ClassLoaderTemplateResolver ein Resolver definiert, welcher schlussendlich dafür sorgt die Templates aus den Ressourcen (im resources-Ordner) bezogen werden. Daneben wird der Template-Modus eingestellt. Neben dem Modus HTML5 unterstützt Thymeleaf wie z.B. TEXT oder JAVASCRIPT. Danach wird die Template Engine erstellt und ihr der Resolver zugewiesen. Die Variablen, welche in diesem Fall im Template genutzt werden, werden über den Context definiert und gesetzt. Anschließend wird das Ganze an die process-Methode der Template Engine übergeben. Als Ergebnis erhalten wir im String content folgenden Inhalt:

<!DOCTYPE html>
<html>
<head>
    <title">Ein minimales Beispiel</title>
</head>
<body>
</body>
</html>

Damit wurde Thymeleaf in einer minimalen Variante angewendet. Die offizielle Seite der Template Engine ist unter thymeleaf.org zu finden. Lizenziert ist Thymeleaf unter der Apache License in der Version 2.0 und damit freie Software.

Archiv für grafische Interfaces

Im Laufe der letzten Jahre und Jahrzehnte haben wir einige Generationen von Betriebssystemen und ihrer unterschiedlichen grafischen Interfaces erlebt. Damit auch jüngere Generationen sich die alten grafischen Interfaces anschauen können, gibt es die Webseite Guidebook.

Die Auswahl der GUIs unter guidebookgallery.org

Auf der Webseite, welche unter guidebookgallery.org zu erreichen ist, finden sich Screenshots der unterschiedlichen Oberflächen und dazugehöriger Materialien. Die Bandbreite reicht von alltäglichen Betriebssystemen wie Windows oder macOS zu Systemen mit Exotenstatus wie IRIX oder BeOS. Neben Screenshots findet man auf der Seite Videos, Poster und andere Materialien rund um grafischen Interfaces aus der Vergangenheit.

Xbox-Controller aktualisieren

Wer einen Xbox-Controller sein Eigen nennt und die Firmware des Controllers aktualisieren möchte, benötigt hierfür die App Xbox Zubehör.

Xbox Zubehör
Preis: Kostenlos

Die App muss über den Microsoft Store installiert werden. Nach der Installation sollte die App gestartet und der Xbox-Controller angeschlossen werden.

Die Xbox Zubehör App

Wenn die Firmware auf dem Controller nicht mehr die aktuellste ist, kann anschließend der Update-Vorgang über die App gestartet werden.

Eigene Steam ID ermitteln

Neben dem Benutzernamen gibt es unter Steam eine eindeutige ID. Möchte man diese ID ermitteln, so führt der Weg über den Steam-Client. Hier kann in den Einstellungen unter Oberfläche der Punkt Steam URL-Adresszeile anzeigen wenn verfügbar ausgewählt werden.

Die Einstellungen von Steam

Anschließend können die Einstellungen geschlossen werden und auf den Nutzernamen in der rechten oberen Ecke des Steam-Clients geklickt werden. Dort wird nun der Punkt Mein Profil anzeigen ausgewählt. Es öffnet sich ein Fenster in dem sich in der Adresszeile eine URL nach dem Schema:

https://steamcommunity.com/profiles/1234567890/

findet. Bei der Nummer am Ende handelt es sich um die Steam ID des eigenen Profils.