R5RS-Scheme is a very nice little language. There is no doubt about that. Anyway, though it is very nice, there are a few things that sometimes really make it hard to use. I am saying this from a sort of "practical" perspective: Its what I noticed when I had to use it, being used to common lisp.

A major issue for me is the lack of a default possibility to determine the current compiler somehow. This makes it impossible to write portable code. But especially in scheme, which is very small and has a lot of extensions through its compilers and interpreters, such a thing would be extremely helpful. I dont know about R6RS, except that many schemers dont like it. Maybe it already has such a thing.

Then, well, its a lisp-1. This has advantages and drawbacks. Actually, I think that a lisp-2, putting callable objects into an own namespace, is actually better in a "practical" sense. On the other hand, always having to write "funcall" like in common lisp when calling a function variable is not nice, it should have some "inverse" to its #'-prefix for declared functions. Well, thats a matter of taste, and neither common lisp nor scheme really are the way I would like to have it.

Also an issue for me is the way it handles its dynamic argument numbers. Scheme has a very nice way of doing this, which embeds into the theory perfectly, specifying (define (name x y z . rest)). Compared to the common lisp way, which has &rest-specifyers, this looks pretty. On the other hand, common lisp has an &optional specifyer, and an &keys specifyer, one can name keys, define default values, etc. - all this can be done in scheme only with more code. And its something I really like to have. It makes debugging and specifying easier.

Of course, common lisp also has drawbacks, for example the lack of a named let. I dont want to insult schemers here, or say that scheme is a bad language. Its just a few things that I noticed.

Da gerade sowas Ähnliches wie Ferien vorherrscht, lasse ich mich bisweilen mal wieder dazu herab mich zu Menschen dazuzusetzen, die fernsehen. Da sah ich eine interessante Fernsehwerbung. Ein Produkt, das sich "Body Urea" nennt. Hier hab ich es auf Amazon.de gefunden.

Da wird doch tatsächlich mit 5% Urea geworben. Das soll gut für die Haut sein, kennt man bereits aus der alternativen Medizin. Und wenn man damit seine Felder düngt, kann es doch auch für die Haut nicht schlecht sein.

Meinerseits spricht nichts dagegen, dass mal eine so bewehrte Substanz wie Harnstoff benutzt und beworben wird. Man kann Harnstoff auch sehr gut künstlich herstellen, und er gehört damit eigentlich zu den weniger ekligen Dingen die sich in Kosmetika befinden können. Ich finde es nur trotzdem irgendwie witzig.

Once I heard that codepoints in Unicode are given away carefully.
On the other hand, there are codes for ʇxǝʇ-uʍop-ǝpısdn, 𝔉ℜ𝔄𝔎𝔗𝔘ℜ, 𝐛𝐨𝐥𝐝 𝐥𝐞𝐭𝐭𝐞𝐫𝐬, 𝒮𝒸𝓇𝒾𝓅𝓉, and a lot of other weird stuff. There are characters reversing the text direction.

No doubt this could be useful. But on the other hand, I dont know if its really a good thing to have symbols that are basically letters in another font as standard unicode characters.

Es überrascht mich nicht wirklich, es berührt mich auch inzwischen kaum noch, dass Subjekte die Tierexperimente durchführen mit der Zeit jegliches Mitleid für Tiere verlieren. Zum Einen sind die Budgets vermutlich wie so ziemlich überall beschränkt, der Forschungsdruck ist vermutlich hoch, und nicht zuletzt kann man seine sadistischen Machtphantasien dabei ausleben. Ich habe kein Verständnis dafür, und es ist auch nicht so dass ich solche Leute nicht als moralisch Unterentwickelt ansehen würde, oder verstünde, warum es noch immer keine Ethikkommissionen für Tierexperimente gibt, es ist nur einfach nichts neues und schockiert mich nicht mehr wirklich.

