Mount & Blade: Warband
Sunday, 21. June 2015
Nachdem Shadow Warrior fertig war ist mir Mount & Blade: Warband in meiner Linux-Steambibliothek aufgefallen. Das habe ich vor langer Zeit schonmal unter Windows gespielt, aber nie drüber geschrieben. Daher gibt es jetzt hier die wahrscheinlich verspäteste aller Kurzreviews des Spiels.
Das wichtigste zuerst: Es läuft gut unter Linux. Weder stürzt es dauernd ab, noch gibt es Grafikfehler, noch ist die Performance schlecht. Die einzige echte technische Macke ist die absurd lange Ladezeit beim Starten des Spiels, während das Laden des Speicherstandes danach schnell genug funktioniert.
Die zweite Macke ist der Mod-Support, der unter Linux nicht existiert. Für Warband gibt es eine Reihe von Mods, die das Spiel verbessern und insbesondere interessant wären, weil sie die Bedienungsmacken ausbessern. Leider startet das Spiel bei mir nicht mehr, sobald ein Mod aktiviert ist.
Im Vanilla-Spiel selbst ist alles wie unter Windows: Man erstellt sich einen Protagonist, kann dann auf der Weltkarte umherreisen, Soldaten und Gefährten anwerben, Handeln, Echtzeit-Schlachten gegen andere Soldatengruppen schlagen, Burgen belagern, einnehmen und verteidigen. In meiner letzten Spielesession habe ich mich in das Sultanat eingeheiratet und darf jetzt Feste veranstalten (Woohaa!), wobei ich nicht weiß, was mir das bringen wird (Hmpf!).
Generell ist das eines der Probleme des Spiels: Es erschlägt einen anfangs und es ist nicht klar, was man tun kann und soll. Hat man wie ich alle Serienteile schonmal gespielt, ist das natürlich kein Problem mehr. Andererseits kam ich bisher immer an den Punkt, an dem es dann auch gut war – Schlachten geschlagen, Burgen eingenommen, voller Geldbeutel und nichts mehr, was mir in annehmbarer Zeit erreichbar schien. Allerdings behauptet Steam, dass ich Warband damals unter Windows schon 40h gespielt habe, es hat mich also eine Weile unterhalten.
Kann man die Grafik hübsch nennen? Wirklich nicht, das Spiel hat sein Alter und war nie schön. Aber sie funktioniert ausreichend gut, sodass Schlachten immer noch Spaß machen und die sichtbaren Änderungen der neue Ausrüstung mich erfreuen.
Fazit: Wer das Spiel verpasste, für den ist die Linuxversion eine gute Gelegenheit um es nachzuholen. Warband ist der beste Teil der Serie, und das Konzept der offenen Welt mit den Auswirkungen des eigenen Handelns plus cooler Echtzeitschlachten wurde meines Wissens nirgends nochmal umgesetzt – Mount & Blade ist etwas besonderes. Und bei Steam gerade im Sonderangebot.
Whiteout Email indiegogo-Kampagne
Tuesday, 9. June 2015
Ich will Whiteouts indiegogo-Kampagne vorstellen.
Emails sind wichtig. Mögen Teenager sie auch nicht mehr/noch nicht nutzen, für mich und viele andere sind sie das Zentrum der digitalen Identität, noch vor dem Blog, denn alle Dienste inklusive ihm senden ihre Benachrichtigungen an die eine Email-Adresse.
Gleichzeitig sind Email ein Relikt aus einer anderen Zeit. Teils werden sie vollständig unverschlüsselt vom Nutzer an den Server gesendet. Ist der Anfang verschlüsselt, ist immer noch nicht klar, dass die Server sie nicht unverschlüsselt weitersenden. Selbst wenn der Transportweg sicher wäre, sind die Server es nicht, sie lesen die Emails im Klartext. Nicht bei jeder Email ist das schlimm, aber gesammelt sagen sie so viel über jeden von uns - und sie werden gesammelt - dass der Gedanke jeden erschrecken sollte.
Email-Clients sind nicht unbedingt erschreckend, aber richtig glücklich bin ich noch mit keinem geworden. Thunderbird machte mich vor einiger Zeit mit seinen Macken mal so ernsthaft wütend, dass ich ihn seitdem weiträumig meide. Ein paar andere Clients habe ich mir angeguckt, letztendlich bin ich bei Sylpheed gelandet. Aber auch Sylpheed ist weder hübsch noch besonders effizient, und es hat ärgerliche Macken - wie die Suche, die nicht funktioniert, wenn man nicht vorher auf den Posteingang geklickt hat. Und eigentlich sollte ein Email-Client eine Webapp sein, wie Gmail. Doch Gmail fällt raus - da könnte ich die NSA und den BND auch gleich in den CC setzen. Uberspaces Roundcube-Installation ergänzt bei mir nun Sylpheed, das funktioniert soweit. Aber mehr auch nicht.
Das eigentliche Problem ist die fehlende Verschlüsselung, und dafür ist Roundcube nicht die Lösung. Jede Email-Adresse sollte einen PGP-Key haben, jede Email verschlüsselt sein. Das erreichen wir nur, wenn zwei Sachen zusammenkommen:
- Email-Cloudanbieter wie Gmail müssen die Verschlüsselung integrieren, beim Anlegen eines Kontos den PGP-Key miterstellen
- Email-Clients wie Thunderbird müssen diesen Key sofort und ohne Aufwand nutzen
Vor ein paar Jahren wäre das noch einfach gewesen, da hätte einfach der Email-Client beim ersten Start einen Key angelegt und hochgeladen. Heute müssen die Cloudanbieter dazu, aber das ist nicht alles: Es müssen alle Endgeräte dazu. Eine verschlüsselte Email muss auch auf dem Handy lesbar sein. Das ist zwar unsicher, weil alle Smartphones unsicher sind. Aber es ist nötig, denn noch schlechter als unsicher ist unbenutzbar.
Whiteout geht vielleicht in die richtige Richtung. Sie haben einen FOSS-Client, der auf einigen Systemen läuft, inklusive der Webapp, die sich trotzdem mit jedem Email-Konto nutzen lässt. Die Verschlüsselung ist per default an, Keys werden wenn nötig generiert. Ich konnte das nicht ausgiebig testen, aber auch abgesehen von der Verschlüsslung machte das einen guten Eindruck, hübscher als roundcube allemal. Das Ganze von einem kleinen deutschen Entwickler.
Nicht ausgiebig testen konnte ich es, weil Whiteout mit dem uberspace imap-Server nicht gut zusammenspielt. Damals lief ich in Timeouts, der Client lief nur manchmal. Inzwischen bekomme ich gar keine Verbindung mehr hin, die TLS-Version sei inkompatibel.
Wenn ihre indiegogo-Kampagne erfolgreich abläuft, wird dieses Problem vielleicht behoben. Die Kampagne hat laut der Seite vier Ziele:
- Den Client auf alle Smartphones bringen
- Mithilfe von Experten die Usability des Clients verbessern
- Zusammen mit der Open-Source-Communitiy einen Standard zum Syncen von Pricate und Public Key finden
- Ihre Server für ihren Webservice vorbereiten
Von den vieren ist der dritte in meinen Augen derjenige, der am wichtigsten ist. Ein guter Weg, Keys zu syncen, würde dabei helfen, Email-Verschlüsselung einfacher zu machen.
Ich glaube nicht, dass am Ende jeder diesen Client nutzen wird - besonders nicht, da der Client bei mir nichtmal funktioniert. Aber es wäre cool, wenn das ein bisschen erfolgreich wäre und die anderen Clients und Mail-Anbieter diese Grundideen umsetzen würden. Emails sollten immer verschlüsselt sein, aber die letzten Jahre zeigen: Es reicht nicht, wenn die daran interessierten sich Keys erstellen und sie wo möglich nutzen. Stattdessen müssen solche Clients existieren und für Anwender die Standardwahl sein, sodass die Verschlüsselung möglichst einfach, möglichst im Hintergrund abläuft.
Shadow Warrior
Monday, 8. June 2015
Shadow Warrior war im letzten von mir gekauften Humble Bundle. Anfangs lief es wie bei Dee nicht auf meinem Linux-System, ein paar Patches und Updates per xorg-edgers PPA später lief es - bis auf ein paar Szenen - ordentlich. Es ist damit das erste AAA-Spiel, das ich unter Linux durchgespielt habe.
Lo Wang ist ein Assassine, der ein Katana abholen soll. Das geht schief, Dämonen greifen an, er verbündet sich mit einem anderen Dämon (Hoji) um doch noch das Schwert, das aus mehreren Teilen besteht, zusammenzubauen. Es gibt eine größere Hintergrundstory, die im Laufe des Spiels enthüllt wird, mir ganz gut gefallen hat und das Spiel gegen Ende gut trägt. Gleichzeitig hat die Story mich aber auch sehr gestört, denn warum Wang das Schwert zusammenbekommen will blieb mir völlig unverständlich. Die größere Hintergrundstory mit den Dämonen - von der ich nicht viel mehr verraten will - ist etwas ungewöhnlich und interessant, aber Wangs Rolle in der Story des Spiels mir ein Rätsel. Das ist ähnlich störend wie andere Eigenheiten der Story: Ein Level lang versucht Wang, Hoji wiederzufinden, weil er ihn unbedingt brauche, doch ob mit oder ohne Hoji macht gar keinen Unterschied, denn auch ohne den Dämon hat Wang noch alle magischen und sonstigen Kräfte. Der nächste Schritt war an diesem Punkt auch völlig klar, Hoji nichtmal für den weiteren Storyverlauf notwendig.
Die Story ist bei so einem Spiel aber auch gar nicht so wichtig. Es ist ein FPS mit den üblichen Waffen plus Katana, Rollenspielelementen und magischen Fähigkeiten. Das ist gut gemacht, die Feinde variieren, die Waffen sind spaßig, die Fähigkeiten nützlich. Gleichzeitig ist das aber auch ziemlich altbacken. Ein großer Raum, Portale öffnen sich, Gegner besiegen, nächster Raum - zu sehr das gleiche, um es 13h (plus einer Stunde Testen, bis es lief) wirklich zu genießen.
Shadow Warrior hatte bei mir aber auch ein schlechtes Timing. Erst vor kurzem habe ich The Darkness 2 gespielt, dem Shadow Warrior einfach zu sehr ähnelt. Beide Spiele sind übertrieben brutale FPS mit Rollenspielelemente, in beiden verbündet sich der Protagonist mit einem Dämon, beide sind im Kern old-school Shooter, aufgelockert mit Zusatzelementen (Dämonfähigkeiten, Katana). The Darkness 2 ist das bessere Spiel, da kompakter (mit 5h eher zu kurz als zu lang), spannender und hübscher. Shadow Warrior ist dafür lustiger: Die Sprüche von Wang und seine Wortgefechte mit Hoji, die absurden Glückskekse, die Hasendämonen - das geht in Richtung Duke Nukem Forever, was ich mochte, hat aber seinen eigenen absurderen Einschlag.
Für Linux-Spieler würde ich Shadow Warrior daher trotzdem empfehlen. Zudem liefert es nach Witcher 2 und Kerbal wieder einen dieser großartigen Momente, in dem das Linux-System nicht mehr zum Spielen mit Windows getauscht werden muss, das Spiel gleichzeitig kein kleines 2D-Indie-Ding ist, sondern Linux sich einfach so unterschiedslos zum Spielen eignet; das mir wieder einmal klarmacht, das heute die Zukunft ist.
Raspberry Pi Geek Spezial
Thursday, 4. June 2015
Vor ein paar Tagen lag dieses Magazin in meinem Briefkasten:
Ich hatte bei Chris‘ Verlosung mitgemacht und das dort gewonnen. Natürlich hatte ich auf den Hauptgewinn gehofft, das Mediacenter Kit, aber der Preis war trotzdem interessant - vor allem, um Chris gedruckt zu sehen.
Das Magazin richtet sich eindeutig an Anwender, gibt daher mir mehr nur einen Überblick über das, was mit einem so kleinen Rechner doch alles möglich ist. Fast alle Artikel sind von Chris selbst geschrieben, daher auch fachlich sicher einwandfrei, mir fiel nichts negativ auf. Der beiliegende Rabattcode für ein Mediacenter Kit wirkt fair, ich bin durchaus versucht, das in Anspruch zu nehmen - muss das nochmal nachrechnen.
Um strukturiert Hintergrund- und praktisches Wissen über den Pi2 als Mediencenter zu lernen eignet sich das Magazin sicher sehr gut.
Serendipity mit Cache beschleunigen - Tester gesucht
Sunday, 31. May 2015
Das wichtigste zeigt das Diagramm:
Serendipity könnte durch Caches erheblich beschleunigt werden. Für kleine Blogs ist das weniger wichtig, für etwas größere wird es schnell relevant. Selbst dieser kleine Blog hier, der auf einem guten Server läuft, kam durch ein paar häufiger besuchte Artikel so sehr ins Schwitzen, dass ich das Cache-Plugin installieren musste. So etwas hätte ich daher gerne direkt im Core.
Es gibt verschiedene Ansätze. Ein Cache kann s9y in eine statische Seite verwandeln, der Effekt ist immens. Das ist Nealks Text-Cache im Diagramm. Der printEntries-Cache dagegen cached zwar das Ergebnis des Datenbankaufrufs, führt beim späteren Aufruf aber immer noch die Event-Hooks für Plugins aus. Funktioniert das wie geplant, wird s9y ohne jegliche Einschränkung für den Nutzer beschleunigt.
Wir sparen einen komplizierten Datenbank-Select samt Join, und einiges an auszuführenden PHP-Code.
Der Cache, den wir im Entryproperties-Plugin schon haben, hilft zwar bereits, ist aber nicht genug.
Nach einem Stupser im Forum und interner Rücksprache habe ich den printEntries-Cache nun in den aktuellen Master, das zukünftige s9y 2.1, eingebaut.
Nutzer mit Testblog, bitte testet den Cache, indem ihr s9y mit ihm nutzt: $serendipity['use_internal_cache'] = false;
in der serendipity_config.inc.php auf true
setzen. Feedback bitte hier in die Kommentare, ins Forum oder in das Github-Issue.
Für mich ist Ziel, zwei-drei Serendipity-Version später diesen Cache als Standard an zu haben.
Ohne Feedreader ist das Internet leer
Friday, 29. May 2015
Weil die Domain abgelaufen ist, die ich für meinen Feedreader auf Digitalocean genutzt habe, habe ich diesen auf uberspace umgezogen. Leider funktioniert dort das Zusammenspiel mit superfeedr-rack noch nicht - anders als vorher unter / soll er nun unter /feedtragon auf Superfeedr-Nachrichten warten, und das will nicht. Vielleicht ein Problem mit dem Setup, dem Rack-Server hinter Apache und .htaccess, oder ein Bug.
Ich gehe aber davon aus, das Julien das hinbiegen wird, und würde einen etwaigen Bug in feedtragon auch gerne fixen, deshalb mache ich nicht einfach einen neuen uberspace auf und lasse es da unter / laufen. Das Resultat ist, dass ich seitdem keinen Feedreader habe. Und das fühlt sich seltsam an.
Sicher, es gibt immer noch Seiten mit interessanten Inhalten. Hackernews ist die erste. Dann reddit, wo ich mir vor kurzem einen Account angelegt habe, seitdem die auf der Startseite angezeigten subreddits anpassen kann und so eine interessante Seite ohne all den Schwachsinn zusammenbekommen habe - und mit /r/buildapc gibt es sogar ein subreddit, das durch pc-kombo für mich besonders interessant ist. Reine Nachrichten-Seiten vermeide ich inzwischen lieber, nur Zeit Online rufe ich noch manchmal auf. Drei Seiten, das ist nicht viel zum Browsen.
Auf Youtube habe ich noch ein paar Channels abonniert, aber das fällt mir erst gerade wieder ein. Wenn ich warte und mit Tablet oder dem Handy etwas Zeit totschlagen will, ist das eben keine Option.
Mit dem Feedreader als vierte Seite ist das genug. In meiner (inzwischen aufgeräumten) Feedliste stehen 126 Einträge. Nicht alle sind Blogs, aber auch von denen schreiben nicht alle täglich, natürlich. Manche Blogs habe ich sogar aussortiert, weil sie inzwischen verwaist waren, doch es sind noch genug in der Liste, die nur periodisch schreiben. Doch zusammengenommen ist diese Liste eine Quelle von einigen neuen Artikeln pro Tag, wovon eigentlich immer mehrere interessant sind.
Und das ist, was fehlt - plus den Ritualen. Mittwochs kriege ich nicht mehr mit, wenn Yahtzee ein Spiel bespricht. Und generell, wann es einen neuen xkcd-Comic gibt. Worüber die von mir seit Jahren gefolgten Blogger wie Dirk schreiben geht an mir ebenso vorbei wie die Kurzübersicht der deutschen Linuxszene durch osbn.de.
Der Browser mit seinem Internet ist so ein ganz anderer, ein statischer Ort.
Natürlich, so bleibt mehr Zeit für anderes. Die Ablenkung an der Seite abzuschalten lässt mehr Zeit für die anderen Ablenkungen auf der Seite, ich könnte zum Beispiel mehr spielen, coden, Serien schauen oder den Computer ausschalten.
Ich könnte aber auch Bugs fixen. Ich hätte da einen ganz oben auf der Liste…
Wlan-Stick TL-WN727N unter Linux nutzen
Sunday, 17. May 2015
Es ist ein paar Jahre her, dass ich so viele Probleme mit einem Wlan-Stick hatte. Dieser von TP-Link ist ein Stick mit 150Mbps und 802.11n, und ich wollte ihn mit meinem Pogo unter Arch Linux ARM nutzen. Nach vielen Umwegen habe ich das nun geschafft.
Der Stick identifiziert sich als
ID 148f:7601 Ralink Technology, Corp. MT7601U Wireless Adapter
Laut Wiki wäre der richtige Treiber der freie mt7601u_sta. Diesen aber nicht von dort herunterladen, denn er ist kaputt. Stattdessen nimmt man die gepatchte Version aus diesem Github-Repository (via):
git clone https://github.com/porjo/mt7601.git cd mt7601/src make make install mkdir -p /etc/Wireless/RT2870STA/ cp RT2870STA.dat /etc/Wireless/RT2870STA/ modprobe mt7601Usta
Funktioniert das nicht, kann man es auch mit diesem Github-Repository probieren. Der zu ladende Treiber ist dann der rtnet7601Uap, die Firmware die RT2870AP.dat, die nach /etc/Wireless/RT2870AP/ muss. Wichtig ist in jedem Fall, nach dem Laden per dmesg
zu prüfen, ob die Firmware erfolgreich geladen werden konnte, und sie ansonsten ins richtige Verzeichnis zu kopieren.
Die Ausgabe von iwconfig sieht nun komisch aus, das einfach ignorieren. Denn die Karte kann trotzdem konfiguriert und gestartet werden:
ifconfig ra0 inet 192.168.0.100 up iwconfig ra0 mode managed iwconfig ra0 key s:PASSWORD iwpriv ra0 set SSID="DEINE_ESSID"
Damit das aber funktioniert und der Treiber starten kann, muss eventuell ein Boot-Parameter gesetzt werden (via): coherent_pool=2M
.
Das ist nötig, wenn der Treiber wegen zu wenig Speicher stirbt:
ERROR!!! Failed to allocate memory - TxRxRing
Die von mir damals installierte uboot-Version macht das sehr schwierig. Deswegen habe ich die uboot-Version von Arch installiert:
wget http://archlinuxarm.org/os/armv5te/boot/pogo_e02/pogo_e02.sh chmod +x pogo_e02.sh ./pogo_e02.sh
Danach kann eine /boot/uEnv.txt angelegt werden, die den Parameter beim nächsten Reboot setzt und bei mir so aussieht:
optargs=coherent_pool=2M
Wie gut der Adapter am Ende funktioniert, habe ich noch nicht wirklich getestet. Den ersten Versuchen zufolge sieht erstmal alles okay aus. Es ist aber wirklich schade, dass der Treiber trotz freier Lizenz in einem so schlechten Zustand und die Dokumentation so lückenhaft ist.
Serendipity als Instant-App auf Scaleway
Tuesday, 12. May 2015
Serendipity wurde von Scaleway in den Image-Hub aufgenommen. Das heißt, dass Nutzer beim Erstellen eines Servers das Serendipity-Image auswählen können. Nach dem Start des Servers (~40 Sekunden) ist dann alles vorbereitet, um direkt den Installer auszuführen.
Im Forum hatten wir öfter mal Probleme mit von Hostern bereitgestellten s9y-Installationen, denn ihre Version war oft modifiziert und Support so unmöglich. Hier ist das anders: Das Image basiert auf einem Skript von mir, das automatisch die aktuelle Serendipity-Version herunterlädt, entpackt und ihre Abhängigkeiten (Apache, SQLite) installiert. Serendipity selbst wird also nicht modifiziert.
Ich habe Scaleway hier schonmal vorgestellt und war ganz angetan, und wie das jetzt ablief ist ein weitere Pluspunkt, die Leute waren sehr ok. Die Server sind zudem Quad-Core-ARM-Rechner, die für fast jede s9y-Installation völlig ausreichen sollten. Zusammen mit 2 GB Ram und 50 GB Speicherplatz ist auch noch genug Luft, um auf dem Server noch andere Webdienste laufen zu lassen.
Webmentions sind nur Trackbacks
Monday, 11. May 2015
Ich bin gerade etwas enttäuscht. In letzter Zeit bin ich mehrfach über die IndieWeb-Bewegung gestolpert, unter anderem über diese Howto-Seite. Und ich fand das super, das ist genau, was dsnblog machen wollte, nur in richtig. Daher nahm ich mir für gestern vor, mir ihre Webmentions anzuschauen und wenn möglich in Serendipity und ursprung einzubauen. Und stellte dann fest, dass Webmentions nichts anderes als Trackbacks sind.
Webmentions sind damit pures Not-Invented-Here-Syndom (NIH), und fast alles was sie als Abgrenzung zu Trackbacks in ihrem Wiki schreiben ist falsch:
-
Für Trackbacks gibt es genau wie für Pingbacks ein rel-Attribut,Fragile discovery
Trackback uses RDF in HTML comments to provide an unnecessarily complex (having to parse a completely different format) and fragile (HTML comments get stripped all the time in processing, e.g. by search engines) method of discovery. Pingback abandoned such methods, instead using an HTTP link header or link tag with rel for discovery.
rel=trackback
, z.B. von mir in ursprung implementiert. Das Suchengines HTML-Kommentare ignorieren beeinflusst den Entdeckungsprozess kein bisschen. Selbst wenn der Kommentar problematisch wäre (er ist es, aus anderen Gründen), der RDF-Weg ist nur ein möglicher.
Das ist Unsinn. Das mag in der Spezifikation nicht explizit drin stehen, ist aber gängige Praxis. Natürlich müssen Blogs die Quelle überprüfen und dürfen den Trackback nur akzeptieren, wenn der Quelllink auch existiert. Blogsysteme wie Serendipity machen das selbstverständlich seit Jahren so, wahrscheinlich bald seit einem Jahrzehnt.Lack of link verification
Trackback "works" by a one-way HTTP request from the linker to the linkee, and the linkee is not expected to do any verification that the linker actually has a link to the linkee. Thus it was immediately overrun with spam and is considered useless. Pingback deliberately improved upon this by requiring verifying that the source links to the target.
-
Wie eins obendrüber beschrieben: Link-Verifizierung wird betrieben. Ich bekomme hier ne ganze Menge Kommentarspam, manchmal kommen sie sogar durch die Spamplugins. Aber Trackback-Spam habe ich seit Jahren nicht mehr gesehen.Spam
Due to the lack of link verification, Trackback is particularly easy for spammers to overwhelm and thus has been largely abandoned due to being pretty much all spam at this point.
Was mich am meisten daran stört ist die Verschwendung. Selbst wenn Trackbacks durch fehlende Link-Verifizierung kaputt wären, hätten sie genausogut Trackbacks nehmen und Link-Verifizierung verpflichtend dazubauen können. Wobei, genau das haben sie gemacht, nur um es dann in Webmentions umzubenennen. Aber ohne diese Umbennenung wäre es einfacher, etwaige Änderungen am Protokoll direkt als Update für das Trackback-System einzubauen. Dann könnten sie sich auch das Nachdenken über Anti-Spam-Maßnahmen sparen, denn wie wir mit Trackbacks umgehen müssen wissen wir inzwischen, das System ist stabil.
Der nächste Grund wirkt nur noch vorgeschoben. Als nächstes wird die Darstellung der Trackbacks kritisiert - als ob das nicht etwas wäre, was sie problemlos auf ihrer Seite anders handhaben könnten, was sie dann sogar als Empfehlung und Ergänzung zum Trackback-Protokoll veröffentlichen könnten. Darstellung ist übrigens etwas, was in der offiziellen Webmentions-Spezifikation vollständig fehlt.
Vielleicht sollte man trotzdem Webmentions einfach unterstützen, denn wie Trackbacks sind sie immer noch eine gute Idee. Und es wäre gut, einen POST-basierten Linkback-Mechanismus zu haben, der von Blogs und Social Networks gleichermaßen unterstützt wird. Pingbacks sind durch ihr XMLRPC sowieso ein Relikt, aber auch Trackbacks werden teils selbst von Blogs nicht mehr gut unterstützt, leider schwächelt da auch Wordpress. Aber bisher wirken Webmentions so, als habe da jemand Linkback mit POST gedacht ohne Trackbacks zu kennen, ist dann später drüber gestolpert und sucht jetzt Abgrenzungsmerkmale. Zusammen mit großartigen Vorschlägen zur Spamvermeidung in der Spezifikation wie "Nutze nofollow-Links" - was den halben Sinn von Linkbacks zerstört, die ja eben ganz im Gegenteil auch für Suchmaschinen gedacht sind; gegen Spam bei Kommentaren noch nie etwas gebracht habt - machen Webmentions einen sehr schlechten Eindruck auf mich. So schlecht, dass ich sie zumindest erstmal nicht implementieren werde.
Bash wortweise vor und zurück
Thursday, 7. May 2015
Ein Beispiel: Ich tippe in ein Terminal apt-get instal icewm
. Es müsste install
heißen. Also muss ich mit den Pfeiltasten Buchstabe für Buchstabe zurückgehen und das l
eintippen. Natürlich geht es besser.
Stattdessen könnte ich Alt+b drücken. Das setzt den Cursor ein Wort zurück. Mein Problem damit ist, dass ich es immer vergesse.
Im Gnome-Terminal auf meinem Laptop funktioniert auch Strg+Pfeiltaste, um wortweise nach links oder rechts zu gehen. Um das in meinem Desktop nachzurüsten, musste ich folgenden Code in die ~/.inputrc einfügen:
"\e[1;5C": forward-word "\e[1;5D": backward-word
Seitdem funktioniert Strg+Pfeiltaste auch im xfce4-Terminal und im Terminator (via).
Installationsskript für Serendipity
Wednesday, 29. April 2015
Wie installiert man Serendipity eigentlich möglichst einfach und automatisch auf einem Vanilla-Ubuntu? Um ein Image zu bauen, wie ich es vorhatte, brauchte ich ein Installationsskript. Besonders beim Download war ich mir nicht sicher - beim Autoupdate-Plugin war das Parsen der aktuellen Version noch etwas aufwändig.
Aber Sourceforge hat einen festen Link zur aktuellen Version, und zusammen mit dem ist ein Skript einfach. Zumindest für Ubuntu:
apt-get update && apt-get upgrade apt-get install php5 php5-sqlite imagemagick unzip wget -O serendipity.zip http://sourceforge.net/projects/php-blog/files/latest/download unzip serendipity.zip rm -R /var/www/html # Vorsicht: Ist das Ubuntu nicht neu, könnte hier schon was sein mv serendipity /var/www/html
SQLite statt MySQL macht das alles nochmal einfacher, der Blog ist bereits jetzt zur Installation bereit. Und Serendipity wird automatisch erkennen, dass nur SQLite als Option zur Verfügung steht. Dadurch spare ich mir das Anlegen einer Datenbank samt Nutzer und Passwort.
dsnblog wird ursprung
Monday, 27. April 2015
Ich habe mein Blogsystem dsnblog in ursprung umbenannt und ihm eine Vorstellungsseite gebaut.
Dsnblog - distributed social network blog - passte nicht mehr wirklich. Das war ein treffender Name, als der Blog nur Mittel zum Zweck für ein verteiltes Soziales Netzwerk sein sollte. Das weiterzuverfolgen habe ich aber aufgegeben, dafür fehlten mir die Ressourcen. Dsnblog war damit nur noch ein Blog, das sollte ein neuer Name widerspiegeln.
Ursprung ist natürlich ein seltsamer Name. Ich hoffe, er ist auch merkwürdig. Namen sind schwer, und alle naheliegenden mindestens von einem Blog besetzt. Und ich wollte unbedingt ein deutsches Wort als Namen, jetzt, wo ich nicht mehr in Deutschland wohne. Der Name soll auf die Entstehungsgeschichte der Software und auf meinen Feedreader feedtragón verweisen - der Blog als Quelle des Feeds für den Feedgierer, das passt auch generell als Beschreibung der Funktion von Blogs im System Internet. Wahrscheinlich ist das alles aber gar nicht wichtig.
Anlass des Ganzen war, dass ich die Software jetzt für einen kleinen Projekt-Blog benutzt habe, also weiß, dass sie im Grunde auch im Internet wirklich funktioniert.
Auf der Vorstellungsseite wollte ich vor allem die mehrspaltige Feature-Beschreibung ausprobieren, die ich damals für Serendipity vorgeschlagen hatte. Bin jetzt gar nicht so sicher, ob ich das Ergebnis mag, es ist textlastiger geworden als ich dachte, und ich finde es schwierig, passende Bilder zu finden. Mit der Seite als ganze bin ich aber erstmal zufrieden und hoffe, sie gefällt auch euch ein bisschen.
Ghost
Friday, 24. April 2015
Scaleway bot als vorbereitetes System Ghost an, ich nutze die Chance um es mir mal näher anzusehen. Die Version ist 0.5.3, das ist nicht die neueste, aber seitdem scheint sich wenig getan zu haben. Mein Eindruck ist wenig überraschend: Der Hype damals war völlig überzogen, Ghost ist immer noch nichtmal ein Blog.
Ghost hier vorzustellen und zu zerlegen wäre daher witzlos, deswegen will ich etwas produktiveres tun: Alles vorstellen, was an Ghost gut ist. Überzogen oder nicht, der Hype war da, vielleicht sind ja wirklich gute Idee darin, die wir kopieren sollten?
Der doppelte Editor
Für den Blogeditor gibt es zwei Möglichkeiten, und beide sind problematisch. Ist es ein einfaches Texteingabegeld, in dem Einträge mit einer Markup-Sprache oder mit HTML strukturiert werden, sehen Autoren ihre Fehler nicht sofort. Ist es ein WYSIWYG-Editor, neigen Autoren zur Überformatierung, und das entstehende HTML ist in den meisten Fällen furchtbar. In Ghost ist das Problem dadurch gelöst, das eine Livevorschau rechts neben dem Editor angezeigt wird.
So wird das Problem der fehlenden direkten Vorschau elegant gelöst. Und zusätzlich werden Textelemente auch im Editor formatiert.
Diese Vorschau ist sogar gut umgesetzt. Sie ist schnell und flickert nicht. Und scrollt man im Editorfenster, scrollt die Vorschau mit. Scrollt man in der Vorschau, bleibt das Editorfenster fest. Komfortabel.Markdown direkt aktiviert
Serendipity unterstützt viele Markupsprachen. Aber nach der Installation ist mit s9ymarkup ein Platzhalter aktiv, mit dem nur wenige Textformatierungen wie kursiv und bold gesetzt werden können. Autoren müssen also HTML verwenden, oder erstmal ein Markup-Plugin auswählen.
Ghost unterstützt nur Markdown, aber das ist direkt an. Dadurch ist der Anfang mit dem neuen Blog wesentlich einfacher und bequemer. Und durch den Fokus auf Markdown kann es unterstützt werden: So ist im Editor eine Markdown-Hilfe samt Link auf die Referenz eingebunden.
Platzhalter für Bilder
Auch das ist durch den Fokus auf Markdown möglich: Will der Autor ein Bild einbinden, schreibt er ![Bild-Alternativtext], und in der Vorschau entsteht eine Box mit Bildauswahl.
Das ist rein für das Hochladen nicht besser als der klassische Weg über einen Button. Aber diese Box ist eben auch ein Platzhalter, sodass der Autor das Hochladen erstmal ignorieren und sich weiter auf den Text fokussieren kann.
Beispieleintrag
Nach der Installation ist der Blog nicht leer. Im Blog ist bereits ein Beispieleintrag, der Markdown erklärt. Er erklärt nicht nur, sondern weil er auch einfach editiert werden kann, fungiert er mit der Vorschau gleichzeitig als gutes Beispiel.
Ein klares Menü
Im Adminbereich gibt es oben links ein Menü. Das hat 4 Elemente: Zuerst einen Iconlink zurück zum Blog, dann drei Buttons mit Icon und Text: Content, New Post und Settings. Und hinter den Settings ist nichtmal ein geschachteltes Untermenü versteckt.
Auf der rechten Seite gibt es ein Dropdown-Menü, mit den Profilinformationen, der Hilfe und einem Logout-Button. Hier kommt Ghost natürlich sehr zugute, dass es mangels Funktionen auch keine Einstellungen hat.
Das Standardtheme
Das Standardtheme muss man nicht mögen. Ich mag manchmal minimale Designs, dieses gefällt mir nicht wirklich. Aber es macht einiges richtig. Es passt natürlich perfekt zu der Idee einer minimalen Blogplattform, das Theme dann auch dem modernen Webdesign-Minimalismus nachzudesignen. Der Fokus ist klar auf dem Text, Avatarbilder werden hübsch eingebunden, der RSS-Button ist sichtbar und die unvermeidlichen Share-Buttons datenschutzsicher als Link eingebunden, und gleichzeitig weder zu prominent noch zu versteckt.
Auch das Backenddesign wirkt sauber, hübsch und modern, und hier schafft es Ghost eher, mit den Buttons wenigstens ein bisschen Farbe reinzubringen.
Eine Blogplattform
Ghost kann 14 Tage kostenlos auf einer Bloggingplattform ausprobiert werden. Vielleicht ist das mit der wichtigste Punkt. Statt "Downloade das hier, und schieb es auf deinen Server" können sie einfach zur Registrierung auffordern.
Ghost selbst ist frei, aber die Bloggingplattform kostet. Funktioniert das Modell - und bei Wordpress scheint es selbst mit kostenlosen Basisaccounts zu funktionieren - haben die Entwickler ein Einnahmensquelle, das die Weiterentwicklung stützt. Und potentielle Nutzer haben eine einfache Möglichkeit, Ghost anzutesten, was Ghost selbst dann nützen kann, wenn sie es danach auf den eigenen Server installieren.
Fazit
Für Serendipity könnte man bei Markdown anfangen. Es wäre gut, wenn auch wir eine Markup-Sprache vorauswählen und besser in das Backend integrieren würden. Auch der Beispielartikel würde dann bei s9y gut funktionieren.
Die Bloggingplattform gab es mit supersized.org ja wohl schonmal, das scheint nicht funktioniert zu haben, und erfordert sicher ein ganz anderes Engagement als bisher im Projekt vorhanden. Auch das Design würde ich nicht kopieren wollen, vor allem nicht im Backend, das ist mit unserem Funktionsumfang schlicht nicht kompatibel.
Für mein Blogsystem werde ich zumindest versuchen, den Bild-Platzhalter zu kopieren.
Scaleway
Thursday, 23. April 2015
Scaleway beschreibt sich selbst als Anbieter von bare metal cloud server. Mit Cloud im eigentlichen Sinne hat es aber nichts zu tun. Statt einer Instanz in einer Cloud geteilter und ausfallsicherer Ressourcen sind es dedizierte kleine ARM-Server, die Scaleway für 10€ im Monat anbietet. Nachdem ich Dirk als Kommentar eine Beschreibung hinterlassen habe, die mir im Nachhinein zu unreflektiert positiv klang, musste ich mir den Dienst nun näher anschauen.
Der Server hat immerhin einen Quad-Core-Prozessor, laut cpuinfo ein Marvell PJ4Bv7 Processor rev 2 (v7l) mit 1332.01 Bogomips pro Kern. Das ist weniger als ein typischer Desktop-PC, aber für einen Heimserver okay. Dieser Heimserver steht dagegen in einem Rechenzentrum. Außerdem hat er Zugriff auf eine gar nicht mal so langsame Festplatte und 2GB Ram, was die typischen Probleme mit Heimservern umschifft. Dass der Prozessor ein ARM-Prozessor sollte auf einem Server heutzutage nicht mehr viel ausmachen, nach dem Raspberry Pi laufen die wichtigen Linux-Distributionen und Anwendungen dort meist ohne Probleme.
Wäre es aber nur das, wäre Scaleway die 10€ im Monat nicht wert. Für 10€ im Monat könnte ich auch bei Digitalocean bleiben - einem etablierten und beliebten Anbieter. Ein 10€-Droplet hat dort zwar nur mit 1GB Ram und einem Einkern-Prozessor in einer VM. Doch langsamer ist das nicht zwingend, bei garantierten Ressourcen kein echter Nachteil, und das fehlende GB Ram je nach Server-Anwendung nicht wichtig.
Daher versucht Scaleway, auch das Drumherum gut zu machen.
Beim Erstellen eines Servers sind mehrere Linux-Distribution auswählbar - und statt leerer Distributionen gibt es auch vorinstallierte Anwendungen. So kann z.B. Ghost oder Wordpress (auf Ubuntu laufend) durch die Vorauswahl direkt bei der Servererstellung ausgewählt werden. Die Oberfläche ist freundlich und übersichtlich, Serververwaltung und Netzwerkübersicht klar. Erstellten Servern können sogar zusätzliche Partitionen zugeordnet werden (2€ für 50GB), das sind also in irgendeiner Form Netzwerkplatten. Potentiell mächtig ist die Möglichkeit, Server über das lokale Netzwerk zu verbinden.
Es gibt außerdem eine API und Scaleways Infinite Storage System. API ist klar, damit können aus der Ferne die Server kontrolliert werden - der Dokumentation zufolge ist sie relativ mächtig. Das Infinite Storage System habe ich nicht ganz verstanden. Der FAQ zufolge können dort unendlich viele Daten hingeschoben werden, der Preisübersicht zufolge kostet das 0,02€ pro Monat und Gigabyte. Warum steht das nicht in der FAQ, und warum heißt es dort Objekt Storage? 0,02€ pro Monat und Gigabyte ohne Kosten für den Transfer wäre sogar billiger als tarsnap - allerdings bin ich mir wie gesagt nicht sicher, ob das vergleichbar ist.
Scaleway gegen Digitalocean
Einiges davon kann Digitalocean allerdings auch. Vorgefertigte Images für Distributionen und Anwendungen zuallererst, denn dort ist die Auswahl etwas größer. Eine API gibt es auch, und ohne sie je benutzt zu haben erscheint sie mir mindestens genauso mächtig. Und auch Droplets könnten im lokalen Netzwerk miteinander reden. Was Digitalocean nicht hat, das ist das Storage System. Und die Festplatte ist kleiner, 30 GB im 10€-Plan statt 50 GB. Ähnlich Ram, da stehen 1 GB gegen Storageways 2.
Um die Unterschiede zusammenzufassen:
Scaleway hat für Server momentan genau ein Angebot:
- Das kostet 10€ im Monat.
- Dafür bekommt man einen dedizierten kleinen Quad-Core-ARM Server in einem Datencenter mit 2GB Ram und 50 GB Speicher.
- Der hat unbegrenzt Traffic bei einer Anbindung mit 200Mbit/s
- Zusätzlich gibt es eine API, ein potentiell nettes Storage System und schließlich die Möglichkeit, einige wenige Anwendungen per Klick bei der Servererstellung zu installieren.
- Erreichbar ist der Server über eine deaktivierbare IPv4-Adresse.
Digitalocean dagegen hat mehrere Angebote:
- Ich vergleiche mit dem für 10$ im Monat
- Dafür bekommt man derzeit in einer VM einen Single-Core-Prozessor (aber x86_64), 1GB Ram und 30 GB Speicher auf einer wesentlich schneller angebundenen SSD.
- Traffic ist begrenzt auf 2 TB, Informationen zur Anbindung habe ich nicht gefunden.
- API und Anwendungen per Klick gibt es ebenfalls, nur mehr davon.
- Der Server hat eine IPv4-Adresse, kann aber auch Wunsch auch IPv6 bekommen.
In welchem Anwendungsfall wäre Scaleway besser? In meinen Augen dann, wenn man genau in den 10€-Slot fallen würde und die Quad-Core-Cpu nutzen kann. Denn dann bräuchte man bei Digitalocean wahrscheinlich mindestens das 20$-Angebot, für 2GB Ram, 3GB Traffic und eine Dual-Core-Cpu.
Bei allem darüber sind Digitaloceans größere Angebote wahrscheinlich netter, als die Arbeit auf mehrere Scaleway-Server zu verteilen.
Bei allem darunter ist Digitaloceans 5$ Angebot (512MB Ram, 20 GB Speicher, 1TB Transfer) verlockend, da zwar deutlich weniger, aber eben auch halb so teuer und wahrscheinlich ausreichend. Und klar: Für jeden, der einen Heimserver in der Cloud verlockend findet, ist ein solches kleines Droplet wahrscheinlich absolut ausreichend. Und jeder, dem ein solches kleines Droplet ausreicht, könnte auch gleich zu uberspace gehen.
Digitalocean ist übrigens ein Partner in Githubs Studentenprogramm, mit dem Studenten 100$ Credit bekommen, also 20 Monate den kleinsten Server umsonst nutzen könnten. Daher kenne ich sie auch. Immerhin noch 10€ umsonst gibt es bei Anmeldung durch einen Referral-Link wie diesem hier.
Fazit
Trotz der momentanen Überlegenheit von Digitalocean will ich deutlich machen: Scaleway hat Potential. Heimserver im Rechenzentrum sind eine gute Idee und eine mir willkommene Alternative zu Shared Hostern und gewöhnlicheren Cloudanbietern. Das Drumherum macht den Eindruck, als würde das in naher Zukunft wirklich komfortabel werden - derzeit fehlen noch 1-Klick-Images und Dokumentation, aber das dürfte sich geben. Auch die Oberfläche wirkt gut. Sie planen, später noch andere Servertypen anzubieten, auch das könnte nett sein - besonders, wenn sie damit Digitialocens 5$-Plan kontern.
Und hinter Scaleway steht iliad, was die Gruppe ist, deren Ableger free den französischen ISP-Markt schlicht mit dem besseren und günstigeren Angebot erobert hat. Das ist keine schlechte Referenz, und lässt für die Zukunft gutes erhoffen.
Update: Scaleway hat nun den Preis auf 2.99€ gesenkt
Noblink für Webanwendungen
Tuesday, 21. April 2015
Blinkende Cursor sind eine Foltermethode. Für normale Software lassen sie sich meist problemlos abschalten, mit einer Mischung aus GTK- und Systemeinstellungen plus gesonderte Einstellungen für beispielsweise Firefox. Auf jurta.org sind all diese Einstellungen gelistet.
Webanwendungen halten sich nicht daran. Sie haben keine Chance, die globale Einstellung auszulesen. Aber das macht es nicht besser, denn Webentwickler scheinen eine sadistische Freude daran zu haben, diese Unart des Desktops nachzuprogrammieren und nicht konfigurierbar zu machen. Das gilt auch und besonders für solche Webanwendungen, deren Hauptzweck das Schreiben ist.
Um blinkende Cursor über den Browser zu deaktivieren, sollte man Stylish installieren und damit userstyles setzen.
Den blinkenden Cursor in Google Docs deaktiviert dieser Code:
@-moz-document domain(docs.google.com) { .docs-text-ui-cursor-blink { animation-duration: 0s; } }
Für ShareLaTeX funktioniert dieser:
@-moz-document domain("www.sharelatex.com") { .ace_cursor { visibility: visible !important; } }
ShareLaTeX hatte ich übrigens gebeten, die Blinkrate konfigurierbar zu machen. Netterweise wurde geantwortet, leider mit einem "Später vielleicht" - und das ist schon lange her, war also ein Nein. Ich mag die Seite und das Projekt sehr, aber das war ein kleiner Dämpfer.
Frohes Schreiben.