The Iran Contract is Dead Already

You may notice that the headline say "contract", not "deal". I hate the word "deal", it sounds a bit like a shady car dealership to me, and "contract" makes it more clear that there is a legally binding (in theory) document that had been written after careful negotiations, and there was no rip-off as in so many "deals" there is.

Anyway, after the US illegally backing out and illegally and very rudely telling the EU that they can choose between wither dealing with Iran of the US, it seems the EU, and in particular Germany have not grasped the situation yet.

They tell Iran in all seriousness that the EU will honor the contract and ask Iran to do the same. Are they blind, deaf, brain-dead, or all of the above?

The trade between the EU and Iran is but a small fraction (about 3%) of the volume they trade with the US. Do they seriously think that companies will happily give up 500 billion in trade in favor of the 15 billion they trade with Iran?

Companies are neither political, nor are they empathic, they are run for the sole purpose of makin profits, and they will simply look for the bigger chunk.

I am not sure what the EU are playing at here. They can of course politically honor the contract, but their industry will nevertheless cease operations with Iran - bottom-line there it will make no difference whether the EU breaks the contract as well, and imposes new sanctions.

Of course, by politically staying in the contract, they can (and do) urge Iran, to also honor its commitments.

Albeit, as mentioned above, for Iran it does not really matter what the EU does - they will just loose their imports and exports, including those from/to the EU.

Can you honestly expect Iran to stay with the contract, when all the benefits are gone anyway?

Israel, Saudi Arabia, and last bit not least the US are tightening the military screws as well. What other realistic choice does Iran have that to build weapons to defend itself, when all benefits of not doing so have already been taken away?

Of course it is this very reaction the Trump administration is counting on. In this event they will join forces with Israel and Saudi Arabia and declare war on Iran, which is what they have been planning all along, such as Trump's "security advisor" John Bolton, who publicly said hat he wants to see a "regime change" in Iran in 2018.

Despite this very obvious plot, I am afraid that what I just outlined above is exactly what is going to happen. Iran is already caught in a "mouse trap" an cannot choose its actions freely any longer.

I don't care for governments and politics at all, least of all for the Iranian*, but this prospect really makes me sad for a beautiful country and its innocent and likeable inhabitants.

*: maybe one exception: the Israeli government

Netflix and IMDb

When looking for movies or series worth watching on, I used to spend hours with a growing sense of frustration.

Of course, the shows need to be a mix, one, to server different audiences, but most importantly, second, to stay within budget. However, I cannot help the feeling, that the largest part of the offerings are, well, crap. On the other hand, there is some really good stuff there, too.

Only, how do I find the good stuff more quickly? There used to be great Grasemonke/Tamptermonkey user scripts, that would show ratings from Rotten Tomatoes, IMDb and the like alongside the movies on Netflix. Unfortunately, all of them stopped working after some time, and I was left again looking for the needle in the haystack.

That is, until I recently found a user script that shows those IMDb ratings again. It is admittedly a little more work that just click-install (you have to get a free key and put it in the code yourself), but it works, and that's all that matters for me.

It does not show ratings for all items (no idea why), and I am a pick person, so I don't want to watch anything that got less that a 7.0 on IMDb, but even with these restrictions is took me only 30 minutes to fill my list with 10 titles I want to watch.

As you can see, my ratio of watching versus searching has improved considerably :-)

If you are looking for a similar treat, you check the user script out yourselves here.


Verifying a Playstore in-app purchase with PHP

Of course you can verify an IAB purchase in your Android app, but that means you have to have your API key somewhere in the app. In the worst case, hackers can get your key, at the very least it is easy to tamper with your verification code through reverse-engineering of the app.

This is why Google recommend checking purchases on the server. Here is how to do this in PHP.

First of all, you have to get your key from the Play Console:

Save the key to a text file. The following code assumes the file is in the same directory as the PHP script and is named "Publishing-API-Key":

function verifyPurchaseSignature($data, $signature)
    $key = file_get_contents("Publishing-API-Key");
    $key = openssl_get_publickey($key);

    if(null === $key)
        reportError("Cannot verify purchase: invalid API key!");

    $result = openssl_verify($data, base64_decode($signature), $key, OPENSSL_ALGO_SHA1);

    if(0 === $result)
        return false;
        return true;

The data parameter contains the JSON data from the play store purchase (do not re-format or add newlines).
The signature parameter contains the signature from the play store purchase. which is a Base64 string.

If you host this code on a web server, make sure that the file containing your API key is not externally accessible!


Debugging an Android App that uses In-App Purchasing

In order to get In-App Purchasing to work in the first place, make sure you meet the following requirements:
  • Manifest file must include com.android.vending.BILLING permission.
  • APK is
    • built in release mode
    • signed with the release certificate
    • uploaded to alpha/beta distribution channel in the Developer Console
    • published to testers
  • in-app products are published in the Developer Console and their status is set to active.
  • Test account is added in Developer Console. You cannot test the purchasing process with your developer account!
  • Test account is opted-in as a tester and it's linked to a valid payment method.
Now, to debug the application with in-app purchasing working, you need to change few things:

In the Manifest add the following as an attribute to the application node:
In your Build.gradle file (for the app module) under android > buildTypes > release, add:
debuggable true
Compile your app. Because of the previous changes, it will be debuggable now, even if you build it in release mode. Ensure that this APK:
  • is built n release mode
  • has the same versionCode as the one uploaded to Developer Console.
  • is signed with the same certificate as the one uploaded to Developer Console.

Now you can debug the app from from Android Studio as if you had built a debug version, and in-app purchasing will work. Change the code, recompile, everything works fine as long as you stick to release mode.

To test in an Adroid Virtual Machine or emulator, you need to pick an image that includes Play Store. As of this writing, the only images that do so are Nexus 5 and Nexus 5X. You may find a way to install Play Store on other images, e. g. from GApps, but I avoided that hassle.