Ich vermute in Tierversuchslabors zu einem Großteil Leute die zu Menschenfeindlich sind als dass sie gescheite Ärzte werden könnten. Fleisch zerschneiden und Schädel und Knochen zersägen ist der spaßige Teil, das Ganze dann wieder zusammenzuflicken ist kompliziert und dementsprechend will man damit nicht so viel Zeit verbrauchen. Weshalb man dann auch mal vergisst den Tieren mit denen man den ganzen Spaß hat Schmerzmittel zu geben.

Immerhin kann man sich hinter den moralischen Schutzschild jahrzehntelanger medizinischer Forschung stellen. Gut, die hat auch Zeug wie Contergan hervorgebracht, und kam nie ohne Menschenversuche aus. Aber Einzelfälle darf man im großen Gesamtkontext einfach nicht beachten.


Ich überflog einige Meldungen, unter Anderem diese von der ARD, zum Thema Netzneutralität.

Die Provider seuseln dahin von Wegen die Netze seien überlastet von den vielen Leuten die die Dreistigkeit haben sie dann auch wirklich zu benutzen, um sich Videos anzusehen. Ein Jahrelanger Preiskampf hat dazu geführt dass wir heute Flatrates haben, und dass man in Städten 50 mbit hat, während man in einigen Gegenden noch Dial Up Verbindungen braucht. Normal sind momentan soweit ich das sehe 16 bis 20 mbit. Für Videos gerade richtig, für alles Andere für gewöhnlich Overkill. Trotzdem brauchen die ganzen modernen Uber-Anwendungen alle unbedingt Ajax-Geschwurbel und dementsprechend geht auch dafür recht viel Last drauf, für den Normalanwender mit DSL eigentlich kein Thema, für den Menschen mit Dial Up Verbindung unbenutzbar.

Während man in manchen Gebieten quasi abgeschnitten ist vom Internet, zwiebelt man in den Großstädten jetzt 50 mbit Leitungen raus - ich frage mich, wie das sein kann, wo die Netze doch so überlastet sind, dass man die Netzneutralität nicht mehr halten kann? Und ich frage mich, wie soll es dann weitergehen? Der Hunger nach mehr Bandbreite wird sicherlich erstmal nicht kleiner, zumindest solange man noch irgendwie sinnvoll ebendiese verschwenden kann. Und sobald das vorbei ist wird man dieselbe Bandbreite auch im Mobilen wollen. Irgendwann müssen die Betreiber ihre Netze also sowieso ausbauen, oder ihre Preispolitik ändern.

Ich sage es ganz ehrlich: Ich glaube den ISPs nicht, dass das ihre Motivation ist. Ich glaube, es ist reine Profitgier. Ich denke, ISPs nehmen sich hier zu ernst. Ich will von meinem Provider einen Zugang zum Internet - ich will dass er dafür sorgt, dass das Zeug was ich sende da ankommt wo es hinsoll, und ich alles bekomme was zu mir soll. Dann sollen sie mir einen Preis nennen, zu dem sie das machen. Und den muss ich dann eben bezahlen. Zum Jetzigen Zeitpunkt geht es so einfach, dass es im Grunde jeder kapieren kann.

Und trotzdem gibt es bereits ein riesiges Tarif-Wirrwarr, das man kaum mehr durchschauen kann. Was passieren wird, wenn die Netzneutralität erstmal weg ist, liegt denke ich auf der Hand: Es wird sich ein noch größeres Tarif-Wirrwarr bilden. Erstmal wird es neue "Premium-Tarife" geben für Facebook und YouTube und sonstige Netzwerke, bzw. Volumentarife mit Flatrates für "bis zu fünf Webseiten" die man (was man natürlich nur in einer Fußnote sieht) aus einer vorhandenen Liste auswählen kann. Die Content-Industrie wird sich die Hände reiben, und ähnlich wie bei den momentanen Handytarifen ebenfalls das Recht auf soundsoviele Lieder pro Monat einräumen.

