Die Innovation des Jahres: Videosignale übertragen per W-Lan. Sowas Grandioses. Eine Innovation auf die die Welt gewartet hat.

Und mit X11, VNC, NX, RDP, RTSP und Dergleichen ist der Markt natürlich noch nicht voll genug mit Alternativen. Sodass man davon natürlich unbedingt berichten muss.

Gerne schreibt man den exzessiven Internetnutzern zu, sie seien realitätsfern, sie seien "Kellerkinder", sie hätten kein Leben, keine sozialen Kontakte, und sollten von den Realos lernen.

Aus diesem Grund drängt sich mir bisweilen der Eindruck auf, dass Politiker aller Lager, vor Allem natürlich die älteren und konservativeren Exemplare, die Netzkultur immer als etwas nicht ganz ernstzunehmendes ansehen, als eine Kultur von Leuten, die erst erwachsen werden müssen.

So ganz falsch mag dieser Eindruck nicht grundsätzlich sein. Doch es gibt durchaus ein paar Dinge, mit denen die Netzkultur gelernt hat, umzugehen. Dinge, mit denen Politiker anscheinend noch nicht umgehen können. Hier könnten und sollten sie lernen.

Den meisten Leuten, die das Internet schon etwas länger für etwas mehr als Facebook und E-Mails benutzen, dürfte der Streisand-Effekt ein Begriff sein, oder zumindest die Tatsache bekannt sein, die er aussagt - versucht man irgendetwas zu vertuschen, erregt es Aufmerksamkeit und sorgt dafür dass die Information sich noch viel schneller verbreitet.

Weiterhin sehr bekannt ist der Begriff des Trolls. Leute, die provozieren, um Aufmerksamkeit zu erlangen oder Verwirrung zu stiften.

Trolle gibt es auch im richtigen Leben. Fundamentalistische Organisationen und radikale Parteien verhalten sich zum Beispiel gerne so. Aber Trolle sind nicht immer nur schlecht, beispielsweise nutzen auch gewisse Umwelt- und Tierschutzorganisationen die Technik des Trollens hin und wieder erfolgreich. Ein gutes Trolling ist besser als jedes noch so gute Argument.

Auf das Thema gekommen bin ich aber vor Allem durch den Taz-Artikel "Schieß den Muezzin". Die FPÖ hat ein Spiel veröffentlicht, in dem man Muezzine mit einem Stopschild "verschwinden" lässt. Ich habe das Spiel selber nicht gesehen, es interessiert mich auch nicht wirklich, und ich kann gut damit leben, es nicht gespielt zu haben. Ich hätte kein Problem die Existenz dieses Spiels komplett zu ignorieren.

Die Öffentlichkeit offenbar nicht. Es steht in der Taz. Ich vermute, es steht auch in einigen anderen Zeitungen. Politiker und sonstige wichtige Personen sind empört. Anzeigen laufen, Staatsanwaltschaften ermitteln. Pure Aufmerksamkeit, typisch wenn jemand erfolgreich trollt.

Es gibt bekanntlich keine schlechte Werbung, es gibt nur Werbung. Das beste Verhalten wäre es also gewesen, das Spiel zu ignorieren, solange es sich nicht von selbst verbreitet. Wenn es Bekanntheit erlangt hat, kann man immernoch zu einer Anzeige greifen. Wenn es sich nicht verbreitet erreicht man mit Ermittlungen eher dass die Bekanntheit sich erhöht.

Generell wäre es eine gute Sache, wenn man Trollings öfter mal ignorieren würde. Sie nicht zu ignorieren bringt nichts, außer einen Haufen sinnfreier Diskussionen.

Neusprech ist ein Begriff aus dem Buch 1984 von George Orwell, das ich zugegebenermaßen bisher nicht gelesen habe. Soweit ich aber die Beschreibungen gelesen habe, scheint es dabei um die gezielte Umdefinition von Wörtern zu gehen.

Der Begriff kam mir jedenfalls sofort in den Sinn, als ich diesen Artikel auf dem Law Blog las.
Jörg Ziercke, der Präsident des Bundeskriminalamtes, gab in einem dort verlinkten Interview von sich "Etwas vom Gesetzgeber Verbotenes dem öffentlichen Zugriff zu entziehen, kann keine Zensur sein.".