Important: before you build a version to officially release to PlayStore, remember to revert the above changes! You don't want to make it too easy for hackers/pirates ...



Farbige Punkte und Streifen auf Edelstahl aus der Spülmaschine

Oft haben mein Besteck und Töpfe aus Edelstahl farbige, meist blaue Punkte und Streifen, wenn ich sie aus der Spülmaschine hole.

Nach einigen Recherchen bei Produktherstellern und Internet-Foren sowie eigenen Versuchen über ein halbes Jahr komme ich für mich (ohne Anspruch auf Allgemeingültigkeit) zu folgenden Ergebnissen:

  • ob ich Produkte unterschiedlicher Hersteller oder nur eines Herstellers nutze, macht keinen Unterschied, auch wenn einige Hersteller dies (aus sehr durchschaubaren Gründen) behaupten
  • geänderte Dosierungen von Salz und/oder Klarspüler brachten keinen Erfolg
  • die Verfärbungen sind nach manchen Speisen stärker. Wenn ich z.B. Teller mit Kartoffelresten in derselben Maschine wasche, sind die Verfärbungen an Topfen erheblich stärker.
  • der Hersteller des Edelstahls (No-Name oder Markenhersteller) ist völlig unerheblich

Letztendlich muss ich mich also mit den Flecken arrangieren. Laut einigen Herstellern von Töpfen handelt es sich hierbei um eine "Schutzschicht", die der Edelstahl bildet, die aber gesundheitlich völlig unbedenklich sei.

Kochergebnis und Geschmack werden durch die Flecken nicht beeinträchtigt. Gesundheitsrisiken habe ich für mich mal ausgeschlossen, allerdings handelt es sich hier um keine Langzeitstudie :-)

Wenn die Flecken stören, sind sie sehr leicht zu entfernen. Un man benötigt keine Spezialreiniger oder gar Scheuermittel dazu, auch wenn ich diesen "Tipp" oft gefunden habe. So geht es ganz einfach:

  • Warmes Wasser, Spülmittel und einen guten Schuss Essig in den Topf füllen
  • 5-10 Minuten einwirken lassen
  • Mit einem Lappen oder Schwamm (die raue Seite kommt nicht zum Einsatz) auswischen
  • Fertig!

Wie gesagt, das mag nicht für jeden funktionieren, speziell wenn die Spülmaschine vielleicht doch falsch eingestellt ist. Ich kann auf diese Weise prima damit leben: mit leichten Verfärbungen lebe ich, und wenn es mir zu viel wird, sind sie schnell entfernt.

Vielleicht hilft diese Zusammenfassung meiner Experimente ja dem einen oder anderen auch.


Adding libsodium to an Android Studio Project

The following Github repository has a JNI build of libsodium that can be added to an Android project: https://github.com/joshjdevl/libsodium-jni

Scroll to the bottom of the page where you will find the Android Archive (AAR) details:

From this, you will need to create the following string:

We will need this string later, so Android Studio can pull the AAR from Maven.

First of all, enable Maven for your project. In Project Exlorer open your project’s build.gradle file. You will find “repositories” near the top, add the following line between the curly brackets:

The “repositories” item will now look similar to this:

repositories {
Maven is now enabled, save and close the file.
Next, add the libsodium AAR to your module’s dependencies. In Project Exlorer open your module’s build.gradle file. Towards the bottom you will find “dependencies”. Remember the string we constructed above, we will now add it to the list of dependencies like so:
compile 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:1.0.8'
The updates dependencies will now look similar to this:
dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    implementation 'com.android.support:design:26.1.0'
    testImplementation 'junit:junit:4.12'
    compile 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:1.0.8'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
Save and close the file. Resync your project.

Finally, you need to change your AndroidManifest.xml. The reason for this is that the libsodium AAR has been built with a setting of allowBakckup: no, while your Android project wants to allow backups. You can decide whether you want no backups, or your project’s settings to override the libsodium settings.

To disallow backups for your project as well, locate the “” tag and change
Instead, to override libsodium settings and allow backups, again locate the “” tag and add the following line inside the tag:
In all likelihood the “tools” namespace has not been declared yet, so add the following inside the “” tag of the document:
That’s it. Save and close again. Now you can use libsodium from your project.

Here is some sample code; for more code examples your will have to look at unit test in this Github project: https://github.com/joshjdevl/libsodium-jni As the JNI version does not have all the high-level stuff that libsodium offers, this is the best “documentation” I found.

Sodium sodium = NaCl.sodium();

long alice_publickeylen = Sodium.crypto_box_publickeybytes();
long alice_privatekeylen = Sodium.crypto_box_secretkeybytes();
byte[] alice_public_key = new byte[(int) alice_publickeylen];
byte[] alice_private_key = new byte[(int) alice_privatekeylen];
System.out.println("Generating keypair");
int ret = Sodium.crypto_box_keypair(alice_public_key, alice_private_key);
Assert.assertEquals(0, ret);
System.out.println("Generated keyapir");

long bob_publickeylen = Sodium.crypto_box_publickeybytes();
long bob_privatekeylen = Sodium.crypto_box_secretkeybytes();
byte[] bob_public_key = new byte[(int) bob_publickeylen];
byte[] bob_private_key = new byte[(int) bob_privatekeylen];
System.out.println("Generating keypair");
ret = Sodium.crypto_box_keypair(bob_public_key, bob_private_key);
Assert.assertEquals(0, ret);
System.out.println("Generated keyapir");

byte[] message = "test".getBytes();
long noncelen = Sodium.crypto_box_noncebytes();
byte[] nonce = new byte[(int) noncelen];
long ciphertextlen = Sodium.crypto_box_macbytes() + message.length;
byte[] ciphertext = new byte[(int) ciphertextlen];

Sodium.randombytes_buf(nonce, (int) noncelen);
ret = Sodium.crypto_box_easy(ciphertext, message, message.length, nonce, bob_public_key, alice_private_key);
Assert.assertEquals(0, ret);

byte[] decrypted = new byte[ciphertext.length - Sodium.crypto_box_macbytes()];
ret = Sodium.crypto_box_open_easy(decrypted, ciphertext, (int) ciphertext.length, nonce,
        alice_public_key, bob_private_key);
Assert.assertEquals(0, ret);
System.out.println("Recovered message=" + new String(decrypted));
Kudos to the people who maintain all the Github repositories involved here, from NaCl, which is the bases of Sodium, the creator of Sodium, Robosodium, which allows to create the JNI interface in an automated fashion, and not least the maintainer(s) of the AAR version, so not everyone has to go through the whole build process.

Closing note: If you are really paranoid, of course, (and you should be, if you work with cryptography), you should not trust any 3rd parties. You will need to pull the original source code and cross-compile it for all platforms yourself.



  1. Prä-Sondierungsgespräche
    Hier wird herausgearbeitet, warum alle Parteien unbedingt an die Macht wollen
  2. Sondierungsgespräche
    Man bespricht alle Unterschiede, die einer Koalition im Wege stehen, und fügt noch ein paar Backpfeifen für den politischen Gegner hinzu
  3. Koalitionsverhandlungen
    Man such trotz aller Unterschiede die Gemeinsamkeiten und gelobt Frieden, Freude, Eierkuchen
  4. Regierungserklärung
    Die Eier sind zerschlagen. Man erklärt, welche Ziele in den nächsten 4 Jahren verfolgt werden, und warum diese nichts mehr mit den Koalitionsverhandlungen zu tun haben. Sachzwänge! Wachstum! Arbeitsplätze! Und so!
  5. Wahlkampf (4 Jahre, na gut 3 Jahre später)
    Man erklärt, warum die in der Regierungserklärung genannten Ziele nicht erreicht werden konnten, und warum der Koalitionspartner alleine daran Schuld ist

Groko, Koko, Ballaballa

Erst ist die Mehrheit der Deutschen (angeblich) dagegen, eine Woche später (angeblich) für eine Wiederholung der Groko. Vielleicht mit einem leicht anderen Namen, das ändert auch nicht viel.

Ja, sind denn alle von den ewigen Wiederholungen im Fernsehen völlig verblödet? Oder hat man ihnen als Kind doch nur die Schaukel zu nah an die Hauswand gebaut?

Weiter so? Wirklich?

Bisher hat noch jeder Koalitionspartner der Union (insbesondere unter Merkel) das Nachsehen gehabt. Das sollte die SPD doch kennen ...

Warum also lieber eine Minderheitsregierung? Ganz einfach: ohne die Mauscheleien einer Groko kann sich ein Unsinn wie Autobahnmaut (ok, Infrastrukturabgabe), der nur der Sebsbefriedigung einer marginal unwichtigen Partei dient, nicht wiederholen.

Auch kann so endlich wieder Oppositionsarbeit geleistet werden, die ihren Namen verdient.

Nicht zuletzt wäre die Auswirkung einer Groko, dass die größte Oppositionspartei die AfD ist. Das ist glaube ich in niemandes Interesse.

Also Schluss mit dem Unsinn! Die Union sollte den Mut haben, alleine eine geduldete Regierung zu stellen. Auch ohne Koalitionspartner, auf den man alles Fehler so schön abwälzen kann. Dann muss man halt für seine Entscheidungen auch mal gerade stehen.

Mein Weihnachtsgeschenk: 3 Monate GeFüRe

GroKo, Koko, ... nein: GeFüRe. Am Weihnachtstag sind es 3 Monate mit einer geschäftsführenden Regierung in Deutschland.

Ein Grund zum Jammern? Nicht doch!

  • Merkeline steuert das Land weiterhin mit entschlossener Zurückhaltung.
  • Ein Minister der CSU (Agrarminister, den Namen kenne ich nicht und hatte ich vorher noch nie gehört - Müller vielleicht?) tritt die (geschäftsführende) Koalition und Kanzlerin ans Schienbein (um nicht ein anderes Körperteil zu bemühen) um seinen bajuwarischen Amigos zu gefallen.
  • Ein geschfü Außenminister macht nicht viel.
  • Ein (tatsächlich: amtierender) Bundespräsident macht auch nicht viel. Als es ihm zu ruhig wird, schmeißt er Gegner der israelischen Siedlungspolitik und Antisemiten in einen Topf und rührt ein paar Tage gut um, unterstützt von einem (geschfü) Innenminister.
  • Aufklärungsarbeit (z. B. bei NSU) findet nicht statt.
  • Politische Hilfe fürs Ausland besteht in Waffenlieferungen - ist ja auch eine Art Hilfe.

Also "business as usual". Deutschland braucht offensichtlich gar keine Regierung. Was soll das ganze Geplänkel mit Prä-Sondierungs-, Sondierungs- und Koalitionsgesprächen? Lassen wir es doch einfach so wie es ist.


Hoppla, ich bin Antisemit!

Der Israelische Staat hat ja schin immer Gegner seiner "Politik" als Antisemiten gebrandmarkt. Neu ist allerdings, dass sich der deutsche Staat diese Argumentation nun zu eigen macht. Wer gegen Isareals Siedlungspolitik angeht, soll Juden im Allgemeinen hassen? Lächerlich!

Ich bin gegen die Betonköpfe der isralischen Regierung, und auch gegen die Unterstützung, die die deutsche Regierung der agressiven und völkerrechtswidrigen Siedlungspolitik der Kneset in Form von vom Waffenlieferungen und zugehörigen Krediten angedeihen lässt.

Ich bin deshalb nicht gleich gegen Israelis - nicht jeder Israeli heißt die Politik Israels gut, und überhaupt sollte jeder vernünftige Mensch zwischen Bevölkerung und Regierung unerscheiden können. Sonst könnte ich mich als Deutscher ja in vielen Ländern gar nicht mehr blicken lassen ...

Und nicht jeder Jude ist ein Israeli. Ich habe einige jüdische Freunde unabhängig von ihren politischen Ansichten. Einige davon sehen Israels Politik ebenfalls kitisch. Jüdische Antisemiten?

Hat die Verbrennung der israelischen Flagge (ohnehin eine lächerliche Aktion, Flaggen zu verbrennen) unseren Bundeswalter Steinmeier zu dieser Überreaktion verleitet? Von einem Bundeswalter hätte ich doch mehr Einblick und weniger (israelisch geprägten) Populismus erwartet.

Nun, dann trage ich eben das mir vom Bundespräsidenten verliehene Etikett "Antisemit" in dem Wissen, dass ich anscheinend besser unterscheiden kann, als unser höchster Repräsentant. Aber traurig bleibt es trotzdem.


Terror in the US - A Hint for IS

OK, so this is not about the people who dies in several attacks in the US recently, even though their families have my heartfelt sympathies.

It is also not about how PresidentMr Trump distinguishes between good (white American) and bad (external terrorists, especially thos who claim to have ties to IS - however, the above does not apply if they are Saudis) terrorist attacks.

What is the definition of a terrorist attack anyway. Let's just call them crimes, because that's what they are, regardless of who executed them.

Let me just say this with a satirical undertone: the IS had rather save their own people; Americans kill each other all by themselves, and much more efficiently at that! On average, 80 deaths by gunshots each day. But there is not even a rustle, no, this is just the way things are, right?

So, IS, if you feel you still need to interfere, do it in a smarter way: pick some moronic asshole in the US (don't pick the president, though - although, really, why not?) and just give them the slight nudge it takes to tip them over the edge. You get the disaster, and spare your own men.
The added bonus here is: Mr Trump cannot even politically profit from this in any way! Which is exactly what he always does, when you dumb asses strike yourselves.

P.S.: I found a couple of notable quotes by Trump on the Texas shooting:

  • Fortunately somebody else had a gun that was shooting in the opposite direction ... - OK, so as long as enough people have a gun, the world is a safer place then. Unless ... unless nobody had had a gun in the first place.
  • This is a mental health problem at the highest level. - Wow, is this a hint of self-reflection?


Sitzordnung im Bundestag

Das ist ja wie in der Grundschule: die Fraktionen streiten sich darum, wer bei wem sitzen darf, und bei wem man ganz bestimmt nicht sitzen mag.

Dabei ist die Lösung denkbar einfach, denn: wo steht denn geschrieben, dass die Fraktionsmitglieder alle auf einem Haufen sitzen müssen? Wie wäre es denn mit einem Losverfahren, und zwar für jeden einzelnen Abgeordneten?

Das hätte viele Vorteile:

  • die Abgeordneten würden dem Vortragenden zuhören, statt mit dem Parteigenossen nebenan zu plaudern (stimmt, Grundschule, hatte ich ja schon erwähnt).
  • der obige Punkt trifft ganz besonders auf die Regierungsbank zu, wo man gerne wegschaut und miteinander redet, wärend am Rednerpult etwas vorgetragen wird, das der Rigierung nicht ins Konzept (falls vorhanden) passt.
  • Unterhaltungen über Parteigrenzen hinaus wären möglich - vielleicht ergibt sich ja etwas Interessantes daraus.

Da die Arbeitsräume ja nach Fraktionen angeordnet sind, gibt es noch genügend Gelegenheit außerhalb der Sitzungen, sich partei-intern abzusprechen.

Einem Abgeordneten gefällt die Nase des Nebensitzers partout nicht? Na dann verlosen wir die Plätze eben alle drei Monate neu.

Spricht etwas dagegen? Macht mal!


Faception - Where is the Outcry?

Israeli tech company Faception created a software (using artificial intelligence, what else would you expect these days?), which can tell you the mindset of a person just by "looking" at the person's face.

Of course, the primary goal is to spot terrorists, but they also claim to be able to tell, for example, whether the person is a gambler, a risk-taker, eager for money, etc.

I find it quite ironic, that an Israeli company buys into the concept what you can determine a person's character by looking at their face: it was the Nazis, who tried (an failed) to do exactly that. This could be hilarious if it were not so sad!

Before artificial intelligence, this software is based on vernacular psychology, without any scientific foundation. There are no studies that show any correlation between face (or skull, as the Nazis had it) and character. Just search for "phrenology", and you will see that serious scientist have abandoned this as BS long ago.

But sure, artificial intelligence will find, what science did not, and what doe not exist: Faception claim in one of their videos that they were able to identify 9 out of 11 of the terrorist who attacked Paris. Just guessing here, but if you train your AI for example on photos of the terrorists responsible for 9/11, this is to be expected. No, not because terrorist share a certain phenotype, but because they were all Arabs!  So the software is not any better that ordinary right-wing people. Or wait, it is even worse, because these days most people believe in predictions made by new technology, regardless of how absurd the underlying theory may be.

Another claim by  Faception is that their "accuracy" is between 70% and 80%. This is an incomplete statement: does this refer to correct positives or correct negatives? Let's assume they mean correctly identified people, so positives. Then that means that more than 2 in 10 people will falsely be accused of being a terrorist. This is certainly not a number that should make any sentient being boast about it!

There will be many governments who will gladly embrace this new technology to ensure safety and "protect our freedom". Imagine this technology being installed on airports, how many people will  mistakenly be denied to board their flight? Or regimes like Turkey, who already arrest people for mere suspicion without a trial: this software will give the a great excuse to move this to an entirely new level.

Unfortunately, there is not a lot of reaction all this in the media, no people rallying against this extremely improper us of technology on the basis of a "science" borrowed from the Nazis. What a shame!


O2 bekommt es einfach nicht auf die Reihe

Vor einiger Zeit habe ich eine Störung im Handynetz unsere Ortes bei O2 gemeldet - bzw. wollte ich das. Damals hatte ich bei uns im Ort kein Netz, sobald ich aber im Nachbarort war, funktionierte alles einwandfrei. Auch Nachbarn hatten exakt dasselbe Problem. Die Hotline riet mir, mein Handy neu zu starten, und sogar, es einmal komplett zu löschen und neu einzurichten. Denn sie hätten keine Störungsmeldung, also liege es wohl an meinem Gerät.

Klar hatten sie keine Störung vorliegen, wenn man alle Anrufer so abwimmelt!

Dass mein Telefon an anderen Orten ja einwandfrei funktionierte, interessierte nicht. An der Hotline werden Scripte von menschlichen Automaten abgearbeitet. Mitdenken verboten.

Nun haben wir bei uns mal wieder eine solche Störung. Keiner meiner betroffenen Nachbarn wollte bei der Hotline von O2 anrufen. Ich muss zugeben: ich auch nicht.

Immerhin gibt es eine Verbesserung: unter https://www.o2online.de/service/netz-verfuegbarkeit/netzstoerung/ kann ich sehen, dass O2 von der Störung weiß.

Die Meldung lautet lapidar: "In diesem Bereich kann es Probleme beim Telefonieren und Surfen geben. Wir arbeiten daran und bitten um Ihr Verständnis."

Das bringt mir aber wenig: seit 2 Wochen (!) kann man hier am Ort nicht mit O2 telefonieren, und die Meldung ist ebenfalls seit 2 Wochen unverändert.

Für mich und meine Nachbarn ist klar: nie wieder O2!


Der Erdogan aus Ingolstadt

Wir müssen nicht immer weit schauen, um bedenkliche Menschenrechtsverletzungen zu finden.

Türkei? Viel näher: Bayern!

Seit dem 1. August kann man hier nämlich Terrorverdächtige ohne Anklage beliebig lange einsperren. Nur alle drei Monate muss ein Richter mal kurz prüfen, ob der Verdacht noch ausreicht.

Tja, wer einen Seehofer hat, braucht eigentlich gar keinen Erdogan.

Mal sehen, wann Bayern die EU verlassen muss, weil sie mit deren Werten nicht mehr übereinstimmen ..

Gesichtserkennung in Berlin

Warum testet Thomas de Maizière (gerade jetzt) die Gesichtserkennung? Na klar, es ist mal wieder Wahlkampf - nichts anderes:

Bei einer Laufzeit von 6 Monaten ist die Wahl schon längst vorüber, bevor Ergebnisse feststehen. In der Zwischenzeit kann man aber prima das "Sicherheitsbedürfnis" gewisser Leute bedienen.

Dass dabei nichts herauskommen kann ist von vorneherein klar: in den USA wurde dies ebenfalls getestet, die Erkennungsrate war so schlecht und das Austricksen so leicht, dass sogar die "sicherheitsbewussten" Amerikaner dies wieder abgeblasen haben. Aber klar, de Maizières Truppe kann das sicher besser ...

Also alles nur Wahlkampfgetöse, und das sinnlose Projekt aus Eitelkeit (vgl. Dobrindt / Autobahnmaut) doch umgesetzt werden, wird es aufgrund der unzureichenden Systeme zu vielen falschen Verdächtigungen kommen, wobei die Opfer oft nicht einmal wissen werden, wodurch sie ins Visier der Behörden geraten sind; vgl. No-Fly-List oder der Ausschluss von Journalisten vom G20 Gipfel- es passiert schon heute öfter als man denkt.


Verbot von Verbrennungsmotoren - zu kurz gedacht

Das Elektroauto wird von der Politik als Allheilmittel (oder Neudeutsch Silver Bullet) angepriesen. Verbrennungsmotoren sollen dagegen verbannt werden. Da spielt die Poltik leider in einer Liga, in der sie nichts zu suchen hat. Umweltworgaben und Emissionsgrenzen, ja bitte, aber doch keine technischen Vorgaben, von denen Politiker nichts verstehen!

Warum Verbrennungsmotoren nicht per se schlecht sind: bei der Verbrennung von z. B. Wasserstoff entsteht nur Wasser. Was soll daran denn schlecht sein? Überflutungsgefahr?

Warum E-Autos nicht per se gut sind: die Akkus erzeugen durch die verwendeten Materialien Umweltprobleme und evtl. auch internationale Konflikte um rare Rohstoffe, an die anscheinend niemand denken mag. Zudem ist es nicht umweltfreundlicher, wenn der Auspuff am Auto durch einen größeren Auspuff am Kraftwerk ersetzt wird.

Etwas mehr Voraussicht und Nachdenken und weniger Glaube an die eigene Allwissenheit stünde der Politik gut zu Gesicht.

Ach ja, da war neben den Emissionen durch die Verbrennung ja auch noch der Feinstaub. Mehr als 30% des Feinstaubs im Autoverkehr entsteht nicht durch die Verbrennung, sondern durch Abrieb, z. B. von Reifen. Da denkt aber noch niemand über Alternativen nach.

In Städten verursacht der Verkehr übrigens nur ca. 20% des Feinstaubs. Ich kann aber nicht erkennen, dass bei den übrigen Quellen (oder überhaupt) das Thema angegangen wird. Es wird nur fleißig gemessen und über Grenzwerte diskutiert.

Wenn wir also alle Autos auf E-Autos umstellen, sparen wir in den Städten weniger als 15% Feinstaub ein. Liebe Politik, und nun?

Diesel-Gipfel? Dies ist der Gipfel!

Alleine, wer zum sogenannten Diesel-Gipfel nicht eingeladen war, widerspricht Dobrindts oft wiederholtem Statement, dass es keine "Kungelei" zwischen Politik und Autoindustrie gebe: es fehlten Umweltverbände und Verbraucherschützer. Wenn Dobrindt es aber noch ein paarmal wiederholt, wird es schon noch wahr werden ...

Es gab also mal wieder einen "Kompromiss", der alleine mit der Autoindustrie verhandelt bzw. von dieser diktiert wurde. So wie ja bisher auch die Gesetzestext von dieser entworfen, und im Ministerium mehr oder weniger abgenickt wurden.

Entsprechend ist auch das Ergebnis, das wohl Dobrind ganz allein feiern muss:
Software-Updates, die maximal 25% weniger Ausstoß von COx schaffen, und die für den Autobesitzer nicht verpflichtend sind, sprich: es werden bei weitem nicht alle Autos das Update erhalten.

Gut, diese Maßnahme greift einfach zu kurz - das zweite Ergebnis hingegen ist eine Unverschämtheit für jeden halbwegs intelligenten Bürger: Eine Abwrack-Prämie II, die Käufer dazu bringen soll, alte Dieselfahrzeuge durch neue zu ersetzen. Warum das eine Frechheit ist:

  • die neuen Fahrzeuge sind - wenn überhaupt - nicht wesentlich besser
  • die "Prämie" kann leicht "eingepreist" werden
  • die alten Fahrzeuge werden in Länder, in denen es noch weniger rechtliche Bedingungen gibt, als in Deutschland, mit Gewinn weiterverkauft
  • insgesamt verkaufen die Hersteller damit also mehr Dieselfahrzeuge
Das ist keine Umweltschutzmaßnahme, sondern ein Konjunkturprogramm für die Autoindustrie!

Also, wer hier an Kungelei denkt, hat Dobrindt doch einfach nicht richtig zugehört. Sprechen wir ihm also nach: "Für Kumpanei stehe ich [Dobrindt] nicht zur Verfügung!". Gut, dass das jetzt ein für allemal geklärt ist.


Al Bundy on Trump

A slight variation of a scene of "Married ... with Children":

Quiz Master: Who would you rather believe is telling the truth? A, President Mr Trump, or B ...
Al Bundy: B!


Warum ich den neuen Thermomix nicht mag

Vor ca. 12 Jahren ließ sich meine Frau den Thermomix (damals der TM31) vorführen und war ganz angetan, fand aber den Preis recht hoch. Damals war ich es, der für den Kauf plädierte, weil mich das Gerät voll überzeugte und ich die Qualität von Vorwerk bereits kannte. Und so zug er in unsere Küche ein, und wir beide nutzten ihn sehr häufig und zu unserer Zufriedenheit.

Dann ließ sich meine Frau kürzlich das neue Modell (TM5) vorführen. Diesmal war sie begeistert und wollte den alten (immer noch funktionierenden) ersetzen. Ich, obwol mehr als technik-begeistert, war allerdings völlig dagegen, weil ich die neuen technischen "Raffinessen" nicht nur als nicht hilfreich, sondern sogar als störend empfand!

Nun gab unsert "alter" leider kürzlich den Geist auf (life is a bitch), und da man das alte Modell nicht mehr kaufen kann, musste es notgedrungen das neue sein. Ich muss leider sagen, dass sich meine Befürchtungen bestätigt haben.

Zunächst einmal zum großen, offensichtlichen Feature: Guided Cooking. Es gibt nun Kochbücher auf einem Speicher-Chip zu kaufen, oder man kann den Cook-Key über das WLAN mit dem Cookiedoo-Portal von Vorwerk verbinden, und von dort Rezepte auf dem Chip speichern. Damit führt der TM5 mit Touchscreen Schritt für Schritt durch das Rezept. Wa mir nicht gefällt:

  • Eigene Variationen von Rezepten, oder gar ganz eigene Rezepte lassen sich nicht abspeichern. Man kann sich elektronische Notizzettel abspeichern, davon bleiben aber die Anweisungen unbeeinflusst.
  • Eine Verbindung zur Rezeptwelt ist nicht möglich.
  • Die Kochbücher kosten ca. 40€, der WLAN Stick (Cook Key) kostet 130€, wobei man zur Nutzung noch ein Abo auf Cookiedoo abschießen sollte, das pro Monat 3€ kostet.
  • Ich koche gerne und kreativ. Dafür ist mit den elektronischen Rezepten leider kein Raum mehr. Vor dem Kochen einmal durchlesen und den Ablauf selbst planen? Fehlanzeige! Ich bin noch nicht so alt und senil, dass ich "Begleitetes Kochen" benötige!

Was mir sonst nicht gefällt:

  • Der Aufsatz fürs Dampfgaren ist nun komplett aus Plastik, beim alten war noch ein Teil Metall. Erstens gibt Plastik (speziell bei hohen Temperaturen) Chemikalien ab, zum anderen verträgt das Platik die hohen Temperaturen in der Spülmaschine nicht ganz, der Aufsatz kann sich schon mal verziehen. Verstehe ich zwar nicht ganz, da es in der Spülmaschine im Gegensatz zum Dampfgaren nie auch nur annähernd 100°C gibt, ist aber leider so.
  • Der Deckel lässt sich nun (nur noch) elektrisch verschließen. Für mich nur eine zusätzliche mögliche Fehlerquelle, laut Vorwerk aber ein Vorteil für Personen mit Arthrose, denen der manuelle Verschluss zu schwergängig war.
  • Der Verschluss unten zum Arretieren des Messers ist deutlich schwergängiger als vorher, meine Frau kann ihn nur mit äußerster Anstrengung öffnen und schließen. Das widerspricht irgendwie dem Argument mit den Arthrose-geplagten Benutzern.
  • Die Dichtung ist nun fest mit dem Deckel verbunden, d. h. sie ist weniger leicht zu reinigen, und nur inklusive Deckel austauschbar.

Doch es gibt auch Dinge, die mir gefallen:

  • der Topf und der Aufsatz sind größer, so dass man auch eine 4köpfige Familie satt bekommt
  • das Messer lässt sich leichter einsetzen, da es mehrere Stellungen gibt, in denen es sich durch den Topfboden stecken lässt.

Sorry, aber mehr Positives ist mir nicht aufgefallen.

Mein Fazit: mehr Funktionen, die ich leider nicht brauche, (dadurch?) höherer Preis, Verluste an Qualität und Wartbarkeit.

Ich will meinen TM21 zurück! Bevor ich ihn endgültig zu Grabe trage, werde ich anfragen, ober er repariert werden kann. Der neue kommt dann in den Keller.

Wie gesagt, ich bin eigentlich ein Techie, aber hier finde ich die technischen Features nicht nur unangebracht, sondern ausgesprochen störend. Schade!

Nachtrag 24.6.17: ein neuer Topf hat Abhilfe geschaffen. Ich habe meinen TM31 wieder :-)

Trump Not Exactly Teflon-Coated

There are many politicians around who seem to be Teflon-coated: people throw dirt at them, but nothing seems to stick. It is almost a prerequisite to being a politician.

PresidentMr Trump's strategy is different altogether, not surprisingly so considering him not being a politician.

Rather than being Teflon-coated, he seems to wear a pig's skin: you can throw dirt at him (if he does not do it all by himself already), and it sticks. But because of all the dirt that is already sticking there, it does not seem to matter much - or nobody seems to care - or at least he does not give a s***.


Google In App Billing - A Royal Pain In The A**

So, I have played around with Google's In App Billing for a while, an here's why I will abandon it:

  • You need to add a "developer payload" to each purchase to prevent piracy, which by the way is pretty widespread on the Android market.
  • The payload should obviously not be tied to the device (the user might get a new one, but wants to keep the purchased items), but it must be tied to the user ID, otherwise hackers will just "replay" network traffic and get items for free.
  • This means that I need to get the user's identity (additional permission required, which may scare off users), or I have to make users sign up on my own server (again, additional permission for networking required)

Google, through their Play Services, which handles the billing, already have the user's identity. So, in my view, their API should provide this kind of security. Why do they impose the burden on the developers, and force them to request extra permissions? This makes no sense at all!

So, I am going back to providing a free version and a "pro" version, thus avoiding the above hassle.

Why am I not using ads to monetize my app? Well, there have been too many malicious ads, and I do not want to put my customers at risk. I need their trust!


Trump is Indeed Creationg New Jobs

At first I thought he was killing jobs, namely those of comedians, whose jobs are now reduced to just repeating what Trump said - not very creative any longer.

So they lose their jobs, but on the other hand, less talented would-be comedians can now find employment. After all, the task has been made pretty simple.

In the end, even Trump could become a comedian - if he did not currently hold a positions as "president", and, of course, if he were not so full of self-importance. You could just add canned laughter to all of his speeches, and there you have a new sitcom. I would prefer him as a comedian, but I afraid, he remains dangerous.

Too bad. I continue to wake up each morning with a funny feeling in my stomach and the question in mind "What did he do now?".


Trump Has Been Treated So Unfairly

Trump, speaking to graduating Coast Guard cadets, said: "No politician [...] has been treated worse [...]". See here for a little whining video footage.

While Trump deserves credit for correct grammar  in this sentence, it is otherwise completely besides the facts. Let me try to correct with little changes:

  • No politician has been treated worse. 
  • No politician has been treated worse.
  • No politician has been treateding the media [or truth, or whatever you choose ...] worse.


Merci à la France

Dear French fellow-Europeans, thank you so much for voting pro-Europe!

While 35% for a far right nationalist party is still way too much, I am really glad that a majority voted for Macron, despite all the bogeyman vision that Le Pen tried to plant into people's minds.

This is a perfect first step to strengthen Europe, but there are two more that need to be taken:

  • France will need to elect a parliament that will work with Macron, not against him - this may prove difficult
  • And it will be even more difficult to get support from Merkel/Schäuble. They would have to give up their austerity politics, which would be great for both, Europe and Germany. The fetish of "zero debt" needs to fall.
I am afraid that the current German government is too stubborn to grasp this opportunity. We can only hope for a new, pro-European government after the upcoming elections in Germany. Not very likely though, I think.

So many "ifs" and too many stumbling stones. Making Europe stronger (should I say "great again"? ;-)) is currently not a safe bet, to say the least.

