Git-Branch ohne History erstellen

Eine wichtige Eigenschaft moderner Versionskontrollsysteme ist die Möglichkeit Branches zu erstellen. Ein neu erstellter Branch stellt aus Anwendersicht eine Kopie des Quellbranches da. Manchmal soll allerdings ein Branch erstellt werden, welcher nicht von der Versionsgeschichte eines Quellbranches beeinflusst ist. Unter Git kann ein solcher Branch mit dem Befehl:

git checkout --orphan branchName

erstellt werden. Dadurch wird ein Branch ohne Elternteil erstellt. Dies wiederum führt dazu das der Branch keinerlei Versionsgeschichte verfügt und unabhängig von anderen Branches des gleichen Repository existiert.

Arduino für den Industrieeinsatz

Die Arduino-Familie ist im Grundsatz für das schnelle Prototyping gedacht. Der Einsatz in Industrieumgebungen ist also nicht allzu empfehlenswert. Das haben sich die Macher des Controllino ebenfalls gedacht. Finanziert über Kickstarter, entwickelten sie eine speicherprogrammierbare Steuerung, welche Arduino-kompatibel ist und sich für den Industrieeinsatz eignet.

controllino.biz

Der Controllino verfügt, je nach Modell, über bis zu 21 Eingänge, 24 Ausgänge, 16-Relay-Ausgänge und unterschiedlichste Interfaces zur Ansteuerung, wie I2C oder SPI. Daneben verfügt er über einen USB- und einen Ethernet-Anschluss. Ebenfalls integriert ist eine Real time clock. Bezogen werden kann der Controllino über die offizielle Seite unter controllino.biz. Preislich bewegen sich die Controller in einem Bereich von ein- bis dreihundert Euro, je nachdem welches Modell gewählt wird.

Testprogramm für den ESP8266

Beim Setup, zur Nutzung des Mikrocontrollers ESP8266, wird ab und an ein Programm benötigt um die Funktionsweise des Controllers bzw. des Flashvorgangs zu testen. Der einfachste Weg dies zu testen ist es die integrierte LED des Controllers zu nutzen. Dazu wird folgendes Programm benötigt:

void setup() {
  pinMode(2, OUTPUT)
}

void loop() {
  digitalWrite(2, LOW);   
  delay(250);            
  digitalWrite(2, HIGH);  
  delay(250);
}

Das Programm definiert PIN 2 des Controllers als Ausgang und sendet anschließend alle 250 Millisekunden ein Signal an diesen PIN. Dies führt dazu dass die eingebaute LED des Controllers in kurzen Abständen blinkt und somit das Setup und der Controller getestet werden kann.

Videos vom Bildschirm unter macOS Mojave aufnehmen

In macOS Mojave wurde die integrierte Funktionalität für die Aufnahme von Screenshots erweitert. Neben den bekannten Kombinationen Shift + Command + 3 (Screenshot des kompletten Bildschirmes) und Shift + Command + 4 (Aufnahme einer Auswahl oder eines Fensters) ist unter Mojave die Kombination Shift + Command + 5 hinzugekommen.

Die neue UI für die Bildschirmaufnahme unter macOS Mojave

Bei dieser Kombination öffnet sich ein Interface, in welchem ausgewählt werden kann ob ein Screenshot oder ein Video aufgenommen werden soll. Videos werden in einem MOV-Container, unter Nutzung des Codec H264, aufgenommen. Dabei wird nicht nur der sichtbare Inhalt, sondern auch der Ton mit aufgezeichnet. Viele Anwendungsfälle, für die früher der QuickTime-Player oder Spezialsoftware benötigt wurde, dürfte diese neue Funktionalität damit abdecken.

ANDROID_HOME unter macOS setzen

Beim Kompilieren eines Android-Projektes kann es zu folgender Meldung kommen:

Caused by: java.lang.RuntimeException: SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

Diese Meldung besagt dass das SDK nicht gefunden werden kann, da die Eigenschaft sdk.dir bzw. die Umgebungsvariable ANDROID_HOME nicht gesetzt ist. Unter macOS befinden sich die Android-SDKs im Library-Pfad des angemeldeten Nutzers:

/Users/seeseekey/Library/Android/sdk/sources

Der Nutzername, in diesem Beispiel seeseekey, muss natürlich durch den eigenen Nutzernamen ersetzt werden. Um diesen Pfad als Umgebungsvariable einzutragen muss das Terminal geöffnet werden und mittels cd in das Nutzerverzeichnis gewechselt werden. Anschließend wird die Datei .bash_profile angelegt bzw. geöffnet:

cd
nano .bash_profile

In diese Datei wird nun folgende Zeile eingetragen:

export ANDROID_HOME=/Users/seeseekey/Library/Android/sdk

Damit wird die Umgebungsvariable ANDROID_HOME automatisch bei der Anmeldung gesetzt und kann anschließend auch vom betreffenden Android-Projekt genutzt werden.