Ich frage mich, was ist Zensur dann? Handelt es sich um nichts Verbotenes, wird es ziemlich schwer werden, es dem öffentlichen Zugriff zu entziehen. Ist die Maßnahme gesetzlich angeordnet, so handelt es sich bereits um etwas Verbotenes.

Diese Seite meint, man müsse zwei Arten von Zensur, die Vorzensur und die Nachzensur, unterscheiden. Vom Grundgesetz wird nur Erstgenanntes verboten, gleiches meint Wissen.de.

Dieser Definition entsprechend handelt es sich bei Netzsperren also anscheinend wirklich nicht um Zensur. In meinen Augen eine seltsame Gesetzgebung. Darf damit dann jedes Buch nachträglich verboten werden? Und wenn ja, inwiefern ist das moralisch besser als die Bücherverbrennungen in Mittelalter und Neuzeit? Ein verbotenes Buch darf nicht verbreitet werden - ob man es nun öffentlich auf einem Scheiterhaufen verbrennt, oder nach einer Beschlagnahmung durch den Gesetzgeber vernichtet.

Wir haben vielleicht gesetzliche Rahmen die solche Nachzensuren einschränken, aber gesetzliche Rahmen lassen sich auch sprengen. Die Gegner der Netzsperren haben auch primär diese Angst - ist die Infrastruktur erstmal da, kann sie missbraucht werden. Und noch viel schlimmer, die Ausweitung einer solchen Maßnahme wird zu einem Gewöhnungseffekt führen, denn viele Probleme lassen sich durch Nachzensur erheblich einfacher lösen als durch Alternativen.


IT-Papiermüll durchwühlend fand ich heute einige Schmuckstücke für das Bücherregal.

Darunter unter Anderem ein "PHIGS Programming Manual", untertitel "3D Programming in X". Sehr interessant das durchzublättern.

PHIGS ist dabei eine Library für 3D-Grafik unter X11, die leider schon veraltet zu sein scheint. Das Buch gibt es sogar noch auf Amazon.

Veraltet oder nicht, das Buch hatte über 900 Seiten, voll mit dem damaligen Stand der Technik der 3D-Programmierung. Das stimmt mich zum Einen natürlich nostalgisch, zum Anderen sollte es zu Denken geben, dass man seit 1988 einen Standard für 3D-Programmierung hat, und diese trotzdem immernoch ein wenig "magisch" ist.

A few very nice examples on how GCC optimizes code can be found at ridiculousfish.com.

An example of generalized tail recursion was given, the transformal of

int factorial(int x) {
   if (x > 1) return x * factorial(x-1);
   else return 1;
}

into

int factorial(int x) {
   int result = 1;
   while (x > 1) result *= x--;
   return result;
}

This is a well-known optimization and Iwas wondering whether SBCL also does this optimization. The second declaration becomes

(defun fact2 (x)
 (declare (type fixnum x))
 (let ((res 1))
(loop while (> x 1)
do (setf res (* res (decf x))))))

the firts one becomes

(defun fact1 (x)
(declare (type fixnum x))
(if (> x 1) (* x (fact1 (1- x))) 1))

Of course I have to declare the type here, otherwise it will put code to distinguish between several numeric types. And I did a
(declaim (optimize (speed 3)
(safety 0)
(space 0)
(debug 0)
(compilation-speed 0)))
just to be fair. The second one disassembles into