Big sigh! But never give up hope.


Error in Windows 10 Update When user Data Is On Second Harddrive

I described in a previous post how you can separate user data from the system disk. As already mentioned in this post, this can cause errors with updates. However, I had not anticipated issues with version upgrades within Windows 10 itself. Well, the Creator Update presented me with an issue, and here is how to solve it.

If you encounter an error with a Windows update after having separated user data from the system disk, check whether the issue is indeed related to this change:

  • you most likely received "Error 0x8007001f"
  • check the log file: C:\$WINDOWS.~BT\Sources\Panther\setuperr.log - you will find an entry like this: Cannot add mapping for user profile C:\Users\

If the above check indicates that you have the same issue as me, there are several options to solve it, the most obvious one being to revert the process and move the use data back to the system disk.

However, that means to move a ton of data, which may may not even fit on the system disk - after all, there had been a need to separate them in the first place. So I went for this much quicker solution:

  • open Regedit
  • look for the key "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList"
  • Here you will find a number of sub-key that look like "S-1-5-21-You will only have to look at those keys, which are longer than just "S-1-5-18" - these represent your users, the short ones are system accounts that you do not want to touch
  • Each of these keys contains a value named "ProfileImagePath", which points to the user's directory. If you followed the intructions from my previous post, the values willlook like "C:\Users\SomeUserName"
  • Change each of the to point to the "real" user's direcrory, not going hrough the link on C:, for example "D:\Users\SomeUserName"
  • After changing all the users (it is not good enough to just change the current one), run the Windows update again

Chances are it will work this time :-) And if not, you probably end up with an issue that is not related to having moved user profiles to the second disk. If you do indeed encounter other issues (lucky me, I did not), you may find this post helpful.

Finally, after the update you may want to go through the previous post again, as the update kills the link to the Users directory.


Warum YouTube das Fernsehen ablöst

Klar, auf Youtube kann man jederzeit schauen, was einem gefällt. Es gibt aber auch eine Menge Stuss, und bis man etwas sehenswertes findet, kann es schon dauern ...

Warum also schauen Kinder und Jugendliche mehr YouTube als Fernsehen, auch wenn das Angebot gar nicht so toll ist? Einfach, weil Eltern zwar den Zugang zum Fernseher leicht regulieren können.

Aber Kontrolle am Handy? Ich habe ja nur WhatsApp-Nachrichten geschaut ...

Und Nachts im Bett ist das Handy sowieso viel handlicher als ein Fernseher und lässt sich besser verstecken.

Also, wie lästig: jeden Abend Handys einsammeln. Seufz!


Das dümmste Gesetz Deutschlands

Ob man es nun Ausländermaut nennt, oder Infrastruturabgabe - ein Gesetz, das allein der Befriedigung des Egos der CSU (oder besser: des ganz perönlichen Egos Seehofers) dient, und dabei so unausgegoren ist wie dieses: so eine Unverschämtheit habe ich bisher noch nie erlebt. Hoffentlich ist das kein Indiz füe die Richtung, die unsere Politik eingeschlagen hat - obwohl genau das zu befürchten ist.

