Bye-Bye Internet Explorer

Microsoft will sich nun schon sehr lange vom Internet Explorer trennen, und in Kürze wird es endgültig: Mitte Juni wird ein Update erscheinen, dessen einziger Zweck es ist, den IE zu löschen.

Vielleicht sagen Sie jetzt, naja na und, mit der alten Schabracke lässt sich doch schon seit Ewigkeiten sowieso nichts mehr anfangen. Nicht ganz. Der IE ist der einzige Browser mit einem COM-Modell. Und lässt sich damit nahtlos in eine Vielzahl von Anwendungen und Programmiersprachen integrieren.

Stellen Sie sich vor, Sie hätten in Excel VBA umfangreiche finanztechnische Software kodiert, die für den Betrieb auch Daten aus dem Internet benötigt. Und um das nicht alles immer per Hand einzupflegen, haben Sie den IE automatisiert, dass er die Daten holt. Und *schwupps* mit einem Federstrich macht Microsoft jetzt ihre ganze Arbeit wertlos, tausende von Zeilen, obwohl sie bis heute klaglos den Dienst verrichten. Denn der eine oder andere Darstellungsfehler bei moderneren Seiten ist bei so etwas ja egal, insbesondere da man den IE seine Arbeit komplett im Hintergrund verrichten lassen kann.

Was kann man also tun? Das Update aufschieben? Das geht nur mit den Pro-Versionen von Windows, und auch dort nur eine gewisse Zeit. Die Software in eine VM verlagern, und diese nach jedem Start auf den letzten Sicherungspunkt zurücksetzen? Mit der Zeit würde das wohl eine ziemlich unsichere Angelegenheit, weil gar keine Updates mehr eingespielt würden.

Der saubere Schritt ist hingegen die Rekodierung für eine neue Browser-Automation. Glücklicherweise gibt es nämlich für Edge, Firefox und Chrome eine Automatisierungs-Schnittstelle, sie nennt sich Selenium. Und für Excel  und Word VBA gibt es die vorzügliche Bibliothek SeleniumBasic von Florent Breheret. Sie können die Installationsdatei dafür hier downloaden.

Im Folgenden möchte ich Ihnen die ersten Schritte mit dieser Bibliothek ein wenig erleichtern.

„Bye-Bye Internet Explorer“ weiterlesen

Elon Musk wird Aufsichtsrat bei Twitter

https://www.zerohedge.com/markets/twitter-appoints-elon-musk-board-directors-stock-jumps-hopes-more-unwokeness

It didn’t take long for Musk to respond and in a tweet – what else – moments after the Twitter 8K, and shortly after Twitter’s (soon outgoing) CEO Parag Agrawal tweeted that “I’m excited to share that we’re appointing @elonmusk  to our board! Through conversations with Elon in recent weeks, it became clear to us that he would bring great value to our Board” adding that Musk is an “intense critic of this service” … Musk responded with what may be the most polite pink slip in modern history: “Looking forward to working with Parag & Twitter board to make significant improvements to Twitter in coming months!”

Nachdem Musk erst die unbedingte Notwendigkeit der freien Rede in mehreren Tweets betont hatte, und dann der größte Einzelaktionär bei Twitter wurde, tragen die „snowflakes“ jetzt Trauer und der Aktienkurs von Twitter explodiert – Twitter beruft Musk in den Aufsichtsrat. Ein weiterer (reverser) Beleg für die These „get woke, get broke“ – nur die, bisher durch nichts gestützte, Hoffung, Twitter könnte wieder freie Rede zulassen, hat einen enormen Boom in der Nachfrage nach den zuvor im Keller dümpelnden Twitter-Aktien ausgelöst.

Neuer ist nicht immer besser

https://www.golem.de/news/dirty-pipe-linux-kernel-luecke-erlaubt-schreibzugriff-mit-root-rechten-2203-163680.html

Eine Sicherheitslücke, die den Namen Dirty Pipe erhalten hat, ermöglicht unter Linux das unberechtigte Schreiben in Dateien des Root-Nutzers. Damit kann sich ein einfacher Nutzer Root-Rechte verschaffen. Ein Exploit-Code steht zur Verfügung.