Das Internet wird zu einer großen Verkaufsplattform verkommen, das was es ursprünglich war wird verschwinden. Ein paar alternative Provider wird es wohl noch geben, die werden aber vermutlich nur in den großen Städten bezahlbar sein.

Normalerweise würde ich sagen, dass das eigentlich keiner wollen dürfte und dementsprechend sich alleine aufgrund der fehlenden Nachfrage solche Tarife nicht durchsetzen werden - doch diese Haltung wird sicherlich schnell von hinreichend vielen Leuten wegpragmatisiert.

The Old New Thing hat grad einen interessanten Artikel zu Garbage Collectors. Obgleich ich mich schon öfters damit beschäftigt habe, ist mir diese eigentlich offensichtliche Ansicht grade neu gewesen.

Ein Garbage Collector ist demnach ein Mechanismus der unendlichen Speicher simuliert.

Er begründet weiterhin was die formalen Folgen daraus sind, dass zum Beispiel wenn ein Programm immer genügend Speicher allokieren kann, der "Null-Garbage-Collector" der nichts tut ein ausreichender GC ist. Daraus leitet er korrekt ab, dass man nicht davon ausgehen kann, dass finalizer vor dem Beenden eines Programmes aufgerufen werden.

Ich kann in diesem Punkt nicht ganz zustimmen. In einem Kommentar heißt es dann noch, es gibt von Garbage Collectoren echt verschiedene Strategien dies zu tun, und ich denke auch, unter Garbage Collectors versteht man einen ganz bestimmten Ansatz die Simulation unendlichen Speichers zu erzielen, nämlich während der Laufzeit nach Objekten zu suchen die nicht mehr vom Hauptprogramm referenziert werden.

Schwache Referenzen und Finalizer sind zum Beispiel Techniken, die außerhalb eines solchen Ansatzes nicht notwendigerweise Sinn ergäben. Und man kann im Prinzip argumentieren, ein GC sollte garantieren dass Finalizer aufgerufen werden, in einer perfekten Welt wäre das schön, aber leider geht das nicht immer so einfach, heißt, seine Conclusio, sich darum zu kümmern und den GC nur als Auffangnetz anzusehen, finde ich durchaus sinnvoll.

Generell finde ich aber vor Allem den Denkansatz schön, mal nicht anzufangen über einen Haufen Garbage Collectoren zu reden, sondern sich erstmal zu überlegen, was das Ganze formal eigentlich ist, und daraus Konsequenzen abzuleiten. Eine Denkweise, die in der modernen pragmatisierten Informationstechnik immer seltener anzutreffen ist.

Sie ist der Flaschenhals der meisten Einkaufszentren: Die Kasse. Lange Menschenketten bilden sich dort zu Stoßzeiten, überlastete gezwungen-freundliche Verkäuferinnen überall.

Ist man in der Schlange wird die Geduld teils auf die Probe gestellt, und die meisten Menschen in einer solchen Warteschlange wollen, solange sie darin stehen, dass es schnell vorwärts geht. Doch leider scheinen die Meisten davon dies wieder zu vergessen, wenn sie dann an die Kasse kommen.

Von Senioren die erstmal ihre Lebensgeschichte erzählen müssen bevor sie bezahlen können, zum Schlipsträger der genüsslich langsam seine Geldbörse herausholt, das Geld sucht und dann erst daran denkt einzupacken und die Kasse freizumachen - Zeitverschwendung an der Kasse auf Kosten der anderen wartenden Personen ist ein weit verbreitetes Problem.

Es geht nicht immer alles optimal schnell. Findet eine Person irgendeinen Pfandschein einfach nicht, hat sich eine Person in der benötigten Größe ihrer Einkaufswarenbehältnisse verschätzt, oder gibt es eine Rückfrage zur Preisberechnung, so ist dies nicht schön, aber zumindest nicht immer vermeidbar.

