not quite minimalistic enough  

2018-10-13

Yes. Another one.

Let’s have another (little) Python packaging rant. It’s been a while.

I just made a mistake. I thought I had told my deployment software to remove a Python installation, when I had actually only removed one third-party package that I had repackaged as MSI. Then I deleted the whole installation directory (which I believed had only leftover bits).

Oops. How do I clean this up?

Well, let’s just install the whole thing again, from the original – shudder – burn bundle.

Won’t work. Takes but a second, then claims success. No wonder, all the metadata is still there; for the bundle it looks like all its little constituent parts are already installed.

So we uninstall the bundle? Error 1603.

So we repair it? Gets up to pip (having done nothing to the actual file system), then fails, “no installation detected”. You don’t say.

Fix? Download the whole set of MSIs, install them in an order that works, uninstall them in reverse order, then install the bundle and uninstall it again.

Ceterum censeo: This mess would have been avoided had I thought before typing. OTOH, it also would have been avoided by using MSI as the distribution package format because then a repair installation would have actually worked.

2018-10-04

Weltschmerz

Currently converting a Django project that was using ZPT via Chameleon to Django’s own template language.

No, I don’t think this is a good idea.

Unfortunately, Django’s developers make it increasingly difficult to generate XHTML, and recent versions have essentially made it impossible without rewriting a good bit of the framework itself.

For some reason, the Django project has decided to embark upon a crusade against XHTML, and my poor little ZPTs are its victims.

Honestly now. Which is better?

This:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:tal="http://xml.zope.org/namespaces/tal"
      xmlns:metal="http://xml.zope.org/namespaces/metal">
...
<body>
<h1 tal:content="section"/>
<p tal:repeat="item items" tal:content="item.label"/>
...

Or this:

<!DOCTYPE html>
<html>
...
<body>
<h1>{{ section }}</h1>
{% for item in items %}
<p>{{i item.label }}</p>
{% endfor %}
...

When done adequately, ZPT are well-formed XML. When done correctly, they are valid XHTML (the templates themselves, not just [but also!] their output).

Django templates, on the other hand, are line noise when done completely wrong, and still line noise when done “right”.

2018-09-25

I'll just keep talking here ...

Imagine you work in a support call center, and right now have to try and make yourself understood to callers over the earsplitting speakers above you –

Bong! Bong! Attention! Attention! An incident has been reported within the building. Please wait for further announcements.

Over, and over, and over again, all the time.

If this is not difficult to imagine, because you are living it right now, then you work at Bloomberg.

2018-09-22

A short leave from normality.

I’m tempted. My current face is getting a bit worn out.

Schnabelschnabel

Der Einfluß der deutschen Mundart auf die Verteilung von Namen für allerlei technisches Spielzeug ist nicht zu unterschätzen. Nach dem großen Erfolg des Mobiltelefons (»Hänn di doch die Schnur vergeß’!«) kommt nun aus dem sogenannten »Smart Home«-Sektor der nächste Aspirant.

AVMs neues »FRITZ!OS 7.01« unterstützt nun den »herstellerübergreifenden Standard DECT-ULE/HAN-FUN« (von »mir ha’n Fun!«).

Na bravo.

2018-09-16

Da dreh' ich doch lieber am Rad

Hm. Das könnte man jetzt natürlich so interpretieren, daß Amazon künftig für jede Anweisung einzeln – und großzügig – bezahlt werden will.

Hätte sich vielleicht nochmal jemand anschauen können, das Design.

class Rock extends Throwable

Q: What do you call things that can be delivered by ballistae?

A: Usually, “ballista balls”. If you’re an audiobook narrator who tends to imprecise pronunciation, however, “ballistables” is also an option.

2018-09-13

Jetzt oder ... nie?

So, so, die SPD fordert jetzt also “ultimativ” die Entlassung von BfV-Präsident Maaßen. Da wäre es doch ganz nützlich, mal zu erfahren, worin das “Ultimatum” denn besteht. Oder nicht, liebes tagesschau.de?

Leider – und nicht unerwartet – läßt der Artikel diese Frage sperrangelweit offen. Das einzige Zitat zum Thema beschränkt sich auf die Erkenntnis, daß “völlig klar” sei, daß “Maaßen gehen muß”.

Wenn das ein Ultimatum sein soll, dann kann ich es nur so verstehen, daß die SPD damit droht, kräftig mit dem Fuß aufzustampfen, wenn ihre Forderung nicht erfüllt wird.

(Oder ist das mit-dem-Fuß-aufstampfen seit gestern auch nicht mehr gesellschaftsfähig?)

2018-09-11

Doctor, it hurts when I do that.

“Whenever I click into this field, the application crashes.”

“Have you tried moving into it with the keyboard?” (Tab from the previous field.)

“…”

“Oh, it works!”

In a mirror, everything is twice as long.

Old:

co mi a p 1:22
...
co mi d por 1:22

New:

mo s 1 s i ge1/0/36
...
no mo s 1 s i ge1/0/36

That is … unwieldy.