Mal schaun, was es diesmal war — und wie lange es dauert, bis alles wieder läuft.
Siehe auch [213.239.19* Weg??][hf]
[hf]: http://forum.hetzner.de/wbb2/thread.php?threadid=4422&sid=
Mal schaun, was es diesmal war — und wie lange es dauert, bis alles wieder läuft.
Siehe auch [213.239.19* Weg??][hf]
[hf]: http://forum.hetzner.de/wbb2/thread.php?threadid=4422&sid=
[Usability News][un] [Vol. 7 Issue 1][71] ist da.
Inhaltsverzeichnis:
* exploring the effects of page layout on online reading performance
* examining the use of metaphors on websites
* evaluating the usability of technical documentation
* investigating the psychomotor aspects of using a mouse
* comparing ergonomic mice to the standard mouse
[un]: http://www.usabilitynews.org/
[71]: http://psychology.wichita.edu/surl/usabilitynews/71/usability_news.html
**Was ist eRONA?**
Ein kleiner, schlanker webbasierter **Feedreader und Aggregator**. Ich habe eRONA 2004 gebaut, weil kein Feedreader mir gefallen hat - nebenbei: eRONA ist ein gutes halbes Jahr älter als Bloglines.
[eRONA stellt Feeds und Einträge ähnlich wie ein Mailprogramm dar][mp] und hat als einziger mir bekannter Feedreader die Möglichkeit, alle Einträge aller abonnierten Feeds nach Datum sortiert darzustellen statt nach Feeds geordnet.
[mp]: http://wwworker.com/erona/myfeeds.php?p=1
Wenn man seine Feedsammlung als öffentlich markiert, exportiert eRONA [einen Feed mit den 15 aktuellesten Einträgen][feed] aus allen abonnierten Feeds. So kann man thematisch ähnliche Feeds ganz einfach zu einem verschmelzen und benutzen.
[feed]: http://wwworker.com/erona/myfeeds.php?p=1&mode=rss
eRONA exportiert ebenfalls OPML, und zwar [als Datei][file] als auch [per HTTP][http]. Damit, sofern das eigene Blogsystem die Möglichkeit bietet, hat man immer eine aktuelle Blogroll.
[file]: http://wwworker.com/erona/export.php?p=1&go=go
[http]: http://wwworker.com/erona/export.php?p=1&go=gogo
Das Tolle an eRONA ist, das man nach einer anfänglichen Einrichtung eRONA ohne jeden Login von überall aus benutzen kann.
Wer sich jetzt das ganze anschauen will ist herzlich eingeladen. Unter [http://wwworker.com/erona/][url] steht es bereit und wartet auf Betatester ;)
[url]: http://wwworker.com/erona/
Viel Spaß und Danke, Sascha
Da hat der Marcus was angestellt. Wenn das so weitergeht blogge ich bald nur noch [drüben][xsnil] ;)
[xsnil]: http://xsnil.antbear.org/2005/02/12/mysql-optimization-php-profiling-with-apd/
Diesmal gehts um PHP Profiling mit APD und MySql-Optimierung mit EXPLAIN und Hirnschmalz. Viel Spaß ;)
Auf [xs:nil][xs], einem Gemeinschaftsblog von [Marcus aka bwolf, Lars aka SeeChoas und Hugh aka raccoon][about] zu dem ich netterweise eingeladen wurde, [erläutere ich eine Idee][art], wie man ohne großen Aufwand für große Datenmengen Gelesen/Ungelesen-Informationen speichern kann.
Eigentlich für [eRONA][erona] erdacht, lässt sich das Verfahren vielleicht auch auf Foren anwenden. BTW, so sieht eRONA im Moment aus:
.
[xs]: http://xsnil.antbear.org/
[art]: http://xsnil.antbear.org/2005/02/08/abbilden-von-gelesenungelesen-informationen/
[about]: http://xsnil.antbear.org/about/
[erona]: http://wwworker.com/erona/
Ihr lustigen Kopierer da draußen, Ihr seid phantasielos, langweilig und unkreativ. Aber das wißt Ihr ja.
[phpBB.de][p] ist im deutschsprachigen Raum recht bekannt, vor allem bei Leuten, die selber ein phpBB administrieren. Und ein hoher Bekanntheitsgrad führt zu Nachahmern.
Jetzt könnte man das sportlich sehen und sich darüber freuen, dass die eigene Website scheinbar so gut ist, das sie kopiert wird. Da werden ganze Artikel eins zu eins übernommen, Navigationsgrafiken entwendet, ja sogar der komplette Aufbau kopiert.
Was glaubt Ihr Kopierer, dass wir das nicht merken? Dass wir Euch nicht auf die Füße steigen? In welcher Welt lebt Ihr eigentlich?!
[p]: http://www.phpbb.de/
> Contrary to popular opinion, the internet is not really about technology. Its about people, specifically how people communicate.
Contentious » Handling Porcupines, Trolls, and Other Online Vermin (Series Index)
Eigentlich hatte ich gehofft, dass man das heute nicht mehr betonen müsste. Technik ist zwar technikgetrieben, erfüllt letzlich aber einen menschlich kommunikativen Zweck.
Zum Linuxtag 2003 in Chemnitz habe ich in einem Vortrag ‘[So nah und doch zu fern: Online Communities][vor]’ auf die Gefahr hingewiesen, eine Online Community an der Anzahl oder dem Umfang ihrer technischen Möglichkeiten zu beurteilen: *Online Communities sind zu allererst Menschen, die sich auf einer Website treffen, und nicht Websites, auf der sich Menschen treffen.*
PS: Der Vortrag ist als MP3 [abrufbar][vor], einfach mal reinhören.
[vor]: http://www.tu-chemnitz.de/linux/tag/lt5/vortraege/detail.html?index=29
Schon wieder eine ‘Initiativbewerbung’ in meinem Postfach. Diesmal ein IT-Projektleiter, der spammend einen neuen Job sucht. Naja, schaun wir halt mal rein…
Hmm, die Mail braucht aber lang… Sag mal, wie groß ist die denn?! Thunderbird aus, Webmail an. Und da haben wir ja den Übeltäter: ein *501kb kleines Worddokument*. Geht’s noch?
Siehe auch: [Bewerbungs-Spam][b]
[b]: http://www.itst.org/web/176-bewerbung.shtml
So, after [wetting your mouth][st], here is my implementation. If you expect something BIG, glamorous, I really must disappoint you ;) This implementation is known to work this MT 2.6x and MT Blacklist 1.6.4. It should work with later versions, but may need some changes. Please report any problems — and feel free to send me working implementations for later versions of MT and [MT Blacklist][bl].
[st]: http://www.itst.org/web/313-secret_tags_at_work.shtml
[bl]: http://www.jayallen.org/projects/mt-blacklist/
First, go to your comment template and insert a hidden field like this:
or alike. **Change the name to a random value of your choice.**
**Secret Tags without MT Blacklist**
Now you must tell MT about this new tag. Search Comments.pm (/lib/MT/App/) for the following code:
sub post {
my $app = shift;
my $q = $app->{query};
if (my $state = $q->param(‘comment_state’)) {
and replace it by
sub post {
my $app = shift;
my $q = $app->{query};
// Secret Tag. Don’t tell your mummy ;)
if (!$q->param(‘stag’)) {
$app->log(‘Blocked comment because of missing Secret Tag’);
return $app->error($app->translate(“Invalid entry ID “));
}
if (my $state = $q->param(‘comment_state’)) {
Then save Comments.pm and upload it to your MT installation. Don’t forget to backup a working, unmodfied copy of Comments.pm before overwriting it.
From now on, all comment submissions that do not include this form field will be rejected with an error message telling the entry code was invalid. We are polite people, so we don’t curse ;) Beside, all blocked attempts will be written to your Activity Log.
**Secret Tags with MT Blacklist**
At this point a quick break to thank Jay for this great plugin — ok, let’s continue.
MT Blacklists replaces the comment and trackback posting routines of MT, so we need to implement our Secret Tag in MT Blacklist’s new code.
Find MTBlPost.pm (/extlib/jayallen) and search for:
sub comment_post_hdlr_26 {
require jayallen::Blacklist;
use MT::Util qw( remove_html );
my $app = shift;
my $q = $app->{query};
if (my $state = $q->param(‘comment_state’)) {
require MT::Serialize;
my $ser = MT::Serialize->new($app->{cfg}->Serializer);
$state = $ser->unserialize(pack ‘H*’, $state);
$state = $$state;
for my $f (keys %$state) {
$q->param($f, $state->{$f});
}
}
and append:
// Secret Tag. Don’t tell your mummy ;)
if (!$q->param(‘stag’)) {
$app->log(‘Blocked comment because of missing Secret Tag’);
return $app->error($app->translate(“Invalid entry ID “));
}
Now find
sub comment_post_hdlr_266 {
require jayallen::Blacklist;
use MT::Util qw( remove_html encode_html );
my $app = shift;
my $q = $app->{query};
and append our five lines again:
// Secret Tag. Don’t tell your mummy ;)
if (!$q->param(‘stag’)) {
$app->log(‘Blocked comment because of missing Secret Tag’);
return $app->error($app->translate(“Invalid entry ID “));
}
That’s all folks. As already mentioned, this works with MT 2.6x and MT Blacklist 1.6.x. Since I do not have any working installations of current versions, I can not tell what you have to do to make it work there. It should work accordingly, though ;)
When I thought about a better way to tell legitimate users from evil-doing spammers, I came up with [Secret Tags][st].
Today I have two up and running Secret Tag implementations. Both work very well, and I am here to demonstrate this.
From Jan 25th until today there were 312 attempts to spam WWWorker. 40% of these, 125 in numbers, where blocked because of a missing Secret Tag in the form data. The other 60% were sorted out by MT-Blacklist.
For many spam attempts blocked by MT Blacklist a second attempt from the same IP and only seconds after the first got blocked because of a missing Secret Tag. Looks like the spammer had two different comment texts, one with already blacklisted content and a second with content not yet blacklisted text. Fortunatly Secret Tags were there to get rid of this new spam.
One thing my Anti-Spam Tactics is missing. It does not share data between the blacklist and Secret Tags. We need to insert content of comments blocked via Secret Tags into the blacklist. This way we could be sure to be able to block even more spam using only one system.
Conclusions?
* Secret Tag do work in the specified way: Block spam without harming legitimate users.
* Never rely on only one system. Always use two or three systems that work independently and overlapping, but not in exactly the same way.
* Share data between your systems where appropriate.
* Harming your legitimate users with [nofollow][nfn] is not necessary.
[st]: http://www.itst.org/web/269-secret_tags_an_alternative.shtml
[nfn]: http://www.itst.org/nonofollow/