Auf die Nerven geht mir vor allem der ganze vermeidbare Overhead. Während die Kassiererin die Waren über den Scanner zieht kann man diese beispielsweise bereits wieder in seinen Einkaufswagen oder in Tüten verpacken, soweit es auf die Schnelle geht, sodass der Rest des Einpackvorgangs die Kasse nicht mehr blockiert. Seinen Geldbeutel griffbereit zu haben ist auch etwas generell gutes. Und ein wenig Konversation ist ok, aber keine langen Geschichten erzählen. Das mag die Stimmung mancher Menschen auflockern, aber die Kasse eines Geschäfts ist nicht der Ort dafür.

Gleich vorweg muss ich etwas Positives zu unserem Innenminister de Maiziere sagen: Ich habe den Eindruck, er bemüht sich wenigstens das Internet technisch zu verstehen, und auf die Befürchtungen aller Beteiligten einzugehen. Das ist in einer konservativ geprägten Regierung während einer Moralpanik sicher garnicht so leicht.

Jetzt fordert er jedenfalls unter Anderem einen digitalen Radiergummi. Diese Forderung ist nicht neu. Und sie klingt sinnvoll. Mit einem solchen Konzept des Löschens von Daten die unangenehm sind hätte sicher niemand ein Problem, denn es kommt immer wieder vor, dass irgendwelche Kinder unbedarft Fotos von sich im Netz veröffentlichen, oder Google Street View verfängliche Bilder aufnimmt. Dann einfach den mächtigen Radiergummi zücken und alles wieder gut machen wäre freilich nett.

Nett aber unmöglich. Es ist ja bereits jetzt so, dass die kommerziellen Videoportale Videos herunternehmen, spätestens auf Anfrage, teils aber bereits wenn die Community meldet dass das Video nicht angemessen ist. Da braucht es kein Gesetz das sie dazu verpflichtet, das ist einfach common sense. Und wenn nicht, kann man das für gewöhnlich richterlich erzwingen. Nur, dann ist es meistens bereits zu spät.

Unter Anderem gibt es zum Beispiel den Streisand-Effekt. Der laszive YouTube-Strip des pubertären unwissenden Vierzehnjährigen der gerade seine neue Webcam zum Geburtstag bekommen hat wird sicherlich hunderte Male heruntergeladen bevor YouTube ihn sperrt, insbesondere von dessen Bekannten die sich damit über ihn lustig machen. Und die werden das Video verbreiten, ohne dass irgendwer etwas dagegen tun kann.

Verhindern kann man das am Besten dadurch, dass man die Leute aufklärt. Selbst einem pubertären Bildungsunterschichtler dürfte es klarzumachen sein, dass er eine solche Aufnahme nie wieder loswird. Sein Leben lang nicht. Und dass er mit an Sicherheit grenzender Wahrscheinlichkeit Leuten in die Hände fällt, bei denen er das nicht will.

Analog hört man immer wieder von Saufbildern diverser Menschen, die von Chefs gefunden werden, bei deren Bewerbungsgesprächen. Hier müsste sich vielleicht einfach die Mentalität dahingehend ändern, dass man keine Übermenschen mehr erwartet, sondern einsieht, dass es nichts über die Kompetenz eines Menschen aussagt, dass dieser in seinem Leben einst Fehler gemacht hat.

Freilich können solche Dinge auch aus Versehen passieren. Meine alte Schule hat zum Beispiel einmal in einem Elternbrief Telefonnummern, Mailadressen und Adressen von nachhilfeanbietenden Schülern veröffentlicht. Sie hat diesen Elternbrief auch im Internet veröffentlicht. Normalerweise werden solche Informationen vorher aus den Elternbriefen entfernt, an dieser Stelle hatte man das einfach vergessen.

So fand eine Person von der ich das eigentlich nicht wollte meinen Namen und meine Telefonnummer per Suchmaschine heraus. Ich schrieb natürlich die Schule sofort an, und sie hat das korrigiert, doch im Cache von Google blieb das Ganze noch recht lange erhalten. Und noch heute findet man es, wenn man sucht, in einigen Web-Archiven.

