Fernauslösung der Kamera am iPhone

Für einen Stop-And-Motion-Film war ich auf der Suche nach einer eleganten und einfachen Methode Fotos mit der vorinstallierten Kamera-App per Fernauslösung zu schießen. Für solche Fälle existieren unter anderem Bluetooth-Geräte, welche die Fernauslösung durchführen.

Über die Lautstärkeregelung können die Fotos geschossen werden

Allerdings geht es auch einfacher. Zu jedem iPhone werden ein Paar Airpods mitgeliefert. Wenn man diese an das iPhone anschließt, können diese ebenfalls für die Fernauslösung genutzt werden. Dazu muss bei geöffneter Kamera-App nur eine der beiden Tasten zur Regelung der Lautstärke gedrückt werden. Anschließend schießt die Kamera-App ein Foto ohne dass das iPhone angefasst werden muss.

Homebrew deinstallieren #2

Vor ein paar Jahren schrieb ich einen Artikel, in welchem beschrieben wurde wie der macOS Paketmanager Homebrew wieder deinstalliert werden konnte. Mittlerweile gibt es eine einfachere Methode zur Deinstallation von Homebrew, welche hier ebenfalls beschrieben werden soll.

Das Projekt des Homebrew (un)installer auf GitHub

Hintergrund ist die Erweiterung des Homebrew-Installationsprogramms. Im Terminal unter macOS kann Homebrew über den Homebrew (un)installer mittels:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

deinstalliert werden. Dabei werde alle über Homebrew installierten Applikationen ebenfalls entfernt.

PDFs aus Bildern mittels ImageMagick erstellen

Wenn man aus einer Reihe von Bildern eine PDF erzeugen möchte, so kann man hierfür unterschiedlichste Tools nutzen. Ich war auf der Suche nach einer Lösung die sowohl unter Linux als auch unter macOS funktionierte. Fündig wurde ich bei ImageMagick. Unter Linux kann das ganze über den Paketmanager (in diesem Fall auf einem Ubuntu) installiert werden:

apt-get install imagemagick

Unter macOS kann es über den Paketmanager Homebrew installiert werden:

brew install imagemagick

Nach der Installation kann der Konvertierungvorgang begonnen werden. Dazu muss im Terminal in das Verzeichnis mit den Bildern gewechselt werden. Anschließend wird über den Befehl convert die Konvertierung angestoßen:

convert *.png document.pdf

Je nach Anzahl und Größe der Bilddateien kann der Vorgang einige Minuten in Anspruch nehmen.

libGDX; Multiplattform-Game-Engine für Java

Für ein kleineres Projekt war ich auf der Suche nach einer Game-Engine für Java. Empfohlen wurde mir schlussendlich libGDX. Dabei handelt es sich um eine Game-Engine welche ursprünglich für Android entwickelt wurde. Mario Zechner, der ursprüngliche Entwickler der Engine, baute allerdings nach relativ kurzer Zeit eine Unterstützung für Desktopsysteme ein. Mittlerweile werden als Zielsysteme Linux, macOS, Windows, Android, iOS und der Webbrowser unterstützt.

Ein kleines Projekt in libGDX, nach ein paar Stunden Entwicklungszeit

libGDX eignet sich für 2D- als auch 3D-Spiele und ist relativ einfach strukturiert, so dass man in wenigen Stunden von einer Idee zu einem Ergebnis kommen kann. Die seit mittlerweile 2009 in der Entwicklung befindliche Engine wurde 2010 erstmalig veröffentlicht und hat sich seitdem stetig weiterentwickelt. Technisch basiert die Engine neben Java auf OpenGL, welches zum Rendering der Spieleszenen genutzt wird.

Die Liste der implementierten Features von libGDX ist lang. So wird Audio ebenso unterstützt wie die abstrakte Behandlung von Eingabegeräten, so das ein Spiel auf Touchscreen ebenso läuft wie auf gewöhnlichen Rechnern. Im Bereich der Grafik werden Partikelsyssteme, die Nutzung von Tile-Maps (mit einer nativen Unterstützung des TMX-Dateiformates) und vieles mehr unterstützt. Der Entwickler nutzt dazu die entsprechenden High-Level-APIs und muss sich nicht mit der konkreten Implementierung herumschlagen. Daneben existieren entsprechende Hilfs- bzw. Datenklassen, welche die verwendete Mathematik wie Matrizen, Vektoren und ähnliches abdeckt.

Aktivieren Sie JavaScript um das Video zu sehen.
Video-Link: https://www.youtube.com/watch?v=hA2e3xIuNlk

Neben den im Kern vorhandenen Features, existiert ebenfalls eine Unterstützung für zusätzliche Module, so können unter anderem Box2D und das Entity-System Ashley als zusätzliche Module eingebunden werden.

Die offizielle Seite des Projektes ist unter libgdx.badlogicgames.com zu finden. Neben der spartanischen Dokumentation auf der offiziellen Webseite, ist die Wiki des GitHub-Projektes ein guter Einstiegspunkt für den Start mit libGDX. Der Quelltext der Engine ist ebenfalls auf GitHub zu finden. Die Engine ist unter der Apache License in Version 2 lizenziert und somit freie Software.

Header in Postman von Tab zu Tab übernehmen

Mit der App Postman ist es möglich REST-API Aufrufe gegen beliebige Endpunkte durchzuführen. Wenn man nun bei einem Reponse auf einen Link klickt, so öffnet sich innerhalb von Postman ein neuer Tab mit dem Link als URL. Leider werden die Header des aktuellen Tabs dabei nicht übernommen. Wenn man sich innerhalb einer API bewegt, kann dieses Verhalten von Postman ziemlich anstrengend sein, da die Header dann immer wieder von Tab zu Tab kopiert werden müssen.

Die Einstellungen von Postman

Abhilfe schaffen hier die Einstellungen von Postman. In diesen befindet sich im Tab General der Punkt Retain headers when clicking on links. Sobald diese Einstellung aktiviert ist, werden bei einem neuen Tab, welcher durch einen Klick auf einen Link entsteht, automatisch die Header vom alten Tab in den neuen Tab übertragen.