Archiv des Autors: Markus Korth

Auf dem Weg zum Barista

Eine kleine Montags-Geschichte:

Seit unserem Umzug in schöne, neue Böroräume haben wir Luxus Kaffeevollautomaten. Bedauerlicherweise sind sie ein wenig wartungsintensiv.
Heute morgen hat eine der Maschinen eine Fehlermeldung geschmissen. Ich habe den Support angerufen; der hat mich auf ein erweiteretes Wartungsmenü hingewiesen, in welches man nach Drücken einiger Knöpfe und Tasten gelangen kann. Dort solle ich dann einen bestimmten Menüpunkt aufrufen.

Ich rufe also das Menü auf: Das Wartungsmenü begrüsst mich direkt mit „1 = Deinstallation, 2 = Neuinstallation“.
WTF? Ich rufe wieder den Support an:

Ich: „Er fragt mich jetzt nach Neu- oder Deinstallation?!“
Support: „Ja, sie müssen da natürlich ‚Latte Macchiato‘ drücken!“
Ich: „Aber natürlich, Latte Macchiato. Hätte ich wissen müssen.“
Support: „Ja, und danach dann Capuccino Plus. Sie drücken so lange Cappucino Plus, bis Sie beim Menüpunkt ‚Brüherreiniger mit Reiniger‘ sind.“
Ich: „Aha, Cappucino Plus. Brüherreiniger mit Reiniger – hört sich lustig an. Und dann drücke ich wieder ‚Latte Macchiato‘?“
Support: „Nein, dann müssen Sie natürlich ‚Espresso‘ drücken.“
Ich: „Äh…klar. Logisch. Ich versuche das mal und melde mich ggf. nochmal…“

Windows Phone, II

Als ich seinerzeit im März mein Windows 10 Phone erhalten habe, wollte ich eigentlich eine Story daraus machen: Überzeugter Linux Nutzer auf Abwegen.
Irgendwie wurde da nichts draus. Und jetzt lohnt es nicht mehr: Microsoft hat Windows auf Smartphones den Laufpass gegeben.
Ich muss zugeben: Ich bin darüber traurig. Ich habe iOS, Android und Windows 10 auf dem Telefon gehabt – und keines hat mich so überzeugt wie das Betriebssystem aus Redmond. Alles passte zusammen, wirkte wie aus einem Guss, die Bedienung hervorragend, konsistent und einleuchtend.
Und nun ist es bald vorbei.
Aus der Geschichte wissen wir ja, dass sich nicht immer Qualität durchsetzt (die älteren unter uns erinnern sich noch an Betamax, VHS und weitere…).

Einen ersten Vorgeschmack gab es schon: Napster, meine Beschäftigung für langweilige Zugfahrten, lief nicht mehr richtig: Die Suche sagte immer: „Keine Treffer gefunden“. Nach Aktivierung des Debug Modus und des Protokolls habe ich gesehen: Der API Key ist nicht mehr gültig. Es sieht so aus als habe Napster sofort nach Ankündigung Microsofts die Handbremse gezogen.
*Grmpf*
Ich werde noch – solange es geht – das Telefon weiter verwenden und mich daran erfreuen. Mit Spotify. Wenn das auch nicht mehr geht kommt Deezer. Und wenn das nicht mehr geht ein 20GB Tarif und Youtube. Danach? Ich denke da mal später drüber nach…

Schade, Microsoft. Ich habe Euch oft schlimme Krankheiten an den Hals gewünscht, aber in diesem eine Falle hattet Ihr wirklich Erfolg verdient.

mod-fastcgi und FastCGIExternalServer

Beim Einrichten eines Webservers habe ich mir Gedanken gemacht zur Direktive ‚FastCGIExternalServer‘. Auf hunderten von Seiten wird sie referenziert und verwendet, aber nirgendwo die Funktion oder die Parameter erklärt.

Hier ist die fehlende Dokumentation nun:

 

 

FastCgiExternalServer

Syntax: FastCgiExternalServer filename -host hostname:port
[option ...]
FastCgiExternalServer filename -socket filename [option ...]
Context: server config

The FastCgiExternalServer directive defines filename as an external FastCGI application.  If filename does not begin with a slash (/) then it is assumed to be relative to the ServerRoot.  The filename does not have to exist in the local filesystem.  URIs that Apache resolves to this filename will be handled by this external FastCGI application..

External FastCGI applications are not started by the process manager, they are presumed to be started and managed „external“ to Apache and mod_fastcgi.  The FastCGI devkit provides a simple tool, cgi-fcgi,  for starting FastCGI applications independent of the server (applications can also be self-starting, see the devkit).