Eigentlich geht es hier um die Kombination zweier Gesetze, die Infrastrukturabgabe, und die Betreibergesellschaften für Autobahnen. Zu letzterem weiter unten.

Schauen wir die Infrastrukturabgabe mal genauer an:

Die erste Fassung wurde 2016 vom EUGh auf eine Klage der EU Kommission hin abgelehnt, weil sie eindeutig Ausländer benachteiligte: die Deutschen hätten die Gebühren durch die Senkung der KfZ-Steuer auf Umwegen zurückbekommen.

Die neue Fassung von 2017 tut dies zwar noch immer, aber sie begünstigt umweltfreundliche Fahrzeuge, so dass die EU nicht mehr einschreiten will.

Man merke: "umweltfreundlich" in diesem Zusammenhang heißt, weniger CO2-Austoß im Verhältnis zum Fahrzeuggewicht, also ist ein Q7 umweltfreundlicher und damit günstiger als ein Smart. Dazu muss man wohl nichts mehr weiter sagen.

Dass der deutsche Autofahrer damit dennoch die Maut auf Umwegen zurückbekommen, spielt augenscheinlich nun keine Rolle mehr. Was da hinter den Kulissen abgelaufen ist, wüsste ich zu gerne!

Dass die Maut mit allen Ausgaben zur Verwaltung für den Staat eher ein Verlustgeschäft und bestenfalls kostenneutral sein wird, ist nahezu unbestritten.

