Runtastic, oder: wie man Kunden vergrault

Veröffentlicht am Samstag, 13. Januar 2018 14:05 in User Experience

Runtastic fällt immer mal wieder durch negative Kritik auf, etwa wenn man zahlende Kunden von ihren eigenen Daten aussperrt, bis sie sich einer Zwangsregistrierung unterwerfen. Aber auch abseits gewinnmaximierender Maßnahmen gibt es bemerkenswerte Fehltritte, insbesondere in Sachen Benutzerfreundlichkeit. Mein jüngstes Negativ-Erlebnis dazu ist einen kurzen Artikel wert.

Analyze your Git repositories

Veröffentlicht am Freitag, 12. Januar 2018 05:47 in Tools

Over Christmas I wanted to analyze some of my Git repositories with regards to commit count, contributions by author and other details. I found some nice and simple tools for that, one particular being Git Fame, written in Python. The tool is great, but it had a few problems: first of all it apparently wasn't written for the average Windows user like myself, because it had some problems with author names and non-ASCII characters which in turn needed workarounds on Windows that resulted in misshaped console output. Second, I wasn't quite satisfied with the feature set and performance. My powerful machine was idling along with little CPU and disk load, yet still the remaining hours for the larger repositories was in the upper 20s(!). The output on the other hand was only written to the console, so for further processing i.e. in Excel I had to copy it over into a file and do manual formatting to make it usable. Additionally, statistics per file extension and author were not available at all, you could only have either but not combined. Even worse, depending on the machine I commit from to my repositories, I apparently use slightly different author names (really should fix that), resulting in multiple entries for the same author. Some of these metrics hence were useless, for example: there's a "number of files contributed to" metric that you cannot easily aggregate across multiple author entries without knowing the exact files, an information that is not output by the tool. I'm no Python expert, but a quick look at the sources revealed that the tool was a simple wrapper around the Git command line, which made me think...

Screencasts with Open Broadcaster Software

Veröffentlicht am Montag, 29. Mai 2017 05:00 in Tools

This week, I spontaneously wanted to record a code review as a screencast to watch offline for others. In the past, I've recorded a lot of tutorials and screencasts, however the tools I used to use are not quite state of the art anymore (I loved to use Expression Encoder, for example). Luckily, I remembered that a friend of mine recommended Open Broadcaster Software (or "OBS Studio" for short) recently for streaming and recording, so I decided to take it for a ride. OBS Studio is open source (see GitHub) and very actively maintained. It also seems to have a large community that posts in their forums, publishes guides and creates plugins for the software. Overall, using it was a great experience right from the beginning, and it left a very professional first impression on me. I won't bore you with another "getting started" guide for this software here. What I want to provide is two things to help you improve using OBS Studio for your screencasts: a) Some configuration advise to set you up for an excellent audio experience, and b) a set of recommendations to get the best quality for your screencasts while keeping the filesize at an absolute minimum. Just to be clear on the scope of this post: I focus on the recording side of things (meaning to produce on demand/offline content); the video encoding details I describe here are particularly irrelevant for streaming scenarios.

Dem Einbrecher den Schlüssel reichen

Veröffentlicht am Mittwoch, 3. Mai 2017 22:01 in Security

Als ich gerade eben eine E-Mail mit einem angeblichen Link zu einem geteilten "Google Docs"-Dokument erhielt, wurde ich skeptisch: mit der betreffenden Person hatte ich schon länger keinen Kontakt mehr, und die E-Mail kam völlig kommentarlos. Es roch stark nach Spam und Phishing, aber andererseits sah die E-Mail sehr authentisch aus, und der Link führte eindeutig zur Domäne - eine gute Gelegenheit, sich die Details anzusehen.

How to improve Aurelia's watcher performance

Veröffentlicht am Montag, 10. April 2017 04:00 in Programmieren & Tools

Aurelia's CLI has a watcher feature which - in theory - adds quite some improvement to your daily work: I watches files for changes, recompiles your project automatically and uses browser link to refresh the page you're currently working on. For quite some time the watcher had a rather unpleasant property: it crashed. A lot. Fortunately, that was resolved when a pull request was accepted for the CLI. Disappointment struck when I tested the fix though; yes, the crashes were gone, but the watcher's performance now was horrible. Looking through the code I realized that the fix simply turned off incremental TypeScript builds to get rid of the crash. After a discussion on GitHub, I decided to take a deeper look into this, and - well - here are the results.

Was für ein Zirkus

Veröffentlicht am Dienstag, 4. April 2017 04:00 in Philosophisches

