Published on Sunday, January 29, 2017 4:00:00 PM UTC in
Skit
& 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.
Published on Tuesday, December 27, 2016 4:06:12 PM UTC in
Skit
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 :).
Published on Friday, December 23, 2016 1:15:46 PM UTC in
Skit
& 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[]. 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...
Published on Thursday, December 8, 2016 5:00:00 PM UTC in
Programming
& Tools
Vor einigen Jahren noch waren Entwickler nicht nur vertraut mit dem Begriff DLL Hell, es liefen ihnen meist auch kalte Schauer den Rücken hinunter, wenn sie an die ein oder andere Situation zurückdachten, in denen sie sich dieser "Hölle" ausgeliefert sahen[]. Der Begriff bezeichnet vereinfacht dargestellt die Situation, dass verschiedene, zueinander inkompatible Versionen ein und derselben Bibliothek (DLL) Konflikte verursachten, die nur schwer aufzulösen waren. Heutzutage ist das Phänomen dank schier unbegrenzt zur Verfügung stehender Ressourcen und auch Technologien wie .NET, die aktiv an Lösungen für die Problematik gearbeitet haben, weitgehend in Vergessenheit geraten und berührt kaum noch das tägliche Arbeiten. Außer natürlich man arbeitet mit JavaScript.
Published on Wednesday, November 16, 2016 9:26:04 PM UTC in
Skit
& Tools
Die Entwicklergemeinde tut sich traditionell schwer, Begriffe wie "Alpha-Version" oder "Beta-Version" formal zu definieren. Jeder hat seine eigene Vorstellung davon, welche Voraussetzungen erfüllt sein müssen, damit eine Software etwa den Beta-Status erreicht hat. Je näher die Fertigstellung eines Produkts rückt, desto klarer und einheitlicher werden aber die Definitionen. Zum Stadium des "Release Candidate" etwa schreibt Wikipedia...
Published on Monday, November 7, 2016 7:00:00 AM UTC in
Tools
Vor kurzem stieß ich auf einen recht krassen Bug in der von mir verwendeten Bibliothek CommonMark.NET, bei dem die Eingabe einzelner Tilden-Symbole (~) zum Absturz des gesamten Prozesses führte (per StackOverflow-Exception). Der Fehler ist ab Version 0.14 behoben, weshalb ich jedem, der noch eine ältere Version benutzt, das Update wärmstens empfehlen würde. Die Situation entbehrte nicht einer gewissen Komik, da...
Published on Monday, November 7, 2016 5:00:00 AM UTC in
Skit
& Code Reviews
Manch Entwickler hätte sich längst in der Unfallstatistik verewigt, sähe er im Straßenverkehr ebenso selten nach links oder rechts wie beim Programmieren. Dabei ist grade das Abgucken bei anderen doch eines der wichtigsten Hilfsmittel zum Lernen und zur Weiterentwicklung. Mit Scheuklappen fällt es aber schwer, Muster zu erkennen und für sich selbst zu adaptieren.
Published on Saturday, October 22, 2016 6:00:00 AM UTC in
Skit
Bei DHL kennt man die Redewendung "doppelt dreifach fünffach genäht hält besser" wohl auch. Jedenfalls wollte jemand sichergehen, dass ich auch wirklich mitbekomme, wann ein Paket bei mir ankommt.

Published on Monday, October 10, 2016 5:00:00 AM UTC in
Skit
& Security
Ich muss gestehen, dass ich bis vor kurzem - und zwar viele Jahre lang - mit einem absolut mangelhaften und fahrlässigen Sicherheitsverständnis beim Thema Online-Banking unterwegs war: per iTAN. In meiner grenzenlosen Arroganz dachte ich, dass mit einem eigenen System, dediziertem Browser inklusive aktiviertem NoScript zusammen mit der Unterstützung meiner Bank, die Überweisungen lediglich vormerkt, damit sie (auch auf anderen Geräten) nochmals kontrolliert und ggfs. storniert werden können, auf der sicheren Seite beim Online-Banking sei. Weit gefehlt! Anscheinend ist die gängige Expertenmeinung, dass das bloße Vorhandensein einer iTAN-Liste in der eigenen Schreibtisch-Schublade automatisch dazu führt, dass monatlich Beträge im unteren einstelligen Millionenbereich von meinem Konto an Betrüger abgedrückt werden. Außerdem seien die Phising-Mails heutzutage so clever, dass ich jederzeit und beliebig oft dazu überredet werden könnte, auf Links zu klicken, um dort bereitwillig hunderte TAN-Nummern einzutippen. Scho-ckie-rend! Kurz, so teilte mir meine Bank jedenfalls mit, sei es alternativlos, das Verfahren zum Ende des Jahres einzustellen. Ich solle mich doch gefälligst für eine der Alternativen anmelden.
Published on Wednesday, September 28, 2016 4:00:00 AM UTC in
Programming
& Security
Der Content-Security-Policy
-Header ist so ein bisschen der Schweizer-Armee-Header der Sicherheitseinstellungen. Er kann sehr fein granuliert steuern, was der eigenen Seite erlaubt sein soll: wohin man sich verbinden darf, woher Skripte, Styles und Schriftarten geladen werden, was an Inhalten eingebettet werden kann und wo die eigenen Inhalte eingebettet werden dürfen, von wo Bilder, Objekte und andere Inhalte stammen müssen. Damit verhindert er - zumindest mit den strengsten Einstellungen - so gut wie alle XSS-Angriffe. In gewisser Weise löst dieser Header auch die bereits vorgestellten Funktionen von X-Frame-Options
und X-XSS-Protection
ab, weil man mit ihm dasselbe und noch mehr erreichen kann. Warum ich das erst jetzt erzähle? Nun, der Content-Security-Policy
-Header ist relativ neu und gut für moderne Browser geeignet, während die eben genannten Header zwar im direkten Vergleich weniger bieten, dafür aber auch mit älteren Browsern funktionieren. Zumindest momentan haben also noch alle ihre Daseinsberechtigung.