Im Hintergrund tut Serendipity oder kurz S9Y seinen Dienst. Vor mehr als sieben Jahren stieg ich von Wordpress auf die Software um. Die Software tut im wesentlichen ihren Dienst. Außer, wenn wie heute, ein Plugin merkwürdige Sachen macht.
Ich hatte bis heute abend das Autosave-Plugin installiert. Das speichert die Einträge zwischen und soll eigentlich vor Datenverlust schützen. Bei mir sorgte es dafür, dass die Rezension mehrfach verschwand. Der Grund war, dass ich auf Speichern im Artikelfenster drückte und das Fenster offen liess. Das Plugin wollte einfach alte Werte speichern und löschte so den Beitrag.
Seit dem Jahreswechsel bereitet mir nicht die Blogsoftware Kopfschmerzen, sondern der Spam der eintrudelt. Anfangs hatte ich den Spamschutz aktiviert, den S9Y von Haus aus mitbringt. Dazu setzte ich ein paar Worte auf die Blacklist. Das reichte aus. Nebenan im Datenkanal habe ich noch das Bayes-Plugin im Einsatz. Das wurde von Beginn an angelernt und verrichtet gute Dienste.
Das S9Y Infocamp hat sich nun dem Thema Spamschutz bei S9Y angenommen. In dem Podcast besprechen sie verschiedene Mechanismen. Dabei kommt die Rede auf die SpamBee. Die arbeitet unter anderem mit versteckten CAPTCHAs. Die vier Podcaster sind voll das Lobes. Ich habe den Podcast glücklicherweise zur rechten Zeit gehört. Denn direkt nachdem ich die Biene hier installierte, traf das Blog eine Spamwelle. Von den Lesern hat das vermutlich niemand bemerkt. Die Spambiene hat den Spam wirklich sehr gut abgefangen. Wer also da draußen mit Spam bei S9Y zu kämpfen hat, sollte unbedingt SpamBee probieren. Vermutlich bringt das Plugin Linderung.
Ein Add-On für den Firefox, welches 4 von 5 Sternen hat und von mehr als sieben Millionen Nutzer installiert wurde, sollte doch halbwegs vertrauenswürdig sein. Zumindest legt Linus’ Law diese Erkenntnis nahe. Das Add-On Ant Video Downloader straft diese Annahme nun Lügen.
Der Ant Video Downloader soll Videos von Youtube, Facebook und vielen anderen Seiten auf einfache Weise herunterladen. Daneben hat die Software noch einen anderen Zweck. Sie sammelt Daten über jede Seite, die der Benutzer besucht. Dazu wird eine eindeutige Nummer, die so genannte Ant-UID, angelegt. Wenn eine Webseite aufgerufen wird, sendet Ant eine zweite Anfrage mit eben dieser Nummer, der URL der aufgerufenen Seite sowie der Browserkennung an die Adresse rpc.ant.com. Somit kommt dort jeder Seitenaufruf (also auch interne URLs im privaten Netzwerk) an, den ihr jemals gemacht habt. Damit aber noch nicht genug. Bei der Deinstallation der Software wird die Informationen mit der eindeutigen Nummer, der Ant-UID, behalten. Wenn ihr die Software später neu installiert, wird genau dieselbe Nummer wieder verwendet. Das ist also eine massive Verletzung der Privatsphäre der Nutzer.
Wie ein Witz klingt da die Privacy Policy von Ant.com:
As a responsible member of the community of website owners, Ant.com solutions (Here in after Ant.com) takes the privacy and security of its users with the highest regard.
Insgesamt finde ich in der Policy keinen Hinweis auf diese Spionagemaßnahme. Glücklicherweise haben die Betreiber der Add-On-Seite die Notbremse gezogen. Zunächst wurde der Download der Software komplett deaktiviert und jetzt ist diese als experimentell gekennzeichnet. Damit sollten nur erfahrenere Nutzer diese installieren können.
Das Beispiel zeigt mal wieder, das man sich offensichtlich auf keine Software verlassen kann und insbesondere das die Warnungen bezüglich der Add-Ons sehr ernst zu nehmen sind.
via InterWeb Task Force und The Register
Der Bug mit der Nummer 1926 raubt mir derzeit ein wenig den Nerv. Ich sammle Informationen, um diesem ein wenig auf den Grund zu gehen. Dazu tippte ich die folgende Zeile in meine Shell ein:
for file in `find extra-infos-2011-02 -type f`; do
awk ‘BEGIN {RS=“” } /history (2000-01-01|2008-09-11|…)/ { print $0 }’ \
>> wrong.2010-07
done
Die Datei wollte einfach nicht voll werden. Da knapp über 200000 Dateien durchsucht werden, machte ich mir anfangs keine Gedanken. Irgendwann warf ich einen langen Blick auf die Eingabe, dann noch einen und dann noch einen. Schließlich fiel mir auf, dass $file
nicht referenziert wird. Kaum macht man es richtig, schon wird die Datei mit Inhalten befüllt.
Bei einer Durchsicht der Sucheinträge dieses Monats stellte ich fest, dass einige Leute wissen wollen, wie man unter Ubuntu ein Shellfenster öffnet. Ich will das unten kurz beschreiben. Dabei gehe ich von der GNOME-Oberfläche aus.
Zwei Wege führen in der Regel nach Rom (oder zu einem Terminal ). Der vielleicht naheliegende geht über das Menü. Mittels der Folge Anwendungen->Zubehör->Terminal öffnest du ein Terminal aka Shellfenster. Wenn du jedoch häufig ein Terminal benötigst, kann es etwas umständlich sein, jedesmal sich durch die Menus zu klicken. Daher kannst du dir auch eine Tastenkombination anlegen. Hierzu gehst du auf System->Einstellungen->Tastenkombinationen, Darauf öffnet sich ein Fenster, indem du verschiedene Kombinationen festlegen kannst. Im Abschnitt “Desktop” ist der Eintrag “Ein Terminal starten”. Klicke den an und drücke danach die Tastenkombination, mit der du später das Terminal aufrufen willst. Bei mir liegt das auf Strg+Alt+T. Das Ergebnis deiner Eingabe steht danach rechts. Falls das deinem Wunsch entspricht, kannst du das Fenster schließen und hernach immer mit der gewählten Tastenkombination ein Shellfenster öffnen.
Nun sind sie wieder vorbei, die Chemnitzer Linux-Tage. Zwei Tage als Linux-Familienfest.
Wie schon im letzten Jahr hatte ich auch dieses Jahr den Aufruf zum Einreichen von Vorträgen verpasst. Daher kam ich hauptsächlich als Besucher. Einige der Vorträge klangen recht interessant und so wollte ich die Zeit nutzen, um mir diese anzuhören und Ideen zu sammeln. Doch wie so oft kam alles ganz anders. Ich hielt mich sehr häufig außerhalb der Räume auf, traf eine Menge nette Leute und unterhielt mich über verschiedene Themen. Doch natürlich besuchte ich auch Vorträge (wenn auch meist nur zur Hälfte ):
- Notensatz mit Lilypond für den Hobbymusiker
- Kurz nach meinem Eintreffen in Chemnitz hüpfte ich in diesem Vortrag. David Kastrup stellte das Notensatzsystem Lilypond vor. Das erste Beeindruckende war, dass Emacs auch PDF-Dokumente zeigen kann und zwar inline. David meinte später, dass das mit der aktuellen CVS-Variante (Emacs23) geht. Das PDF zeigte Noten zu Kalinka an und David spielte diese live auf seinem Akkordeon. Der Vortrag wurde immer mal wieder durch solche netten Einlagen unterbrochen. Auf diese Weise war er recht kurzweilig, auch wenn ich über Lilypond nahezu nichts lernte.
- Die Telematik im Gesundheitswesen: Was läuft auf Linux in der Arztpraxis?
- Ich erwartete von dem Vortrag ein paar Aussagen zu Linux in der Arztpraxis allgemein und eine Diskussion von Vor-/Nachteilen. Die Vortragende erzählte jedoch (zu) viele Details zur elektronischen Gesundheitskarte. So fasste ich recht schnell den Entschluss, die Räume wieder zu verlassen.
- I2P - anonymous low latency mix network
- Der Vortrag zu I2P interessierte mich natürlich besonders, u.a. deswegen weil ich mit dem Gedanken gespielt hatte, selbst einen zu dem Thema einzureichen. Lars gab einen kurzen Einblick in die Software und die Funktionsweise. Leider war die Zeit zu knapp bemessen, um auf mehr Details einzugehen oder ein praktisches Beispiel zu zeigen. Dennoch waren viele Zuhörer interessiert. Vielleicht konnte so der eine oder andere Nutzer gewonnen werden.
- Die Rechtsprechung des Bundesverfassungsgerichts zum Datenschutz: Online-Durchsuchung, Vorratsdatenspeicherung etc.
- Johannes Lichdi gab einen Überblick zu den Aufgaben des Bundesverfassungsgerichtes und zeigte anhand der in den letzten Jahren gefällten Entscheidungen, dass das Gericht keineswegs immer Gesetze kippt, sondern vielmehr die Anwendung verfassungsgemäß auslegt und anderweitig minimal eingreift. Sein Fazit war, dass wir das Bundesverfassungsgericht unbedingt zum Schutz der Grundrechte brauchen und auch selbst viel tun müssen. Als kleines Detail am Rande wurde die Broschüre
Meine Daten gehören mir! Datenschutz im Alltag
(lokale Kopie, PDF, 1,2MB) verteilt. Seite 6 verweist auf mein Buch Anonym im Netz
.
- Git verstehen und nutzen
- Nachmittags wollte ich mir diesen Vortrag noch anhören und hoffte,
etwas Neues zu git zu erfahren. Der
Vortragende glänzte mit fast 80 Folien, welche im wesentlichen
das Tutorial zu git beinhalteten. Hier wäre weniger mehr
gewesen. Auf alle Fälle entstand durch den Vortrag bei mir der Plan,
selbst einen Workshop oder Vortrag dazu zu machen. Die grundlegenden
Ideen zum Ablauf des Ganzen habe ich auch schon im Kopf. Jetzt muss
ich nur noch die nächste Linux-Veranstaltung abwarten ...
- Quo vadis MySQL?
- Wieder ein Vortrag, zu dem ich leider viel zu spät kam. Erkan
Yanar gab einen guten Überblick zum MySQL-Universum. Ich würde mich
sehr freuen, wenn den Vortrag später als Audio zum Nachhören gäbe.
- Analyse und Visualisierung von Daten mit R
- Leider war für mich auch dieser Vortrag ein Fehlschlag. Viele
Folien und wenig Inhalt. Der Vortragende las viele Funktionen von
GNU R vor und am Schluss gab es eine Demo. Diese Übersicht an
Funktionen lässt sich auch von der Einführung zu R oder weitergehender Dokumentation gewinnen. Bei
der Demo wiederum wurden verschiedene Befehle aufgerufen, ohne dass
klar war, was da gemacht wird. Mir wäre lieber gewesen, wenn der
Vortragende nach der Einführung kurz erwähnt hätte, dass
beispielsweise sämtliche klassischen statistischen Funktionen in
GNU R abgedeckt sind (Falls es welche gibt, Ausnahmen
nennen). In einer Demo hätte ich mir dann ein kleines Beispiel
gewünscht, wo kurz die Datenbasis erwähnt wird und dann später der
Vortragende anhand einzelner Befehle die Funktionsweise erklärt. In
dem Vortrag habe ich leider nichts von dem Programm
mitgenommen. Weder wurde mein Interesse geweckt noch war ich
abgestossen.
- Verteiltes
Suchen – Ein aktueller Überblick
- Der letzte Vortrag bei den Chemnitzer Linux-Tagen handelte vom
verteilten Suchen. Daniel Gultsch gab einen kurzen Überblick in das
Suchen allgemein und stellte später einzelne Projekte (YaCy, Lucene, Wikia und weitere)
vor. Dabei kam für mich heraus, dass nur YaCy eine verteilte
Suchmaschine ist. Die meisten anderen Projekte decken nur
Teilaspekte des Suchens ab. Dennoch scheint YaCy nichts für den
normalen Desktop zu sein. Zum einen benötigt das Programm Unmengen
an RAM (unter 512MB geht nichts), CPU und anderen
Systemressourcen. Zum anderen gibt es nach Aussagen des Vortragenden
keine Maßnahmen gegen das Abschalten eines Peers. Der Vortrag selbst
gefiel mir gut. Jedoch glänzten die Folien durch
Rechtschreibfehler. Würden die Chemnitzer Linux-Tage Preise für
Fehler auf Folien verleihen, hätten diese den ersten Platz
sicher. Das fand ich sehr schade, da es mich vom Vortrag ablenkte.
Bei vielen anderen Vorträgen hoffe ich, dass es später die Folien
oder sogar die Audios gibt.
Am Samstagabend stand nun noch das Keysigning auf dem Programm. Ich
hatte vorher die nebenstehenden Hashwerte ausgedruckt. Das sollte
helfen, meine Stimme zu schonen und nicht alle Zahlen/Buchstaben
durch die Halle brüllen zu müssen. Danach gab ich eine kurze
Erklärung zum weiteren Ablauf und Sven bestand auf einem Gruppenfoto.
Schließlich hieß es Aufstellung nehmen. Wir hatten etwa
60 Teilnehmer mit fast 80 Schlüsseln. Ich machte den
Anfang und wanderte von Teilnehmer zu Teilnehmer. Der Marsch ging
sogar recht zügig. Denn viele hatte ich bereits unterschrieben. Auf
dem untenstehenden Foto seht ihr einen Blick in die Menge:
Mir haben die Chemnitzer Linux-Tage in diesem Jahr wieder sehr viel
Spass gemacht. Auch wenn die von mir gewählten Vorträge eher
Mittelmaß waren. Dafür entschädigt die nette Atmosphäre und die
perfekte Organisation. Für mich ist das wirklich wie ein
Familientreffen der Linuxfreunde und ich freue mich schon auf
nächstes Jahr.
Als ich kürzlich mit Sven über das Projekt Euler sprach, hatte er recht schnell einen Lösungsvorschlag parat. Auf die Frage, wie er das gemacht habe, antwortetet er: vim.
.
Nun war das elfte Problem an der Reihe und ich erinnerte mich wieder an Svens Worte. In dem Problem ist eine 20x20 Matrix gegeben und man soll das größte Produkt von vier nebeneinanderliegenden Zahlen finden:
08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08
49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00
81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65
52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91
22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80
24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50
32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70
67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21
24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72
21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95
78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92
16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57
86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58
19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40
04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66
88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69
04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36
20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16
20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54
01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
Nach einigen Überlegungen kam ich zu dem Schluss, dass die Zahlen in der Lösung größer als 74 sein müssen. Dann kam sed zum Einsatz: sed ‘s,\([0-6][0-9]\|7[0-4]\) , ,g’ problem11. Übrig blieb die untenstehende Matrix:
97 75 78 77 91
99 81 87 98
81 79 93 88
95 91
89 92 80
99 75 78 84
98 81
95 94 91 94
99 97 78 78 96 83 88 89
75 76 97 95
78 75 94 80 92
96 88 85
86 89
80 81 94 92 86 77 89
83 97 99 97 79 98
88 87 93
94 76
88 99 82 85
78 90 86 81
83 92 89
Hier fielen mir sofor die markierten Viererblöcke ins Auge, wobei das Produkt der rot markierten Zahlen größer sein muss als das der blau markierten. Als gab ich die Lösung ein und hatte schnell die richtige Lösung.
Beim Schlendern durch eine Bücherei fiel mir gestern, das quasi druckfrische Buch “zsh -- Die magische Shell” auf. Seit einiger Zeit schrieben Julius Plenz und Sven Guckes daran und seit etwa einer Woche ist es im Handel erhältlich.
Im Buch geht es natürlich um die beste Shell der Welt, die zsh. Auf sechs Kapiteln in insgesamt 200 Seiten wird (hoffentlich) alles Wissenswerte gesagt. Hoffentlich deswegen, weil ich das Buch noch nicht komplett gelesen habe. Sobald ich durch bin, werde ich sicher eine Rezension dazu schreiben.
In der Einleitung finden sich kurze Hinweise zur Installation, Konfiguration und zum Prompt. Das zweite Kapitel beschäftigt sich dann mit dem effizienten Arbeiten. Es werden Aliase, Shell-Funktionen und Expansionen erklärt. Der Name des dritten Kapitels “Dateien, Ausgaben und Programmaufrufe” ist selbsterklärend. Kapitel 4 erklärt die interaktive Verwendung und Kapitel 5 das Skripting. Das letzte Kapitel des Buches beschreibt, wie Completions und Widgets selbst geschrieben werden können.
Ich bin sehr gespannt und freue mich, das Buch zu lesen.