Der verwundbare Code wurde mit der Kernel-Version 5.8 eingebaut, Versionen davor sind nicht betroffen. Fixes sind bereits verfügbar, gefixt wurde allerdings nur der LTS-Kernel 5.10 und die aktuelle Kernel-Version 5.16 sowie deren Vorläufer 5.15. Für die Zwischenversionen 5.8, 5.9, 5.11, 5.12, 5.13 und 5.14 ist offenbar kein Patch vorgesehen, allerdings ist deren Support immer nur sehr kurz (bis zum Release der übernächsten Zwischenversion).

Moralischer Kompass

https://www.pcwelt.de/news/Neuralink-16-von-23-Affen-tot-Tests-am-Menschen-werden-ausgesetzt-11188664.html

Die Dokumente enthüllen, dass die Gehirne von Affen in schäbigen Experimenten verstümmelt wurden und sie leiden und sterben mussten. Es ist kein Geheimnis, warum Elon Musk und die Universität Fotos und Videos dieses schrecklichen Missbrauchs vor der Öffentlichkeit geheim halten wollen.

Na, das ist wohl doch nicht so einfach, aus Menschen Cyborgs zu machen. Ohne jeglichen Respekt vor der Natur und der Schöpfung will Musk in die Gehirne von Menschen Computer-Schnittstellen einsetzen. Vorgeblich, um Gelähmten zu helfen, und um die kognitiven Fähigkeiten zu erweitern.

Tatsächlich, man kennt dergleichen aus der Geschichte (Radio – TV – Internet), würde es am Ende aber zu nichts weiter benutzt, um Menschen fernsteuern zu können – willenlose Sklaven der Ultrareichen aus ihnen zu machen.

Man darf ja alles erforschen. Das heißt aber noch lange nicht, dass man alles tun dürfte, nur weil man es könnte.

Schnelle verschlüsselte Remote-Container

Wer ein verschlüsseltes Laufwerk remote, also entweder im lokalen Netzwerk oder via Internet auf einem anderen Server, betreiben will, kennt das Problem: Egal ob man LUKS oder Veracrypt benutzt, die Performance bricht extrem ein.

Woran das liegt kann ich Ihnen zwar nicht sagen, aber es gibt für Linux-Systeme einen Weg, die reguläre Performance der jeweiligen Leitung auch für verschlüsselte Laufwerke zu erhalten.

Zunächst erzeugt man eine Datei, die etwas größer ist als das geplante verschlüsselte Laufwerk. Ein paar GB mehr reichen:

dd if=/dev/zero of=loopbackfile.img bs=1G count=100

Dies erzeugt z.B. eine Datei aus nur Nullbytes mit der Größe 100GB. Danach richtet man diese Datei als Loop Device ein:

sudo losetup -fP loopbackfile.img

Dann ein Filesystem darauf installieren:

mkfs.ext4 loopbackfile.img

Es empfiehlt sich, die Menge des für das Betriebssystem reservierten Speichers in diesem Laufwerk zu reduzieren. Da nur eine einzige Datei darauf kommt, und die (fast) den gesamten Speicherplatz einnimmt, wird kein reservierter Speicher benötigt:

tune2fs -m 0 loopbackfile.img

Jetzt das Loop-Laufwerk mounten:

mkdir loopfs
mount -o loop loopbackfile.img loopfs

Und nun kann man im Verzeichnis „loopfs“ die Verschlüsselungsdatei mit gleich welchem Verfahren anlegen und befüllen. Wenn alles erledigt ist, Crypt- und Loop-Laufwerk (in dieser Reihenfolge) unmounten, dann das „loopbackfile.img“ an die endgültige Destination hochladen – und voilà, das externe verschlüsselte Laufwerk funktioniert mit der vollen Geschwindigkeit der jeweiligen Anbindung.

(Um das verschlüsselte Laufwerk von remote zu benutzen, zuerst das Loop-File von remote mounten, und dann darin den verschlüsselten Container von quasi lokal im Loop-Verzeichnis.)

Meine Vermutung ist, wenn das Laufwerk direkt über das Netzwerk gemounted wird, sichert Linux weit häufiger die Daten hoch. Wenn es aber als Loop eingebunden ist, werden die vorhandenen Schreibcache-Möglichkeiten besser ausgenutzt, weil Linux „glaubt“, das wäre ein lokales Device. Aber das ist nur geraten, was genau die Ursache der grottenschlechten Performance für verschlüsselte Remote-Container ist, kann ich nicht sagen.

