Montag, 11. Februar 2019

Apple, die AirPods 2, bitte. Jetzt!

Am 13. Dezember 2016 war es soweit: Dank eines selbstgestrickten Pingdom-Alarms, der um 15:08 Uhr — 8 Minuten nach Verkaufsstart — losging, gehörte ich vermutlich zu den ersten Schweizern, welche Apples kabellose Kopfhörer über deren Online-Shop bestellten. Am 20. Dezember 2016 trafen die Kopfhörer bei mir zu Hause ein — und ohne diese gehe ich seither selten bis nie aus dem Haus.

Aus meiner Sicht handelt es sich bei den AirPods um das vermutlich beste Produkt, welches Apple in den letzten etwas mehr als zwei Jahren herausgebracht hat. Geschlagen werden die Kopfhörer nur von Face ID (mit kleinen Schwächen). Anfänglich von vielen belächelt, sind die weissen Kopfhörer mittlerweile angeblich ein Statussymbol. Während ich im Dezember 2016 als Träger der Kopfhörer klar zu den Exoten im täglichen Pendlerverkehr gehörte, sind die „Stöpsel“ heute allgegenwärtig, vor allem im Grossraum Zürich.

Doch nun wäre es an der Zeit, dass Apple langsam mal die von der Gerüchteküche seit längerem vorausgesagten AirPods 2 veröffentlicht. Nicht, weil man die Dinger viel besser machen könnte (wobei — Apple, überrasch‘ mich!), sondern wegen einem viel trivialeren Problem:

Die Batterien meiner AirPods verfügen nur noch über einen Bruchteil der ursprünglichen Kapazität wenn voll geladen. Oder in Pendler-Distanzen ausgedrückt: Von der Abfahrt des 7:10 Uhr-Zugs von Bern nach Zürich, über Zürich HB, S-Bahn-Fahrt nach Zürich Hardbrücke, stirbt der rechte Kopfhörer jeweils irgendwann auf dem Fussmarsch von Zürich Hardbrücke zu meinem Arbeitgeber; oftmals auf der roten Passerelle über die Pfingstweidstrasse (also ca. um 8:25 Uhr). Der linke Kopfhörer schafft es jeweils höchstens noch bis zum Parking West, und dann ist auch dort Ende Feuer. Das ergibt eine Laufzeit von gut einer Stunde — und somit ein Bruchteil dessen, was frisch gekaufte AirPods liefern (gemäss Werbung halten die Dinger bis fünf Stunden).

Ich habe mir schon überlegt, die Batterien der Kopfhörer auszuwechseln. Das kostet gemäss Apples offizieller Seite knapp 55 Franken (oder insgesamt 110 Franken — bei einem Neupreis von 178.50). Doch damit zögere ich, weil gemäss der Gerüchteküche die neue Version vor der Türe steht. Am 21. März 2019 ist ja bekanntermassen der astronomische Frühlingsbeginn …

Tags: ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 10. Februar 2019

Mit dem Wechsel auf ACS stellt Raiffeisen auch die PDF-Generierung um

Der Kontoauszug für mein Genossenschaftskonto bei der Raiffeisen vom Januar 2019 sieht anders aus als der Auszug vom Dezember 2018. Ich gehe deshalb davon aus, dass nun auch meine Raiffeisen-Bank vom Dinosaurier Dialba weg zum Arizon Core System migriert wurde. Und Francisco sich somit allerspätestens jetzt wohl noch einen Ferrari gepostet hat.

Bei Dokumenten, die bei meinen Banken automatisiert erstellt werden, schaue ich mir mit Apple Preview gelegentlich auch die in das Dokument eingebetteten Meta-Informationen an. Oftmals lernt man so das eine oder andere über die Software, welche im Auftrag der Kernbankenlösung die PDFs generiert.

Dezember 2018 — Dialba

Als PDF-Generator wird „FOP 0.20.5“ eingesetzt und das PDF-Format in Version 1.3 ausgegeben (aktuell wären mittlerweile 1.7 respektive 2.0):

image-8274

Hierbei handelt es sich um eine quelloffene Software namens Apache Formatting Objects Processor, welche XML-Dateien mittels XSL zu PDFs umwandelt.

Januar 2019 — ACS

Als PDF-Generator wird „M/TEXT CS version 6.7.0.476“ über den „OMSAdapter“ eingesetzt und das PDF-Format in Version 1.4 ausgegeben:

image-8275