-appConnTimeout n (0 seconds)Unix: The number of seconds to wait for a connection to the FastCGI application to complete or 0 to indicate a blocking connect() should be used.  Blocking connect()s have an OS dependent internal timeoutIf the timeout expires, a  SERVER_ERROR results.  For non-zero values, this is the amount of time used in a select() to write to the file descriptor returned by a non-blocking connect().  Non-blocking connect()s are troublesome on many platforms.  See also -idle-timeout, it produces similar results but in a more portable manner.
Windows NT: TCP based applications work as above.  Named pipe based applications (static applications configured without the -port option and dynamic applications) use this value successfully to limit the amount of time to wait for a connection (i.e. its not „troublesome“).  By default, this is 90 seconds (FCGI_NAMED_PIPE_CONNECT_TIMEOUT in mod_fastcgi.h).-idle-timeout n (30 seconds)The number of seconds of FastCGI application inactivity allowed before the request is aborted and the event is logged (at the error LogLevel).  The inactivity timer applies only as long as a connection is pending with the FastCGI application.  If a request is queued to an application, but the application doesn’t respond (by writing and flushing) within this period, the request will be aborted.  If communication is complete with the application but incomplete with the client (the response is buffered), the timeout does not apply.-flush noneForce a write to the client as data is received from the application.  By default, mod_fastcgi buffers data in order to free the application as quickly as possible.-host hostname:port
none
The hostname or IP address and TCP port number (1-65535) the application uses for communication with the web server. The -socket and -host options are mutually exclusive.-pass-header header noneThe name of an HTTP Request Header to be passed in the request environment.  This option makes available the contents of headers which are normally not available (e.g. Authorization) to a CGI environment.-socket filename noneUnix: The filename of the Unix domain socket the application uses for communication with the web server.  The filename is relative to the FastCgiIpcDir.  The -socket and -port options are mutually exclusive.Windows NT:  The name of the named pipe the application uses for communicating with the web server. the name is relative to the FastCgiIpcDir.  The –socket and  -port options are mutually exclusive.

 

Auf Abwegen

Seit vielen Jahre benutze ich ausschliesslich Android Smartphones. Ein iPhone war mir immer zu teuer (so viel sind mir Smartphones einfach nicht wert), Alternativen zu esoterisch oder expermentiell.

Jetzt habe ich etwas getan, was ich selbst nicht für möglich gehalten hätte: Nach Jahren des Windows-Verweigern und Microsoft Bashings habe ich mir doch tatsächlich ein Windows Phone gekauft. Ja, ich weiss, das System, stirbt gerade – vielleicht ist das aber auch genau der Grund, warum ich auf diesen Zug aufgesprungen bin: Ich habe eine Schwäche für Aussenseiter und Underdogs. Ausserdem mag ich die Vielfalt; das war der Grund, warum ich so viele Jahre mit einer Microsoft Monokultur nichts anfangen konnte. Nun gilt es aber, Windows Phone zu retten.

 

Das Ganze kam übrigens so: Während einer Zugfahrt las ich einen Artikel in der c’t zum Thema „Große, günstige Android Phablets“. Ausser Konkurrenz sozusagen wurde dort auch das Microsoft Lumia 950 XL erwähnt und von seiner Kamera und CPU geschwärmt. Nach einen kurzem Preischeck war mir klar: Für den Knallerpreis muss ich das Gerät haben. Schnell noch die Verfügbarkeit der typischen von mir benötigten Apps und deren Alternativen abgeklopft und raus ging die Bestellung.

Nun ist es hier und ein eingefleischter Linux- und Androidbenutzer macht sich an eine Migration und Umstellung.

Mein erster Eindruck vom Lumia 950 XL war aber eher enttäuschent: Es fühlt sich irgendwie…billig an. Es ist leicht – das ist gut wenn man es in der Hand halten muss, dadurch wirkt es aber auch wie aus Yoghurtbecher-Plastik. Die Knöpfe an den Seiten sind wackelig und billigst – sie wirken nicht so als würden sie viele Schaltzyklen durchstehen. Zum Einsetzen des Akkus sowie der Sim und optionalen Speicherkarte muss man den Rückendeckel mit den Fingernägel aufknibbeln. Nichts mit staub- und spritzwasserschutz, aber dafür kann man den Akku auch ohne Elektronikkenntnisse tauschen. Alles geht wohl nicht…

Ich habe beschlossen, mich für diese Testphase ganz in den Microsoft Schoss zu begeben und das Gerät so zu verwenden, wie der Hersteller es gerne hätte: Mit Cortana, die an meinen Lippen klebt, mit OneDrive, Edge und schlappem Datenschutz. Abklemmen kann ich es immer noch, erst möchte ich sehen, wie es „as intended“ funktioniert.

Ich mache mich dann mal an die Einrichtung und werde bei nächster Gelegenheit ein kleines Update posten.