Doch als Beispiel, worum es geht: Ich hatte neulich das Problem, ein System mit sensiblen Daten auf das Netzwerk zu sichern, Anbindung 1GBit synchron. Zuerst, weil ich zu faul war, habe ich es direkt gelöst – Ausführungsdauer 14 Stunden (für den gesamten Datenbestand, ca. 180GB). Na, das war dann viel zu lang, eine so lange Blockade des Systems konnte ich nicht brauchen; obwohl natürlich nach der Initialisierung immer nur die Differenzen zu sichern sind, aber da ging es trotzdem immer noch um ca. 80GB pro Sicherungslauf. Habe ich also wie oben beschrieben umgestellt, Ergebnis: unter 1 Stunde für den gesamten Datenbestand.

Das ist doch ganz nett für den insgesamt überschaubaren Arbeitsaufwand für die „Loopifizierung“ eines Crypt-Laufwerks… unter Windows tritt übrigens exakt das gleiche Phänomen auf, aber ein Workaround dort ist mir nicht bekannt. Vielleicht geht es mit dem Linux-Subsystem von Windows, aber das habe ich noch nicht ausprobiert, ich weiß nämlich nicht, ob man damit auf alle Daten des darüberliegenden Windows-Hosts kommen kann.

Weltraumwetterkapriolen

https://www.zerohedge.com/markets/40-spacex-satellites-hit-geomagnetic-storm-expected-fall-back-toward-earth-and-burn

Elon Musk’s satellite internet service Starlink experienced a devastating space-weather impact last Friday when a geomagnetic storm forced „dozens“ of newly launched … satellites into „safe-mode“ where they experienced „deorbiting“ and will or already have crashed back to Earth, according to a SpaceX blog post.

Ein, zumindest für mich, ziemlich überraschender Unfallablauf: Nach dem Aussetzen durch die Trägerrakete werden Starlink-Satelliten zunächst in einem niedrigen Orbit auf volle Funktion getestet, bevor sie in ihre endgültige höhere Umlaufbahn gehen.

Letzten Freitag traf aber ein Sonnensturm das Gebiet der neu ausgesetzten Satelliten, und der hat nicht etwa die Elektronik der Satelliten beschädigt, wie man intuitiv annehmen könnte. Sondern die Atmosphäre der Erde ausgedehnt (ich wusste nicht, dass Sonnenstürme dergleichen bewirken). Und daraufhin war die Atmosphäre dichter als in der betreffenden Höhe üblich, der Reibungswiderstand also höher, und das konnten die Satelliten nicht kompensieren und fast alle stürzten ab.

Im Dunkeln ists gut Munkeln

https://www.tomshardware.com/news/quantum-computing-researchers-achieve-100-million-quantum-operations

Researchers … have achieved a new record in maintaining quantum bits (qubits) in a coherent quantum state for more than five seconds. The research … is hailed as an important new step in extracting useful work from quantum computers – one that should scale quantum computing’s performance towards the much-sought-after quantum supremacy moment.

Während symmetrische Verschlüsselung wohl auch nach der Serienreife von Quantencomputern sicher bleiben wird (wobei die Meinungen der Fachwelt dazu auseinandergehen), sind vermutlich sämtliche aktuellen digitalen Geschäftsmodelle der Finanzindustrie, wesentlich beruhend auf asymmetrischer Verschlüsselung, Kuchenkrümel auf einer Müllhalde sobald Primzahlen nicht mehr sicher sind. Quantencomputer können eine Primzahlzerlegung drastisch schneller ausführen, als herkömmliche Hardware.

Aber egal, bis die Script-Kiddies sich einen Quantencomputer leisten können, wird die Public-Key-Transaktionssicherheit hoffentlich auf neue Füße gestellt sein. Ansätze für auf Quantentechnik beruhende derartige Verschlüsselungsverfahren gibt es längst.

Was mir jedoch mehr Sorge bereitet, ist das immer größere Auseinanderklaffen der Potenziale zwischen den (viel) Besitzenden und den immer zahlreicher werdenden Anderen. Dass das Weltwirtschaftsforum offenbar mit großen Medienkonzernen Stillhalteabkommen durchsetzt, damit ein global einheitliches Narrativ die Öffentlichkeit sowohl über den Fortgang als auch die Möglichkeiten der Quantencomputerforschung im Dunkeln hält, macht meine Sorgen bestimmt nicht kleiner.