CL-USER> (disassemble #'fact2)
; disassembly for FACT2
; 248173A4:       BA04000000       MOV EDX, 4                 ; no-arg-parsing entry point
;       A9:       EB18             JMP L2
;       AB: L0:   8BC3             MOV EAX, EBX
;       AD:       83E804           SUB EAX, 4
;       B0:       8BD8             MOV EBX, EAX
;       B2:       895DFC           MOV [EBP-4], EBX
;       B5:       8BF8             MOV EDI, EAX
;       B7:       E8F18E7EFD       CALL #x220002AD            ; GENERIC-*
;       BC:       7302             JNB L1
;       BE:       8BE3             MOV ESP, EBX
;       C0: L1:   8B5DFC           MOV EBX, [EBP-4]
;       C3: L2:   83FB04           CMP EBX, 4
;       C6:       7FE3             JNLE L0
;       C8:       BA0B001022       MOV EDX, 571473931
;       CD:       8BE5             MOV ESP, EBP
;       CF:       F8               CLC
;       D0:       5D               POP EBP
;       D1:       C3               RET
NIL
Somehow I cannot make the GENERIC-* disappear, not even with a the or coerce declaration around the numbers. But the disassembly of the first one is

CL-USER> (disassemble #'fact1)
; disassembly for FACT1
; 24783F0D: L0: L1:83F904           CMP ECX, 4                ; no-arg-parsing entry point
;       10:       7F09             JNLE L3
;       12:       B804000000       MOV EAX, 4
;       17: L2:   8BE5             MOV ESP, EBP
;       19:       5D               POP EBP
;       1A:       C3               RET
;       1B: L3:   894DFC           MOV [EBP-4], ECX
;       1E:       8BC1             MOV EAX, ECX
;       20:       8BD0             MOV EDX, EAX
;       22:       83EA04           SUB EDX, 4
;       25:       8BDD             MOV EBX, EBP
;       27:       8D4424F8         LEA EAX, [ESP-8]
;       2B:       83EC20           SUB ESP, 32
;       2E:       8BCA             MOV ECX, EDX
;       30:       8918             MOV [EAX], EBX
;       32:       8BE8             MOV EBP, EAX
;       34:       E819000000       CALL L5
;       39:       8B4DFC           MOV ECX, [EBP-4]
;       3C:       8BD1             MOV EDX, ECX
;       3E:       8BF8             MOV EDI, EAX
;       40:       E868C387FD       CALL #x220002AD            ; GENERIC-*
;       45:       7302             JNB L4
;       47:       8BE3             MOV ESP, EBX
;       49: L4:   8BC2             MOV EAX, EDX
;       4B:       EBCA             JMP L2
;       4D:       8F4504           POP DWORD PTR [EBP+4]
;       50:       EBBB             JMP L1
;       52: L5:   8F4504           POP DWORD PTR [EBP+4]
;       55:       EBB6             JMP L1
NIL

From 10 to 1A, this seems to check whether the first argument is greater than something (1?), and if so, it jumps to L3, if not, it returns. In L3, it does a lot of things, especially it calls L5, which then jumps to L1, the first line, again. That is, it seems like it really does recursion here.

This is not very nice. Why is it that way?

Ich las jetzt bei zwei Quellen, dass die Regierung sich dafür einsetzt, dass Kinderlärm nicht mehr als Lärmbelästigung zählt. Ich muss dazu sagen, ich kenne die Rechtslage nicht genau. Wenn ich das richtig lese war es bisher nicht so dass man in jedes Wohngebiet einen Kindergarten pflanzen konnte. Und diese Regelung erscheint mir sinnvoll, denn in einem Kindergarten ist es nunmal wenn Kinder spielen laut.

So laut, dass es durchaus eine Belästigung sein kann. Ich finde bereits kreischende Kinder in den U-Bahnen nervig, wenn jetzt noch in der Nähe meiner Wohnung ständig Lärmbelästigung wäre würde mich das wirklich nerven. Es würde mich wohl auch ablenken, und mir die Arbeit erschweren, und mir einen Schlafrythmus vorgeben.

Insofern kann ich auch verstehen dass Leute sich dadurch belästigt fühlen und etwas dagegen haben dass in ihrem Wohngebiet ein Kindergarten ist, den man genausogut ein wenig weiter entfernt bauen könnte. Es handelt sich nicht um eine Diskriminierung von Kindern. Wenn jemand sich Hunde hält dürfen die auch nicht den ganzen Tag bellen. Ich darf um 4 Uhr morgens auch nicht Musik hören. Das hat nichts damit zu tun dass ich diskriminiert werde, das hat etwas damit zu tun dass ich andere Leute potenziell störe. Lärm stört, unabhängig davon woher er kommt, aber gerade Kinderlärm stört erheblich, vermutlich weil man auf Kinderstimmen besonders stark hört.

Um "Toleranz und Akzeptanz" geht es den Politikern. Toleranz und Akzeptanz gegenüber Kindern ist eine Sache, darf man aber nicht von Kindern und deren Eltern auch eine gewisse Toleranz und Akzeptanz einfordern? Dass Kindergärten, die eben sehr laut werden können, einfach an Orten stehen wo das niemanden stört? Es gibt doch genügend Platz dafür!

Wo ist also das Problem? Hat unsere Regierung momentan nichts wichtigeres zu tun?