Was machen die Länder? Sie hätten das Gesetz vor den Vermittlungsausschuß bringen können, aber ausgerechnet das rot-rot-grüne Thüringen hat zugestimmt! Nach einer Intervention von Seehofer. Man wird in den nächsten Monaten sehen, was sie dafür als Gegenleistung bekommen. Kleiner Tipp: es geht um den Länderfinanzausgleich.

Man kann nur hoffen, dass Österreich die Klage vor dem EUGh durchzieht, denn der würde die Maut sicher wieder ablehnen: schließlich haben sich die Fakten unwesentlich geändert, nur ist die EU Kommission als Kläger weggefallen, und ohne Kläger kein Richter. wer hätte gedacht, dass Österreich mal die letzte Hoffnung sein sollte, deutsche Stammtischpolitik zu stoppen?!?

Sollte die Maut doch kommen, dann kann ich den deutschen Autofahrern nur viel Glück wünschen, denn damit kommen wir zum zweiten Gesetz im Bunde, der Auslagerung der Autobahnen an private Betreibergesellschaften:

Die Politiker versprechen zwar, dass es keine Mehbelastung geben werde - gleichzeitig privatisieren sie aber die Autobahnen (OK, formal zwar nicht, aber darauf läuft es hinaus), und die Betreibergesellschaften werden gewinnorientiert arbeiten. D. h. die Maut wird über kurz oder lang von diesen erhöht werden

Dann gibt es aber keine weitere Entlastung vom Staat, denn der hat die Maut ja nicht weiter erhöht - das war die böse Betreibergesellschaft.

Und sollte die Betreibergesellschaft trotzdem Pleite gehen, kein Problem: da es sich hierbei ja um eine Öffentlich-Private-Partnerschaft handelt, zahlt dann der Staat, also der Steuerzahler.

Was machen die Länder diesmal? Sie lassen sich vom Bund ihre Autobahnen für 10Mrd Euro abkaufen.

Für Investoren ist dies ein echter Glücksfall, eine risikolose Anlage; wenn es gut geht, gibt es Renditen um die 20% (z. B. Autobahnbetreiber in Frankreich), umd schlimmstenfalls zahlt die Zeche ein anderer.

Na, gab es solch ein Ausverkaufs-Gesetz schon je zuvor?

P.S.: Privatisierung ist doch gut? Stimmt, das ist bei Energie, Post, Telekom, Bahn und Gesundheitswesen  ja perfekt gelaufen.
adaxas Web Directory