Der Hersteller des neuen PDF-Generators heisst gemäss Informationen von IBM unter Textmanagement und Dokumenterstellung mit M/TEXT CS 6.8 kühn & weyh Software GmbH aus Freiburg i. Br..

Tags: , , , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 7. Februar 2019

How-To: Smalltalk mit Deutschen

Ein Körnchen Wahrheit mag das Video enthalten (und es ist wohl auch auf die Schweiz anwendbar):

Tags: , , , , ,
Labels: Gesellschaft

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 7. Februar 2019

Bald geht’s wieder los: US-Präsidentschaftskandidaten auf allen Kanälen

Wie passend, dass ein Anbieter von Stock Video-Footage die Werbevideos künftiger potentieller Kandidaten bereits jetzt persifliert:

PS: Der Kandidatendschungel der Demokraten ist erwartungsgemäss schon jetzt riesig. Es wird aber nicht lange dauern, bis die meisten mangels liquider Mittel rausgefault sind.

Tags: , , , , , ,
Labels: USA

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 3. Februar 2019

host löst einen lokalen Domain-Namen auf, wget und Python requests3 hingegen nicht

Vor einigen Tagen habe ich meinen Web-Server im lokalen LAN aufgeräumt und viele Services, welche über eine DynDNS-Adresse gegen das Internet zugänglich waren, deaktiviert. Ab sofort können diese Web-Services nur noch mit einer privaten FQDN à la service.server.location.domain.local aus dem LAN angesprochen werden.

Diese Anpassung führte dazu, dass mein Bluetooth-Scanner, welchen ich auf meinem Raspberry Pi betreibe, seine Scan-Resultate nicht mehr an den Web-Server übermitteln konnte. Ein Python-Script führt auf dem RPi alle 5 Minuten einen Bluetooth-Scan durch, übersetzt die Resultate ins JSON-Format und versendet die Daten dann mit requests3 per HTTP an den Web-Server.

Die Fehlermeldung, die das Script ab der Umstellung ausspuckte, lautete folgendermassen:

