Kryptowährungen und ihr Problem

Kryptowährungen sind spätestens seit dem Anstieg im Dezember 2017 in aller Munde. Berichte über die „Krypto-Blase“ mehren sich. Andere wiederum glauben an einen erneuten Boom des Kryptogeldes, denn das ist ja die Zukunft. Ich persönlich sehe es auch so, ob mit Boom oder ohne. Die Zukunft wird es werden. Ob es dabei noch bei Bitcoin oder Ethereum bleibt, sei einmal dahingestellt. Staaten werden notwendige Regulierungen (siehe Südkorea, Indien, USA usw.)  finden und vielleicht sogar eigenes Kryptogeld erfinden (siehe Venezuela). Denn nach wie vor bietet Kryptowährung einen einmaligen Vorteil gegenüber Banken: Es kann ohne Banken oder Dienstleister vertrauenswürdige (Geld-)Übertragungen unveränderbar verifizieren. Außerdem gilt es durch die dezentrale Struktur als „unhackbar“. Und genau da bin ich anderer Meinung. (mehr …)

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: