Stabile Archiv-URLs in Serendipity
Der Gedanke ist nicht ursprünglich von mir, aber ich fand ihn überzeugend: Blogengines machen Archivseiten falsch, auch Serendipity. Derzeit liegen die einzelnen Artikel auf Archivseiten, nummeriert von 1 (heute) bis n (früher), archives/P134.html als Beispiel. Das ist unpraktisch, denn n wächst natürlich mit zunehmender Artikelanzahl. Neue Artikel drängen die alten auf hintere Seiten, oder anders: Das Buch Blog bekommt vorne immer neue Seiten dazu, wodurch die alten Seiten immer höhere Zahlen bekommen. Dadurch steht auf einer Seite nie lange das gleiche.
Das Archiv als Zeiststrahl von heute nach früher vorgestellt:
1, 2, ... , n-1, n
Crawlt Google einmal alle Seiten durch und stellt fest, dass auf Archivseite 134 das tolle Keywort "Bierfass" ist, ist dieses längst auf Seite 147, wenn ein Besucher auf diese Archivseite von der Suchergebnisliste aus klickt.
Dabei spricht nichts dagegen, das einfach umzudrehen. Sei ein Blog wie ein echtes Buch, dann werden die ersten Einträge natürlich auf die erste Seite geschrieben, und sie brauchen nie nach hinten zu wandern. Der Zeitstrahl von heute nach früher:
n, n-1, ... , 2, 1
Diese Änderung führt dazu, dass für immer auf Seite 134 und damit unter der URL archives/P134.htm der Artikel mit dem Keyword "Bierfass" zu finden ist. So finden Nutzer leichter, was sie suchen, was auch Google wertschätzen sollte.
Es gibt eine Forendiskussion zu der Idee und ihrer Umsetzung, der zugehörige Code wurde von mir schon hochgeladen. Es sollte also eine entsprechende Option in s9y 1.7 auftauchen, derzeit heißt sie "Stable Archives" und steht bei "Appearance and Options" in der Konfiguration. Ich empfehle, sie zu aktivieren, bitte um Tester und um Rückmeldung an mich.
Hak 1-2-Open
Hätte nicht gedacht, dass ich mal über Apfelmus schreibe. Geht mir auch eigentlich um den Deckel, den man in dieser Werbung sehen kann:
Den hab ich zufällig eingekauft, und das funktioniert wirklich gut. Wenn ich das richtig erkannt habe, ist um den eigentlichen Deckel ein drehbarer Ring, der dann mit Schwung gegen einen Widerstand stößt, wodurch der Deckel wesentlich einfacher aufgeht. Ich habe ihn noch nicht auseinandergenommen (und ärgere mich gerade darüber), vll ist das auch wesentlich raffinierter.
Auf jeden Fall für mich interessant, wenn ausgerechnet eines der billigeren Produkte solche Komfortverbesserungen bekommt.
Counter-Strike: Global Offensive Beta
CS: GO fühlt sich besser als Counter-Strike: Source an, als das damals veröffentlicht wurde. Das mag daran liegen, dass auch Source durch die Patches im letzten Jahr erheblich besser wurde, und GO darauf aufbauen konnte. GO fühlt sich relativ rund an.
Dabei ist das ein bisschen überraschend: Technisch ist es nämlich noch inakzeptabel schlecht. Noch ist es nur eine Beta, das kann also noch werden, aber ein gutes Zeichen sind die Probleme nicht:
- Soundprobleme: Während auf meinem System Schüsse unerträglich laut sind, und durch das dadurch nötige Runterregeln (was nicht richtig funktioniert) die Fußschritte fast unhörbar werden, sind auf anderen Systemen die Schritte viel zu laut, sodass ferne Gegner ganz nah wirken. Außerdem ertönen öfter mal Fußschritte, wo gar keiner läuft.
- Lags: GO hat eine Quickmatch-Funktion, bei der die Server wohl von Valve gestellt werden. Abends wurden diese die letzten Tage unspielbar laggig. Was bei einer Beta mit berechenbarer Auslastung auf technische Probleme hindeutet.
- Instabilität: Bei mir stürzt das Spiel regelmäßig ab und verweigerte dann manchmal, ein neues Spiel zu starten, bis nach dem Windows-Reboot. Auf anderen Systemen funktioniert das Beitreten von Spielen nur über die Konsole
- Verschluckte Schüsse: Direkt in meinem ersten Spiel laufe ich mit gezückter HE-Granate um die Ecke, sehe einen Gegner, werfe die Granate auf ihn und schieße mit der M4 zweimal auf seinen Körper, zwei Treffer. Dann trifft er meinen Kopf, ich bin tot, die Granate explodiert direkt unter ihm - er hat danach noch 54 HP und ordentlich Rüstung. Entweder die Schüsse oder die Granate wurden vom Server komplett ignoriert.
Gerade das Verschlucken von Schüssen ist ärgerlich. CS ist schon immer ein frustiges Spiel gewesen, aber noch bei keiner Version war ich so felsenfest der Überzeugung, dass Treffer vom Spiel nicht gewertet werden. Dabei macht GO genau das eigentlich gut: Die Schussbahn der Projektile wird optisch sehr deutlich angezeigt, was anfangs sehr irritiert, aber im Grunde eine gute Rückmeldung gibt. Nur muss diese Rückmeldung dann auch stimmen. Meine verbliebene Unsicherheit, ob das nun ein Bug oder Einbildung ist, lässt mich vermuten, dass das Spiel noch wesentlich besser Rückmeldung geben könnte. Es fehlt zum Beispiel schlicht die Anzeige, ob man überhaupt was getroffen hat, jedwede tiefergehende Statistik.
Die vorhandene Statistik dagegen ist inkonsistent: Kills und Deaths bestimmen das Scoreboard, aber zusätzlich gibt es dahinter verschämt einen Score, den zusätzlich zu Kills Assists und wahrscheinlich gute Aktionen wie entschärfte Bomben erhöhen. Auch werden Assists nun in der Killübersicht mit angezeigt (zusätzlich gibt es ein Symbol für "Kill durch Mauer hindurch"), was großartig ist. Das belohnt Spieler, die in einer Runde keinen Kill schaffen, aber doch etwas ausrichten, ist aber viel zu wenig, da die Rangfolge ja doch primär von Kills und Deaths entschieden wird. Warum kein zusätzlicher Assist-Zähler wie bei LoL?
Genug zum negativen. Denn trotz allem macht das Spiel Spaß. Ich schrieb oben, es fühle sich runder an, und das liegt nur teilweise an der Grafik. Aber auch:
Man vergleiche das mit diesem Charaktermodell von CS- Source:
Nein, es ist kein Quantensprung. Auch Source hatte schon schöne Texturen, gerade bei den das Bild dominierenden Straßen und Häusern. Aber eine Map wie Italy sieht in GO durchaus nett aus, vor allem, wenn der Kopf es immer noch mit der Karte aus 1.6 vergleicht:
Zur Erinnerung: So sah das damals aus
Source leidete unter dem HL2-Erbe, weil die Designer dort die Physikeffekte der Source-Engine entdeckt hatten und das nun auch irgendwie in CS: Source auftauchen musste. Wahrscheinlich deshalb war die ganze Karte mit widerlichem Kleinzeug wie Eimern und losen Steinen (Props) vollgestellt, die "taktisch" Ecken unpassierbar machen sollten und wunderschön bei Explosionen wegflogen, aber furchtbar nervig waren, wenn man als Spieler mit ihnen kollidierte und an ihnen leicht abprallte sowie verlangsamt wurde. Physikeffekte kann GO auch, aber die Maps wurden umgestaltet und das nervige Kleinzeug entfernt, wodurch das Spiel viel flüssiger wird.
Sowieso, die Maps: Es sind wieder die Klassiker wie Dust, Dust II und Aztek (und leider auch Train) dabei. Diese wurden aber - wie auch von 1.6 zu Source - überarbeitet. Diesmal aber wirken die Veränderungen sinnvoller. Dust 1 z.B. wurde taktisch erheblich erweitert, indem von unten aus dem Tunnel eine Treppe nach oben führt und eine Rampe von dort zum Balkon. Immer noch sind die Maps erheblich stärker gefüllt als in 1.5/1.6, aber die Kisten sind im Vergleich zu Source wieder kleiner und unterschiedlicher geworden.
Das Fadenkreuz wurde verändert, das Kaufmenü überarbeitet, das Radar mächtiger, die Optionen beinhalten nun fast alles wichtige relativ übersichtlich (wie automatisches Waffenaufsammeln, was prominent deaktivierbar ist). Teilweise wirkt da auch einfach die Zeit für GO positiv, denn nach Source und so vielen Jahren sind die Brüche mit dem alten CS verzeihbar geworden. Was allerdings kein Grund ist, die Maussensitiviät nur per Schieberegler einstellbar zu machen! Waffen gibt es sowieso neue, und sie wurden - wenn ich mich da nicht vertue - schon wieder umbenannt. Geblieben ist die AWP, die meiner Meinung nach immer noch die Balance zerstört - wenn nicht sogar mehr noch als früher, da die anderen Waffen ungenauer wurden.
Was in der Beta noch fehlt, ist der ausgegraute Menüpunkt "Spielen mit Freunden". Solche Komfortfunktionen (ich möchte mit Freunden gemeinsam auf einen Server joinen können, und vom Spiel aus Funwars organisiert bekommen) erwarte ich als LoL-verwöhnter Spieler von einem modernen Shooter, ebenso wie ordentliche Rückmeldung, erlernbares Waffenverhalten und CS-würdiges gutes Leveldesign. Letzteres macht auf mich derzeit einen guten Eindruck, ebenso wie das als Zusatz-Spielmodi eingebaute Gungame oder die Unterscheidung zwischen Classic Casual (Defusion mit Autokauf von Munition und Equipment, kein Teamattack) und Classic Competitive (ohne Autokauf, mit Teamattack). Werden noch die Bugs gefixt, die Komfortfunktionen eingebaut und die Rückmeldung im Spiel verbessert, könnte CS: GO ein ziemlich gutes Counter-Strike werden. Besser als Source fühlt es sich jetzt schon an.
Bash: Convert to UTF-8
Ein einfaches Problem, das im Grunde schwer ist: Eine beliebige kodierte Datei zu UTF-8 umwandeln. Das Programm iconv kann das Umwandeln, aber die momentane Kodierung nicht automatisch erkennen. Enca klang perfekt, unterstützt aber (zumindest in der Lucid-Version) nur östliche Sprachen. Was funktionierte, war überraschenderweise file -bi
:
local tmp=$(mktemp) local charset="$(file -bi "$inputfile"|awk -F "=" '{print $2}')" if [ "$charset" != "utf-8" ]; then iconv -f "$charset" -t utf8 "$inputfile" -o $tmp mv "$tmp" "$inputfile" fi
Bash: Assoziative Arrays
Bash ist großartig, und assoziative Arrays (Hashes in manchen Sprachen) braucht man immer wieder. Mein Spickzettel:
Erstellen
declare -A array #automatisch lokal
- Füllen
array["a"]="abc"
array["b"]="bcd"
array["b"]+="e"
array["c"]=1
let array["c"]++- Zugriff
echo ${array["a"]} #=> "abc"
echo ${array["b"]} #=> "bcde"
echo ${array["c"]} #=> 2- Iterieren
for key in "${!array[@]}";do
echo $key #=> a b c
doneFüllen
array["a"]="abc"
array["b"]="bcd"
array["b"]+="e"
array["c"]=1
let array["c"]++- Zugriff
echo ${array["a"]} #=> "abc"
echo ${array["b"]} #=> "bcde"
echo ${array["c"]} #=> 2- Iterieren
for key in "${!array[@]}";do
echo $key #=> a b c
doneZugriff
echo ${array["a"]} #=> "abc"
echo ${array["b"]} #=> "bcde"
echo ${array["c"]} #=> 2- Iterieren
for key in "${!array[@]}";do
echo $key #=> a b c
doneIterieren
for key in "${!array[@]}";do
echo $key #=> a b c
done
declare -A array #automatisch lokal
array["a"]="abc" array["b"]="bcd" array["b"]+="e" array["c"]=1 let array["c"]++
echo ${array["a"]} #=> "abc" echo ${array["b"]} #=> "bcde" echo ${array["c"]} #=> 2
for key in "${!array[@]}";do echo $key #=> a b c done
Insbesondere ${!array[@]}, also das Bash-Äquivalent zu getKeys(), musste ich erstmal finden.
God Bless America
Hier sterben reihenweise Menschen. Aber der Film schafft es, dabei lustig, intelligent und ruhig zu sein. Vor allem das ruhige, melancholische hat mich überrascht, diese Stimmung konnte ich dem Trailer nicht ansehen.
Ein Kleinod. Nicht der beste Film aller Zeiten, weil ich es kaum noch ertrage, wenn Filme so offensichtlich der vorgegeben Spannungskurve folgen. Aber Gespräche über Star Trek mit einer Mordserie überzeugend zu verbinden ist was besonderes. Und beide Hauptdarsteller sind toll.
Soviel zu Kulturpessimismus.
Tomorrow Never Knows
Historische Musik - da fehlt mir so einiges. Von den Beatles kenn ich zum Beispiel nichts außer den Liedern, die man im Musikunterricht singen musste, was keinem Lied guttut. Deshalb hat mich Tomorrow Never Knows umgehauen. Ich war total irritiert, warum bei der "Mad Men"-Folge "Lady Lazarus" statt einem Beatles-Song moderne Musik gespielt wird. Und verbrachte dann ein bisschen Zeit damit, nachzurecherchieren, ob das Lied wirklich von den Beatles ist.
In Deutschland natürlich von der Gema zensiert, aber bisher kam das Album durch:
RetroShare
Ich habe schon vor einer Weile davon phantasiert, dass in naher Zukunft Menschen vermehrt und legal Dateien untereinander austauschen dürften. Also nicht so wie jetzt mit dem ganzen Internet, sondern Freunde untereinander. Damals fand ich aber kaum geeignete Programme, die sowas unterstützen würden.
Jetzt zeigte ein Freund mir RetroShare.
Vom Konzept her ist das die ideale Tauschbörsensoftware. Ein P2P-Programm, bei dem man sich nur zu seinen Freunden verbindet, daher niemand sonst die eigene IP sieht und daher einen auch nicht abmahnen kann. Dazu die Suche bei Freunden von Freunden, wodurch mit wenigen Sprüngen die ganze Welt verbunden sein kann (vorausgesetzt, ausreichend viele nutzen dieses Programm). So können auch Dateien gefunden werden, die keiner der eigenen Freunde hat, und trotzdem sehen nur diese die eigene IP.
Das Programm selbst hat Schwächen: Die Oberfläche ist weder besonders ansehnlich noch wohldurchdacht, gerade weil der Fokus auf den Dateientausch etwas versteckt wird. Auch das Hinzufügen von Freunden - über deren Zertifikat - könnte einfacher sein. Trotzdem bleibt es ein geniales Konzept.
Joachim Paul bei log in
Dark Side of Action
Dark Side of Action war ein Vortrag auf der republica, der mich auf der einen Seite immer noch bewegt (Jens war scheinbar auch beeindruckt), aber auch sehr irritiert hat. So sehr, dass ich kurz nach dem Beginn des nächsten Vortrags wieder aufstand und Tante aufsuchte, um mit ihm darüber zu reden. Fühlte mich dann aber abgeblockt und unerwünscht, als Stephan dazukam, und bin bald wieder gegangen. Vll wurde mein Einwand als Angriff verstanden, und so war es nicht gemeint. Deshalb nochmal hier.
Darum ging es bei der Session:
Focusing on collective action, however, we tend to neglect what can happen to individual participants who find themselves under enormous pressure to succeed, to perform, and generally save the world… In this session, we want to broach the taboo of depression and failure in a (hack)tivist context, taking a step back from the challenges at hand to look at the effects on people getting involved – as well as those who can’t get involved.. It’s not as scary as it sounds!
Anwen Roberts stellte anfangs einen historisch-künstlerischen Kontext her, was bewegend war aufgrund ihrer eigenen hörbaren Erschütterung. Dann redete Tante mit Stephan Urbach über Stephans Erfahrung mit Depression, um schließlich einen Bogen zu allgemeinen Hinweisen zu schlagen, wie Aktivistengruppen mit sowas umgehen sollen. Und dafür hat Stephan meinen vollen Respekt, es erforderte sicher Mut, sich mit einer solchen Erfahrung vor einer Gruppe zu präsentieren.
Die Hinweise kann man wohl zusammenfassen als "Redet miteinander" und "Belastet einzelne nicht zu sehr". Und der Punkt ist es, der mich irritierte: "Get professional help (a secretary)" war eine der Kernaussagen. Das heißt, man solle die Situation ändern, die Belastung reduzieren, die die Depression ausgelöst hat. Tante meinte nachher, dass sie das so gemacht hatten, um die Barriere zum Hilfe-Holen zu verringen.
So einfach ist das leider nicht.
Depression ist eine faszinierende und grausame Krankheit mit zwei Facetten: Manchmal ist sie ersichtlich die Reaktion auf eine unerträgliche Situation, aber es gibt auch diese unerklärliche jeahrelange chronische Depression, die kaum an etwas festzumachen ist und auch schwer zu bekämpfen. Die Kernpunkte des Vortrages - die belastende Situation - ist keine alleserklärende Ursache für eine Depression, oder besser: man weiß das nicht so genau, aber sie ist ein Risikofaktor. Die vorgeschlagenen Maßnahmen sind daher gut und sinnvoll, aber es ist nicht garantiert, dass sie dem einzelnen helfen und vor einer Depression bewahren. Und noch viel wichtiger: einmal in einer Depression, ist das Ändern der Situation nicht genug. Wahrscheinlich. Völlig abgesehen davon, dass es zum Krankheitsbild gehört, zum Ändern von Dingen nicht die Kraft zu haben, und dieser Ratschlag mit diesem Hintergrundwissen fast höhnisch wirkt.
Deswegen wäre mir wichtig gewesen, dass das die Kernempfehlung für den Betroffenen gewesen wäre: "Get professional help (a doctor)". Mit dem zusammen dann - ob durch Medikamente oder durch Psychotherapie - kann die Situation verändert werden. Und genau deswegen hätte ich es auch gut gefunden, wenn bei dem Vortrag ein Psychologe/Psychiater/Psychotherapeut dabei gewesen wäre und die medizinische Erklärung versucht hätte zu liefern.
re:publica 2012
Die Erfahrung der republica von der Erfahrung Berlin zu trennen ist für mich kaum möglich. Große Stadt, schon allein das Chaos und die Feier am 1. Mai war erinnerungswürdig. Aber auch sonst empfand ich Berlin als eine sehr seltsame Großstadt mit komplett widersprüchlichen Eindrücken und Menschen, sodass man daran schon ein bisschen knabbern kann. Exemplarisch die Patronenhülle im Bordstein vor der U-Bahn-Station Warschauer Straße, von der aus man an einer wunderschönen alten aber natürlich von Sprayern bemalten Brückenbefestigung vorbeifährt. Nochmal was ganz anderes als andere Großstädte, in denen ich war.
Dann die republica selbst. Der richtige Umgang mit meiner Doppelrolle dort - universitärer Beobachter zum einen und gleichzeitig jemand mit diesem kleinen Blog hier, der die bekannteren Blogger dann natürlich vom Lesen kennt - musste erstmal von mir ausgehandelt werden. Am ersten Tag ohne funktionierendes Navi Felix Schwenzel im Bus zu begegnen, den ich seit Jahren lese, dann ihm folgen wollen aufgrund des offensichtlich gleichen Ziels und dabei durch Falschauskunft sein Zuspätkommen zu verschulden war weniger angenehm und tat mir unheimlich leid, aber setzte für mich immerhin den Ton, dass man auf der Konferenz sehr nah an Leuten ist, die man sonst aus der Ferne auf einer Art Podest wahrnimmt. Was dann wiederum sehr angenehm war, ebenso wie seine Begleitung. Und es machte Spaß, Leuten wie Jens, @wyrdnis und Fabian durch Zufall zu begegnen und dann richtig ernsthaft (und auf der Abschlussfeier dann auch weniger ernsthaft) über Themen Gespräche zu führen, für die man sonst kaum einen passenden Gesprächspartner mit deren Ahnung findet.
Sessions gabs dann auch einige und die meisten davon auch richtig gut. Höhepunkte für mich: soylent green, klar, schon weil unheimlich lustig und als These sympathisch, aber auch so kleine Denkübungen wie der falsch betitelte Vortrag zu Zukunftstechnik in Schulen, dem mehr Bezüge zu Star Trek trotz anfänglicher Distanzierung vom Titel gutgetan hätten, "Ich glaube, wenn du den Kopf triffst, sind die am meisten tot" von einer unfassbar jung und sympathisch wirkenden Doktorin, und der (leider teils im Gegensatz zu den anderen Diskussionsteilnehmern) beeindruckend klar argumentierende Jurist bei Das entfesselte Wissen. Poetry Spam war ein netter Ausklang und Sascha Lobo hat zurecht Stage 1 überfüllt, den gleichen Raum, den Steffen Seibert als @RegSprecher dann souverän und sympatisch um den Finger wickelte.
Kritik gehört hier auch rein, auch wenn mir etwas die Vergleiche fehlen. Schön war, wie offen die Redner immer Fragen zuließen und beantworteten. Funktionierendes Wlan wäre schön gewesen, wenn auch für mich (und ich glaube, für viele) durch umts nicht unbedingt notwendig. Unangenehm, dass einige Redner dann doch überzogen und man dann in der durch die aufbrechenden Menschen verursachten Hektik kaum noch den meist wichtigen Endüberlegungen folgen konnte. Und nächstes mal bitte dafür sorgen, dass auf meiner Heimfahrt kein brennender Güterzug ne dreistündige Verspätung samt Taxiheimfahrt verursacht, auch wenn der türkischstämmige deutsche alevitische Taxifahrer dann großartig und so unterhaltsam wie ein potentieller Sprecher auf der Konferenz war.
Bleibt mein Fazit, dass ich schon jetzt glaube, nächstes Jahr da gerne wieder hin zu wollen, was ja durchaus für eine gelungene Veranstaltung spricht.
Republica
Fast vergessen, hier zu erwähnen: Ich werde mir die republica dieses Jahr (mit einem Unikurs) anschauen.