Als ich gestern von der Arbeit nach Hause fuhr, sah ich in einem kleinen Städtchen, an einer Straßenlaterne befestigt, das Plakat eines Zirkus. Im Vorbeifahren waren für mich weder der Name des Zirkus zu erfassen, noch die Veranstaltungstage oder der genaue Ort, weil mein Blick einzig und alleine wie fasziniert auf den Preis gerichtet war: "Eintritt 2 Euro" stand da. Zwei Euro! Nachdem ich mich kurz versichert hatte, dass ich nicht versehentlich in der Zeit zurück bis zu den Fünfzigern gefahren war, verbrachte ich die restliche Fahrt - die von diesem Punkt aus für gewöhnlich ziemlich genau neun Minuten und fünfzig Sekunden dauert - damit, über Zirkusse nachzudenken.

Creating an Aurelia-based auto-complete control

Veröffentlicht am Sonntag, 19. Februar 2017 18:00 in Programmieren

A while ago I created a small private web application, and instead of going the usual MVC-based way I had accustomed to during the last years, I chose to create a single-page application using Aurelia, a very sophisticated, modern, .NET developer-friendly framework for such apps. Once I reached the point where I needed some sort of auto-complete control to asynchronously fetch data from the backend to choose from, I evaluated the usual suspects I had learned to use in the past. Frankly, none of them felt "right" for the job. The style of integrating and using these controls simply seems antiquated in the light of modern web development compared to concepts like those of web components. So I thought: how hard can it be to write my own? As it turns out, not so hard. What started as a proof of concept for private use actually was a lot of fun and evolved, and today I want to share the result of that experience with others.

Magische Hände der Zerstörung

Veröffentlicht am Sonntag, 29. Januar 2017 16:00 in Satire & Tools

Ich habe traditionell ein Händchen dafür, Software durch bloße Benutzung kaputt zu bekommen. Von der Installation bis zum ersten Segmentation Fault sind es potenziell nur wenige Minuten. Ein Bekannter führt mir ein neu implementiertes Feature vor? Drei Klicks bis zur NullReferenceException. Was für einen Tester als Begabung gilt, ist im Alltag eher Plage. Seit einiger Zeit funktioniert diese Gabe nun auch bei Microsofts Produkten.

Dem Namen nach

Veröffentlicht am Dienstag, 27. Dezember 2016 16:06 in Satire

Wie gefährlich es ist, den angebrochenen Eierlikör vom letzten Jahr vollends aufzubrauchen, hat heute die Marketing-Abteilung von GMX bewiesen:


Als "Peter" hat man zwar sehr viele Optionen, aber der 27.12. gehört nicht zu den möglichen Namenstagen.

Netter Versuch :).

Knifflige Produktaktivierung

Veröffentlicht am Freitag, 23. Dezember 2016 13:15 in Satire & User Experience

Seit einiger Zeit kämpfe ich immer wieder einmal mit Bildstörungen beim TV-Empfang unseres Kabelanschlusses. Diverse Versuche, das Problem selbst zu beheben, verliefen ergebnislos: Zurücksetzen des Receivers, Neuverkabelung zwischen den Geräten, Entfernen möglicher Störquellen - nichts. Schließlich überwand ich meine natürliche Hotline-Scheu und rief bei Unitymedia an. Durch geschicktes Bedaddeln der zig Menü-Optionen landete ich tatsächlich direkt bei einer technischen Störungsannahme, was ich schon als kleinen Erfolg verbuchte[1][1]
Mir graut es stets davor, mich durch die Frontverteidiger zu kämpfen, die - technisch meist wenig bewandert - erstmal stur nach Plan X vorgehen und den Kunden zu allerlei wirkungslosen aber aufwändigen Schritten zwingen, selbst wenn er diese zuvor schon diverse Male selbst ausgeführt hat. "Schalten Sie das Gerät bitte für zwei Minuten aus und wieder ein. Führen Sie jetzt bitte das Zurücksetzen auf Werkseinstellungen durch. Oh, hat nichts gebracht und alle ihre Aufnahmen, Sendereinstellungen und sonstigen Konfigurationen sind weg? Tja. Wenigstens konnten wir jetzt ausschließen, dass das Gerät eine Macke hat..."
. Man versprach mir eine Prüfung des Anschlusses durch "das Fernwartungsteam" mit anschließendem Rückruf. Statt des erhofften Telefonats allerdings trudelte zwei Tage später eine E-Mail bei mir ein...

Blättern: 1 2 ... 26