Release the GitKRAKEN!!!

Über das GitHub’s Electron (ehemals Atom Shell) bin ich heute auf GitKraken gestoßen. Wenn dich der Name allein noch nicht überzeugt, dann vielleicht die Screenshots anbei.

GitKraken Client

Ich finde die UI ist sehr gut aufgeteilt. Links kannst du deine Repositorys auswühlen. In der Mitte siehst du stets deine Commit-Logs und Diffs. Auf der rechten Seite siehst du Details und kannst betroffene Dateien auswählen.
GitKraken Client für Mac

Verkleinerst du das Fenster, wandert die rechte Seite mit den Details in den mittleren unteren Bereich. So hast du immer genügend Platz und kannst alles gut lesen.

Da ich schon länger nach einer guten Git GUI gesucht habe, lasse ich den KRAKEN frei und werde GitKraken weiter ausprobieren. Aktuell befindet sich das Projekt in der Open Beta Phase.

Übrigens, nach der Account-Aktivierung für GitKraken erwartet euch eine kleine Überraschung: CLI vs The Kraken  :-D Aber schaut lieber selbst.

Let's Encrypt SSL Zertifikant in wenigen Sekunden installieren

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto

Mehr Informationen im GitHub Repository von Let’s Encrypt oder in der offiziellen Dokumentation.

Verwende den Befehl `letsencrypt-auto` in einem CronJob, um spätestens nach 3 Monaten ein neues Zertifikat zu erhalten.

"App nicht installiert" - Was tun?

Bei Installationsproblemen bspw. bei Spielen oder größeren Anwendung könnte es unter Cyanogenmod 12 vorkommen, das immer nur die Meldung erscheint “App nicht installiert”. Die erste Recherche im Internet nach diesem Problem gab bereits einige Hinweise zur Lösung: Versuche in den Einstellungen > Apps den Installationsort auf den internen Speicher zu setzen. Oder nimm die SD-Karte heraus, sofern vorhanden.
Da ich ein Nexus 5 besitze, konnte ich weder eine SD-Karte herausnehmen, noch gab es bei mir diese Einstellung.

Die Lösung des Problems war dann doch einfacher als gedacht.

adb shell; su; pm set-install-location 1; exit; exit;

  1. Versetze dein Smartphone/Tablet in den USB-Debugging Modus
  2. In den Einstellungen > Entwickleroptionen musst den “Root-Zugriff” für “Apps & ADB” aktivieren
  3. Verbinde dich mittels ADB auf dein Smartphone bzw. Tablet: `adb shell`
  4. Erlange Root-Zugriff über den Befehl `su`
  5. Führe den Befehl zum Ändern des Speicherorts aus `pm set-install-location 1`
  6. (Optional) Deaktiviere den Root-Zugriff für ADB (Sicherheitsrisiko) wieder und am besten auch den USB-Debugging Modus

Der Befehl in Schritt 5 setzt die korrekte Einstellung. Danach sollte die Installation der Spiele oder Apps wieder funktionieren.

Softwarekosten minimieren und maximieren

Das Konferenzvideo “Min-maxing Software Costs” von Konstantin Kudryashov auf der Laracon.eu 2015 in Amsterdam wurde am 1. September auf Youtube veröffentlicht.

Hier ist ein kurzer Überblick:

Jedes Softwareprojekt hat die folgenden Kosten:

1. Kosten der Einführung, initial, linear, berechenbar
2. Kosten der Änderungen, exponentiell steigend
3. Kosten der Verantwortung, ebenfalls linear

Die Kernaussage lautet: Übernimm für alles was du schreibst die Verantwortung.

Und zu guter Letzt 5 Schritte, wie dies gelingen kann:

1. Dokumentiere was verlangt bzw. benötigt wird (bspw. als Szenarien).
2. Schaue nach und experimentiere mit Tools, die dein Problem vielleicht bereits lösen.
3. Dokumentiere Änderungen und deine Gründe.
4. Stabilisierung – Übernimm Verantwortung, wenn etwas so groß wird, dass ein Tool nicht mehr ausreicht.
5. Isoliere deinen Code von Code Anderer.

Von Konstantin Kudryashov @everzet

Links:

Wie du die Geschwindigkeit von ngRepeat bei großen Datensätzen super einfach verbessern kannst

Als Webentwickler lernt man recht schnell, dass der DOM in allen Webbrowsern sehr sehr langsam ist. Gerade wenn einen sanftes Scrollen für eine gute User Experience erwünscht ist, sind riesige Datensätze oft ein Problem.

Glücklicherweise gibt es hierfür eine einfache Option in AngularJS. Der einfachste Weg bei großen Mengen von Daten Performanceverluste zu vermeiden ist die Verwendung von Paginierung oder Infinite Scroll, also das “unendliche” Scrollen, wo automatisch Inhalte nachgeladen werden. In AngularJS gibt es hierfür den Filter `limitTo`. (mehr …)

Android M (6.0) heißt Marshmallow

Google hat heute seine finale Version zum Android M SDK veröffentlicht. Gleichzeitig wurde dadurch die Version und der offizielle Name bekannt und was damit hinter dem “M” steht. Es ist “Marshmallow”.

Der Release von Android Marshmallow soll im Herbst statt finden.

Weitere Informationen findest du hier:

Visor - Lupe und Sehhilfe

Visor ist eine iOS App für iPhone and iPad und soll Leuten mit Sehbehinderung das Lesen von gedruckten Text auch in schwierigen Lichtverhältnissen ermöglichen. Die App Visor hat dabei einige Features, wie z. B. 4 unterschiedliche Farb- und Konstrastmodi, 4 Vergrößerungsstufen, optionaler Auto-Fokus und Blitzlicht. Gleichzeitig ist Visor eine günstige Alternative zu elektronischen Lupen.

Visor for Android
Visor for Android

Im Google PlayStore habe ich nach ähnlichen Lupen-Apps geschaut, aber nichts dergleichen gefunden. Darum (und weil ich meine Android/Java-Kenntnisse wieder auffrischen wollte) entschied ich mich Visor für Android von Grund auf zu entwickeln. Am 14. August habe ich dann Version 1.0 im PlayStore veröffentlich. Die App ist kostenlos und kann gerne ausprobiert werden. Über Feedback würde ich mich natürlich sehr freuen :-) Die aktuelle Visor Android App umfasst die Hauptfeatures der iOS Version: 4 unterschiedliche Farbmodi, 4 Zoomstufen, optionaler Autofokus und Blitzlicht.

Download on the App StoreDownload on Google Play Store

Außerdem ist Visor für Android Open-Source und Ich habe auf GitHub sämtlichen Quellcode veröffentlicht. Es gibt noch ein paar Probleme mit manchen Android-Geräten, die ich noch nicht lösen konnte. Vielleicht hast du noch Tips und Tricks oder kannst das Projekt auf GitHub unterstützen, um die App ein Stück besser zu machen und damit sehbehinderten Menschen zu helfen.

Besuche kloener/visor-android auf GitHub