Katastrophales Urteil aus München

https://www.golem.de/news/landgericht-muenchen-einbindung-von-google-fonts-ist-rechtswidrig-2202-162826.html

Die Einbindung von dynamischen Webinhalten wie Google Fonts von US-Webdiensten ist ohne Einwilligung der Besucher rechtswidrig. Das hat das Landgericht München in einem Urteil (Az. 3 O 17493/20) entschieden. Webseitenbetreiber können auf Unterlassung und Schadensersatz verklagt werden.

Die deutschen Gerichte mal wieder mit voller Fahrt zurück in die Steinzeit. Irgendjemand muss doch etwas gegen die Misere der Hochschulen und das Vergraulen hochqualifizierter Fachkräfte durch extreme Steuern und Abgaben tun! Am besten die ganze IT-Industrie zerstören, dann merkt das erbärmliche Politikversagen keiner mehr. Oder ist das gar ein extra hinterhältiger Trick, um endlich die chinesische „Great Firewall“ um Europa hochziehen zu können?

Wenn Sie als Seitenbetreiber Google Fonts, oder sonst irgendwelchen externen Content nachladen, reicht ein Klick auf Ihre Seite, um Sie mit Schadensersatzklagen überziehen zu können. Wie üblich sucht man sich dabei den leichtesten Gegner, man stellt sich nicht etwa gegen Google, um denen die missbräuchliche Datensammelei auszutreiben, nein, der harmlose Webshop um die Ecke soll büßen.

Falls Ihre Seite mit Standard-Themes arbeitet (z.B. für WordPress: Twentyseventeen, Twentynineteen, Twentytwenty und so weiter Update: Auch diese Themes verwenden Google Fonts!), sind Sie vermutlich auf der sicheren Seite gefährdet. Falls Sie ein professionelles Theme einbinden, z.B. Avada, achten Sie in den Einstellungen auf die Möglichkeit, die Google Fonts lokal zu hosten und aktivieren Sie diese Option, falls möglich – wenn die Google Fonts vom lokalen Server kommen, sind Sie vor Abmahnungen geschützt.

Falls das verwendete Theme eine solche Option nicht anbietet, gibt es Plugins für das automatische lokale Zwischenspeichern der Google Fonts, z.B. OMGF | Host Google Fonts Locally. Es ist außerdem möglich, CSS und Theme manuell zu patchen, hier ist eine Anleitung dafür.

Es gibt aber auch Themes, die ihren eigenen Font mitbringen und den sowieso lokal laden. Bei solchen Themes ist kein Handlungsbedarf.

(Um zu überprüfen, welchen Font ein Text auf einer Seite hat, klicken Sie eine betreffende Textstelle rechts, und dann auf „Inspect“ bzw. „Untersuchen“. Im sich daraufhin öffnenden Debugger-Fenster ist weiter unten ein Abschnitt mit diversen Textformatangaben, den nach unten scrollen, dort steht dann der verwendete Font. Oder Sie nehmen die Lasche „Netzwerk“, drücken auf Reload und können dann in der Liste alle nachgeladenen Ressourcen prüfen; falls Fonts von Google nachgeladen werden, sehen Sie die URL dazu.)

Von der anderen im Artikel genannten Möglichkeit, nämlich der zwangsweisen Einwilligung (als „notwendig für den Betrieb der Seite“) im Cookie-Consent, würde ich abraten. Man wird damit nämlich kaum verhindern können, dass bereits externer Content geladen wird, bevor der Nutzer zustimmen kann, und daraus wird Ihnen genauso ein Strick gedreht. Ich hatte kürzlich im Support einen ganz ähnlich gelagerten Fall, und kann Ihnen deshalb aus eigener Erfahrung versichern, der Bundesdatenschutzbeauftragte kennt da kein Pardon.

Ergänzung: Inzwischen kristallisiert sich heraus, dass viele Websites gar nicht konform gestaltet werden KÖNNEN. Wer z.B. Youtube-Videos einbindet, bekommt die Fonts quasi als Zählpixel automatisch mit aufgedrückt, und Google schließt es in seinen Bedingungen sogar aus, das zu umgehen. Vielleicht lässt sich das zwar mit einem speziell gestalteten Youtube-Embedder umgehen, der zunächst nur ein Vorschaubild anzeigt, und bei Klick auf Play erst eine Einwilligung anfordert, aber ich habe noch keinen solchen gefunden.