$ /usr/bin/python /usr/local/bin/bluelog/bluetooth-scan.py --output api
Traceback (most recent call last):
  File "/usr/local/bin/bluelog/bluetooth-scan.py", line 424, in <module>
    response = requests.post(url, json=macs, auth=HTTPDigestAuth('user','password'))
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 110, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 56, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 488, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 609, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 487, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='service.server.location.domain.local', port=80): Max retries exceeded with url: /index.php (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x75e41b10>: Failed to establish a new connection: [Errno -2] Name or service not known',))

Auf dem RPi eingeloggt funktionierte die Namensauflösung mit dem host-Kommando aber problemlos:

$ host service.server.location.domain.local
service.server.location.domain.local has address 10.1.2.3

Doch als ich die Verbindung zum Web-Server mit wget überprüfen wollte schlug auch das fehl:

$ wget http://service.server.location.domain.local/index.php
--2019-02-02 15:56:22--  http://service.server.location.domain.local/index.php
Resolving service.server.location.domain.local (service.server.location.domain.local)... failed: Name or service not known.
wget: unable to resolve host address "service.server.location.domain.local"

Herumgooglen brachte nicht die gewünschte Lösung. Deshalb griff ich zur nächstbesten Lösung und rief wget mit strace auf. Im Trace dann der entscheidende Hinweis:

$ strace wget http://service.server.location.domain.local/index.php
...
connect(3, {sa_family=AF_UNIX, sun_path="/var/run/avahi-daemon/socket"}, 110) = 0
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fstat64(3, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
write(3, "RESOLVE-HOSTNAME-IPV4 service.serv."..., 55) = 55
read(3, "-15 Timeout reached\n", 4096)  = 20
close(3)                                = 0
...

Was zum Teufel hat der Avahi-Daemon mit /var/run/avahi-daemon/socket im strace zu suchen? Jetzt hatte ich ausreichend Infos, um Google noch einmal zu befragen. Und siehe da:

Is Avahi running or installed? Avahi uses .local domain for its usage and puts its config in /etc/nsswitch.conf. My experience with it, using a .local domain name for my internal use is that it can be a little flaky (for lack of a better technical term), and would show behavior similar to what you are seeing.

Quelle: [SOLVED] resolver weirdness – avahi and .local

Die Lösung war im selben Beitrag gepostet:

/etc/nsswitch.conf

Aus …

...
hosts:      files mdns4_minimal [NOTFOUND=return] dns
...

… wird folgender Eintrag:

...
hosts:          files dns mdns4_minimal
...

Und seither lösen sich auch die .local-Adressen reibungslos auf.

Tags: , , , , , , , , ,
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 3. Februar 2019

Installationsverzeichnis von MacTeX

Die Installation von MacTeX (der LaTeX-Distribution für macOS) findet sich standardmässig in folgendem Verzeichnis:

/usr/local/texlive

Hat man zudem vergessen, welche Version man installiert hat, hilft das Listing des Verzeichnisses:

$ ls -l /usr/local/texlive
total 0
drwxrwxr-x  20 root  wheel  680  1 Jan 19:42 2018
drwxr-xr-x   9 root  wheel  306  1 Jan 19:44 texmf-local

Der Ordner „2018“ signalisiert, dass MacTeX 2018 installiert ist.

Tags: , , , , ,
Labels: Apple, IT

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 30. Januar 2019

Was Trump geflissentlich verheimlicht: Amis fluten mexikanische Grenzstädte

At just one checkpoint in Yuma, Arizona, up to 6,000 Americans cross the border every day and enter the bustling Mexican town of Los Algodones, seeking hea[l]th care.

Los Algodones has to be seen to believed. There are more dentists per capita than anywhere else in the world. […] The community’s economy is built to serve the flood of “dental refugees” — mostly senior citizens from the US and Canada seeking major dental care they cannot afford in their own countries, even with insurance.

One of the reasons dental care is so expensive in the United States is insurance. […] Another cost for US dentists is malpractice insurance, which is not required in Mexico. […]

Dental work in Mexico is on average two-thirds less than in the US and customers may save 80 percent or more on some costly operations. Those savings derive partially from Mexico’s less expensive real estate and labor costs, but also, Mexico’s dentists don’t graduate with a ton of student debt. The government provides basically tuition-free education. “When we get out of school, we have to pay the government, but we do it by one year of free service, and that’s it,” […]

To get an idea of the absurdity, one could argue there are more people currently fleeing the US’s health care system than refugees seeking asylum from extreme violence and state terror in Central America.

Quelle: Millions of Americans Flood Into Mexico for Health Care — the Human Caravan You Haven’t Heard About

Das wiederum …

Approximately 74 million people in the US have no dental insurance, according to the National Association of Dental Plans.

… erschaudert mich auf Anhieb weniger. Der grösste Teil der erwachsenen Schweizer hat auch keine Zahnpflegeversicherung, und der Weltuntergang ist ausgeblieben. Wobei die meisten wiederum eine Unfallversicherung besitzen, die bei Zahnunfällen einspringt. Wer hierzulande längerfristig Geld sparen will putzt sich regelmässig und anständig die Zähne.

Tags: , , , ,
Labels: USA

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 30. Januar 2019

Hotelketten unterteilen sich grob in zwei Geschäftsmodelle

Successful hotel companies create a strong brand and then, to over-simplify matters a bit, either sell franchises (the Motel 6 approach) or sign no-risk management contracts with owners of swanky hotel buildings (the Four Seasons approach).

Quelle: Preparing for a Coming Winter Storm? WeWork Pivots to Minimize Risk for Itself

Ich liebe Motel 6 (USA) sowie Ibis (Europa) — dank solchen Hotelketten weiss man ganz genau, was man bekommt (nicht viel, kein Firlefanz, aber günstig), und muss nicht mehr stundenlang auf Tripadvisor Hotel-Reviews lesen (die sich dann schlimmstenfalls als gefälscht herausstellen).

Tags: , , ,
Labels: Reisen, Wirtschaft

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 30. Januar 2019

Definiere den realen Wert von Flugmeilen und Kreditkartenpunkten

„What I’ve come to believe is miles and points are just a metric for how much of your real life you’re missing. In fact, if you don’t travel that often and therefore don’t have much use for these products and services I’ve listed here then, well, in my opinion you’re doing it right.“

Quelle: Travel Tips from a Guy Who Travels Kinda Often

Tags: , , , , , , , , ,
Labels: Reisen

Keine Kommentare | neuen Kommentar verfassen

Dienstag, 22. Januar 2019

Unwort des Jahres 2019: Nazi?

„Even the Nazis are shouting Nazi at anyone they disagree with …“

Tags: ,
Labels: Gesellschaft

Keine Kommentare | neuen Kommentar verfassen