Das ist nicht schön. Noch viel schlimmer wäre es, wenn es wirklich irgendwelches verfängliches Material wäre. Aber einen "Radiergummi" dafür gibt es nicht. Kann es auch nicht geben. Das Einzige was möglich ist ist, dafür zu sorgen dass man es in den Hauptstrom-Suchmaschinen nicht findet (was ein Vorschlag des Innenministers war) - aber es gibt genügend nichthauptstromige Suchmaschinen. Es könnte nichtkommerzielle Suchmaschinen geben. Und es gibt Dinge wie Freenet. Damit wird die breite Masse zwar keinen Zugang mehr dazu finden, aber die Leute, die sich dafür interessieren, und explizit Nachforschungen anstellen - also normalerweise genau die Leute die negative Interessen damit verbinden - finden es trotzdem.

Wann immer ich etwas kritisches ins Netz stelle, versehe ich es entweder mit einem Passwort oder sorge dafür dass es in keinem Dateiindex auftritt. Ich denke, man sollte hier einfach umdenken. Das Internet galt lange als Fortschrittsmotor, und man musste unbedingt alles ins Netz stellen, ad absurdum. Heute, mit etwas mehr Erfahrung, kann man hinterfragen warum zum Beispiel sowas wie ein Elternbrief überhaupt frei zugänglich im Netz veröffentlicht wird, oder ob es nicht besser wäre, eine Zugangsbeschränkung einzustellen. Dass eine Schule Webdienste anbietet ist nichts intrinsisch Schlechtes, und dass man alle wichtigen Briefe dort nochmal abrufen kann ist sicher sinnvoll. Man könnte hier jedem Schüler defaultmäßig ein Passwort geben, und den Eltern entsprechend, und so das Webangebot auf Schüler beschränken. Ich bin der Meinung, Schulen sollten grundsätzlich ohnehin für Schüler frei zugängliche Rechnerpools haben, was ein Accounting voraussetzt - man könnte beides koppeln.

Auch warum Menschen private Videos allen Leuten zugänglich machen ist mir ein Rätsel. Zumal die meisten Videohoster bereits eine Option haben, dass nur ausgewählte Personen die Videos sehen können. Und selbst dann frage ich mich, warum man sie an kommerzielle werbefinanzierte Videohoster übergibt. Hier wäre es vielleicht sinnvoll, den Leuten Homeserver näherzubringen, oder zumindest eigene VServer. Oder eben ein kostenpflichtiges Angebot, das dann aber seinen Service auch auf maximale Zugriffskontrolle zuschneiden kann.

Ein Radiergummi ist jedenfalls weder eine neue Idee, noch eine sinnvolle Idee. Alleine der Begriff sugeriert, dass Daten irgendwo "fest" eingeschrieben sind - eine solche Begriffsbildung löst keine Probleme, im Gegenteil, ich denke, sie gehört mit zum Problem. Das Problem ist eben gerade die "Flüssigkeit" der Daten im Netz. Freilich ist die Information die ich zu einem bestimmten Zeitpunkt herunterlade irgendwo auf einem Server gespeichert. Aber wenn tausende von Menschen sie herunterladen können werden sie auch auf deren Rechnern gespeichert. Und potenziell auf deren Webseiten, oder in irgendwelchen Caches.

Ja, Probleme sind da. Lösungen bisher leider keine. Bildung und ein verantwortungsvoller Umgang wären ein Anfang. Vor Allem tragen sie vermutlich eher zur Lösung bei als alte bereits verworfene Ideen wieder neu aufzukochen.

Nun, de Maiziere hat anscheinend noch einige andere Dinge gesagt. Leider finde ich in der obigen Quelle keine Quellenangabe der gesamten Thesen. Ist auch nicht so wichtig. Ich wollte ohnehin nur auf den Radiergummi eingehen.