2. Ergänzung: Eine sehr gute Übersicht, wie Google Fonts in einer WordPress-Installation ohne Plugin, sondern per CSS lokal gehostet werden können, bietet dieser Artikel von perun.net. Auch dort gibt es aber keine Lösung für dynamisch per API erzeugte nachgeladene Font-Adressen (welche nicht nur Youtube betreffen, sondern auch andere Google-Dienste). Für diese Problematik scheint es bisher keine Umgehung zu geben.

Nicht gehaltene Versprechen

https://www.phoronix.com/scan.php?page=news_item&px=X.Org-Driver-Shambles-2022

Die Kompatibilität von Linux zu älterer Hardware wird schon seit Jahren nach meiner Beobachtung schlechter, dieser Artikel belegt sie mit harten Fakten.

Ich würde meinen, Hardware für Linux sollte nicht zu neu, aber auch nicht sehr alt sein. So ca. 2 – 5 Jahre alt, wobei jedoch m.Mng. der Support für neueste Hardware, einen aktuellen Kernel vorausgesetzt, besser geworden ist in den letzten Jahren. Vielleicht ist gerade das der Grund, warum die Unterstützung für ältere Maschinen nachlässt?

Besonders ärgerlich ist es, wenn man beim System-Upgrade auf einen neuen Kernel gezwungen wird, dieser aber mit der alten Hardware nicht mehr läuft. Zuletzt erlebt mit einem Zotac, eigentlich gar nicht so alt, aber beim Wechsel von Ubuntu 18 nach 20 war Schluss, weil der 5.4 Kernel partout nicht mehr mit dem Zotac arbeiten wollte. Natürlich ein Zotac-Problem, eigentlich, wenn das Bios von dem so schrottig ist und nicht aktualisiert wird. Aber machen kann man nix, jedenfalls nicht, wenn man nicht ohne Support und Updates dastehen will. Und mit einem alten Kernel will aber Ubuntu 20 nicht mehr… der Zotac steht jetzt also rum und wartet auf einen  Windows-Anwender. Das würde nämlich immer noch drauf laufen…

Context Caching in Spring Tests

https://rieckpil.de/improve-build-times-with-context-caching-from-spring-test/

Bei Projekten mit Unit- und Components-Tests für Services haben wir immer mal wieder das Problem, dass die Build-Zeiten explodieren, weil die Tests zu lange dauern. Dieser Artikel erklärt sehr gut, wie der Spring Test Context Caching Mechanismus genutzt werden kann, um solche Tests erheblich zu beschleunigen.

Auf was man dabei achten muss, ist vielen Entwicklern gar nicht bekannt, aber der erzielbare Performance-Gewinn lohnt die Mühe. Bei einem unserer Projekte hatten wir kürzlich ein Problem dieser Art – mit dem Einsatz der im Artikel beschriebenen Techniken konnte der Service-Test vierfach beschleunigt werden.

(Scrollen Sie den eingebetteten iFrame etwas nach unten, um das zweite eingeblendete Overlay bestätigen oder ablehnen zu können)

Anachronismen

https://www.golem.de/news/hpe-patch-zerstoert-77-tbyte-an-forschungsdaten-an-kyoto-uni-2201-162121.html

Die Kyoto-Universität in Japan hat Ende 2021 77 TByte an Forschungsdaten verloren. Der Grund: Ein Script-Update hat die Backups von den Servern gelöscht … verteilte ein Update für ein Backup-Script, das Log-Dateien nach zehn Tagen automatisch löscht. Dabei sollte nur dessen Sichtbarkeit und Nachvollziehbarkeit durch neue Variablennamen verbessert werden. Stattdessen habe das Script aber beim Aufspielen ein anderes, laufendes Bash-Script überschrieben – undefinierte Variablen und das anschließende Löschen echter Dateien statt Loggingeinträgen waren die Folge.

Ich bin mir natürlich nicht sicher, aber es hört sich schon sehr nach der alten Script-Krankheit von Linux an: Ein laufendes Script wird direkt von der Festplatte abgearbeitet, und zwar so, wie das seinerzeit unter MS-DOS passiert ist. Hingegen laden fast alle modernen Systeme inzwischen, wegen genau solcher Probleme, wie sich das für die Kyoto-Universität anhört, Scripte in den Speicher und führen sie von dort aus. Dann ist es egal, ob das Script auf der Platte bearbeitet wird – dessen geänderter Code wird ja erst mit dem nächsten Start ausgeführt.

Natürlich sollte es in Linux aber eigentlich gar kein Script geben, das dauernd ausgeführt wird und selbst steuert, wann es was machen soll. Dafür wäre die crontab zuständig. Das behebt das Risiko zwar nicht, reduziert es aber erheblich. Und für solche Fälle, die mit crontab nicht abgebildet werden können, gibt es dann noch inotifywait. Aber das sind alles nur Notbehelfe.

Ich hoffe schon lange, dass endlich Scripte unter Linux nicht mehr direkt von der Festplatte ausgeführt werden. Ich fühle mich dabei immer so steinzeitlich. Mir erschließt sich auch der Sinn nicht, denn es gibt überhaupt keinen zuverlässigen Weg, das für irgendwas auszunutzen (weil man nämlich nicht wissen kann, an welcher Stelle des Scriptes gerade ausgeführt wird). Vielleicht kann die leidgeprüfte Kyoto-Universität da nun etwas ausrichten.

Gewissensfrage

https://www.konjunktion.info/2021/12/schweden-impfstatus-per-mikrochip/

Der Impfchip ist keineswegs „Verschwörungstheorie“, sondern längst Realität. Oder was dachten Sie, was der Hintergrund der Kampagne zur Jagd auf gefälschte Impfpässe ist?

Implantierbare Chips sind allerdings schon überholt und höchstens ein Zwischenschritt. Das tatsächliche aktuelle Ziel ist die subkutane „Quantum Dots“-Markierung von Gates.

Es gibt ja sehr viele Programmierer, die sich aus ethischen Gründen weigern in der Kriegswaffen-Industrie zu arbeiten. Wird es langsam Zeit, diese ethischen Gründe auch auf die Mitarbeit in „Big Data“-Projekten auszudehnen?

Wenn der Schuster die eigenen Schuhe verschmäht

https://www.phoronix.com/scan.php?page=news_item&px=Microsoft-CBL-Mariner-Nov-21

Es ist natürlich eine recht lustige Frage, warum man dem Microsoft-Datenkraken zu Linux entfliehen sollte, nur um dann wieder etwas von denen zu verwenden.

Aber es ist entlarvend, dass auch Microsoft offenbar ganz genau weiß, dass Linux für zumindest manche Dinge einfach besser ist.

Kubernetes Defaults sind unsicher

https://www.stackrox.io/blog/kubernetes-security-101/

(…) 87 percent of organizations are managing some portion of their container workloads using Kubernetes. The same survey shows that 94 percent of organizations have experienced a serious security issue in the last 12 months in their container environment, with 69 percent having detected misconfigurations, 27 percent experiencing runtime security incidents, and 24 percent discovering significant vulnerabilities to remediate.

https://www.tigera.io/learn/guides/kubernetes-security/

Kubernetes Security Best Practices (…) Here are a few best practices that can help you secure Kubernetes clusters and workloads throughout the software development lifecycle.

Kubernetes hat revolutionäre Fortschritte in der Bereitstellung, Skalierung und Verwaltung von Container-Anwendungen erbracht und ist deshalb sehr erfolgreich. Leider liegt aber bisher das Augenmerk dabei nicht unbedingt auf Sicherheit. Wer sich auf die Default-Einstellungen verlässt, öffnet diverse Angriffsvektoren.

Spiele für lau

Bald sind wir wieder alle eingesperrt und das Wetter ist eh schlecht. Falls Sie ein „Amazon Prime“ Abo haben, sind eine ganze Reihe von Spielen kostenfrei inbegriffen, wussten Sie das schon? Vielleicht etwas für langweilige Winterabende, wenn im Fernsehen (wie üblich) nur wieder Mist und Propaganda kommt?

Ich wage allerdings zu bezweifeln, dass diese Ersparnis beim Gaming die Inflation ausgleichen kann…

Falls Sie jedoch eine Alternative zu den Monopolisten vorziehen würden, hier noch eine Empfehlung für das „Humble Bundle“. Dort wird zwar eine Zahlung erbeten, aber immerhin zahlen Sie nur soviel wie es Ihnen wert ist (Minimum 1 US$), und Sie können sogar wählen, wohin Ihr Geld fließen soll.