März 2011 Archive

... can be found here.

I am currently using ext4+lvm, and it is ok so far. It works, is fast and can do everything I need.

I was using zfs-fuse for a long time, but it had major problems with file-locks and stuff (for example, man-db regularly freezed my system), which are, as far as I read, resolved meanwhile, but currently I do not have the time to set up a new system. However, I never had any data loss caused by zfs-fuse, no matter how often it crashed, after reboot everything worked again.

No comparism to btrfs which broke my partition and gave me data loss, after suspending and resuming (if it does not support suspending and resuming, then it should not allow the kernel to shut down - and zfs-fuse even crashed and did not damage anything, even though it is not even a kernel-module).

When seeing the list in that link, I wonder why there is still so much development done with btrfs: ZFS is only about one year older than Btrfs (according to Wikipedia), is stable, there are implementations for many OSes, there is a FUSE-Implementation, and its only problem is the license. ZFS and Btrfs belong to Oracle - why do they not just change the license of ZFS such that it can be added to the Linux-Kernel easily, and use the power of the Btrfs-Developers to enhance ZFS?

Vergoogeln Sie keine Zeit!

| Keine Kommentare
Ja, so lauten die Plakate die jeden in den diversen Universitätsbibliotheken anlachen. Wertvolle Lernzeit sinnlos mit Google verschwendet. Nein, das geht ja mal garnicht.

Verschwenden Sie lieber Ihre Zeit mit den frickeligen Webinterfaces der Bibliotheken und Verlage. Deren Suchfunktionen funktionieren zwar - wenn sie nicht grad Google Custom Search verwenden - eher selten wenn man nicht ziemlich genau das eingibt wonach man sucht, aber dafür sind sie akademisch.

Außerdem reicht Google nicht aus, denn Google mag zwar häufiger das finden, was relevant ist, aber vieles davon steht unter ominösen Lizenzen und ist deshalb nicht für jeden herunterladbar. Wo kämen wir da auch hin, wenn Wissen frei zugänglich wäre - man bräuchte keine Verlage mehr, keine Bibliothekare, könnte keine Bücher mehr verbieten, könnte öffentlich alle Forschungsergebnisse diskutieren und anzweifeln, am Ende werden wie in Wikipedia irrelevante Sachen gelöscht, ein Alptraum, nicht nur für die Wirtschaftswissenschaften.

Nein, dieser ganze technische Bloat ist vollkommen nutzfrei. Nichts geht über die alphabetische Sortierung von uneindeutig benannten Zeitschriften, über versteckte Regale in dunklen Bibliothekskammern, über stinkende, vergilbte, schlecht kopierbare und noch schlechter lesbare alte Bücher.

Erst heute suchte ich nach einer Zeitschrift, die etwas älter ist. Die Bibliotheksseite zeigte mir an, dass meine Bibliothek sie haben müsste. Und so kroch ich zwei Stunden lang durch die Bibliothek bis ich schließlich aufgab und dort den Mitarbeiter fragte. Er fand immerhin ein Schild, auf dem der Name der Zeitschrift stand - die Zeitschrift selbst war nirgends, aber offenbar war sie mal irgendwo. Nachdem auch er nach einer halben Stunde aufgab sie zu finden, durch mehrere Regale gehend, meinte er, ich solle morgen nochmal kommen, so gegen 10 Uhr, da ist die Cheffin da, die wüsste sicher mehr.

Das ist jetzt mal viel besser als Google. Um totes Holz zu kriegen, mit dem ich kopierenderweise weiteres totes Holz konsumiere, muss ich um 9 Uhr aufstehen (zum Glück muss ich das morgen sowieso), um zu fragen, wo sich das betreffende tote Holz befindet. Das wird mindestens noch mal eine Stunde dauern, und es ist zweifelhaft ob die Zeitschrift vorhanden ist. Es ist natürlich auch nicht möglich, von vorne herein zu jeder Fachzeitschrift im EDV-System zusätzlich zu der vierstelligen nichtssagenden Nummer eine Regalnummer zu speichern, denn das wäre wieder zu sehr Google.

Nein, das nostalgische Fühl tagelang auf ein paar A4-Seiten Text zu warten, der Nervenkitzel, ob es denn klappt, und die Spannung, ob der Text letztendlich brauchbare Informationen enthält, das gehört irgendwie dazu. Diese Aspekte dürfen wir uns auf keinen Fall von irgendwelchen Googlern nehmen lassen.
A problem that sometimes arises. The solution is simple, but it is hard to find, so I though I will write it here, such that other Googlers will find it.

You can simply do this by adding a policy-rc.d-script. That is, create a script /usr/sbin/policy-rc.d returning 101, before installing anything.

When using packages, the above Link sais one must use the alternatives-System, which sounds plausible.

Well, I have learned that today. It is always interesting to learn something new.

Slightly Proceeding with Uxul World

| Keine Kommentare
I have found a bug that I was searching for since a long time. Now finally, the level-editor works - well, at least as long as you do not use OpenGL in the mean-time (this should be just a minor bug, I assume some confusion of the standard input by OpenGL or something).

Even though there are a lot of alternatives, I think I will stay with ltk and skippy for the level-editor, simply because the level-editor was meant to be a development tool for me rather than part of the software.

The background is still not working and currently I do not have the time to make it work, though it is probably easy.

Anyway, if you want to have fun with it, or get inspiration (or just look at CL-Code dealing with OpenGL), it can be found under https://github.com/dasuxullebt/uxul-world.

Me against apostrophes

| Keine Kommentare
Reading my older posts, I saw that I often omit apostrophes ("wont", "didnt"). This is mainly because I do not like them. And additionally, on a german keyboard, they are annoying to type, since you have to press shift. "Wouldn't" is a short form anyway, and has evolved for laziness, so why should I care about this apostrophe?

Thus, meanwhile I am trying to avoid these forms, writing "would not", "is not", "cannot", "will not", "did not", "it is", etc., instead - even though this sometimes sounds strange, it mostly is correct. But there are even forms where the long form is not appropriate anymore. "Wouldn't you prefer not to use apostrophes?" is an example where I do not know any alternative for "wouldn't". "would you not?" is not really appropriate (well, it seems that some British people would accept it, but at least in the USA, it is not usual  to use it). So in that case, "wouldn't" becomes an actual word instead of just being a short form, and thus, there should be no necessity to put in an apostrophe.

I mean, really, who wants a language that uses apostrophes in actual words? It seems to me that many Britains and especially Americans are proud of not having any special characters, especially no umlauts. Are apostrophes not even more annyoing than umlauts? I do not like umlauts either, but at least they are connected to actual vowels rather than just designating that the word used to be an abbrevitation.

The only reason why I will not just ignore these rules and will try to use long forms whenever possible (and if not, using apostrophes even though I do not want to) is that I am no native speaker, and there are nuances of the english language which I might not be able to assess correctly. If this was a problem with the german language, I would just continue using the form I like.

That is because I think that language is a tool, and as every tool, it should be adapted the way that fits best. And additionally, the german orthography keeps changing from time to time.

However, unlike many other people, I do not consider it as an insult if somebody informs me about grammatical mistakes I make in my english posts. If you see something, feel free to comment or send me an E-Mail.

Advertising with Julian Assange

| Keine Kommentare
I recently watched TV - which is something I do not do often - and saw this ad. People protest for cheaper internet, Angela Merkel sais that it is impossible to get it cheaper. Then Julian Assange comes and tells about the product that is advertised, giving a cheap internet flatrate.

In my opinion the graphics are badly done in this ad, if I did not recognize the people from the context, I would have been unable to recognize them at all.

On the other hand, using a person like Julian Assange as a mascot for advertising may be criticized, but it shows that Wikileaks has reached the mainstream. Even though Julian Assange is certainly not a redeemer, his publicity and the work done by the Wikileaks-Team had some effect, even though it may only be small in the end.

Happy Pi-Day

| Keine Kommentare
I just wanted to remind that today is Pi-Day.

Migrating to MySQL

| Keine Kommentare
So far, I was too lazy to set up a proper central database, as MovableType has an SQLite3-Backend. However, I was told that newer MT-Versions will not support SQLite3 and Postgres anymore by default.

Furthermore, after the recent Spam-Attack, my cute little SQLite-Database became huge, and slow - this is simply not what SQLite3 is made for. So I decided to switch to MySQL, even though I like PostgreSQL more - I do not know how long I will stay with Movable Type, but as long as it works, it is probably better to use the Database that is officially supported, rather than anything else.

Migrating was a pain! I read that the default way of doing this is to create a Backup and restore it again.

At first I thought I could just dump all of the spam-comments (since it took a very long time to delete them) within this backup, and delete them when they are migrated to MySQL, as I was too lazy to read about the MT-Api for manipulating the database programmatically. After this resulted in a backup that was too large to restore, I split the Backup and tried to restore it then. Then I got the error message that the database schema of the backup is wrong and it was "highly recommended" not to restore it.

So well, I accepted that and proceeded with deleting spam comments. After having deleted most of them, I thought I should investigate further on this database schema issue, hence I created a backup and restored it into the new database. This time, the database schema was not the problem, but the XML-Parser could not read the Backup-File (which was in XML Format). I forgot to delete some of the spam comments, and one of them contained malformed characters.

WTF? I thought this was a Backup! Either make sure that you only save comments in a properly-encoded way, or at least put them into CDATA-Tags.

However, after also removing them, the migration worked.

Adding ReCaptcha to prevent Spam

| Keine Kommentare
I am really pissed! About 12000 Comments in my queue, long sequences of comments with a delay of about 5 seconds! Mostly just Spam!

I mean, who is supposed to read this? And what are they expecting? Every Blog-Hoster will have to do something against these Spam-Comments, so how can this be successfull in any way? Who the f**k is sending these comments, and who the f**k is stupid enough to fall for them such that they get profit?

I am currently going through the whole mess looking for serious comments. But I cannot promise that I will not accidentally delete some serious comments, too.

Additionally, I added a reCaptcha-Challenge against Spam now. I am really sorry about this, as I do not like captcha-challenges myself, but I do not have the time to go through the MovableType-API and write something better myself, and reCaptcha seems to be widely used and sufficient to block most of the Spam.
 
If there are any problems with commenting, feel free to send me an E-Mail so I can fix it.

5 Kohlekraftwerke könnten mit der Energie einer Batterie ersetzt werden.

Unsinnige Vergleiche dieser Art liest man immer wieder (ich meine nur die Art des Vergleiches ansonsten hab ich über Biotreibstoffe noch keine komplette Meinung). Gut, im Fall der Batterie und der Kraftwerke werden die meisten Leute sofort bemerken, daß der Vergleich absurd ist, aber unwahr ist er noch lange nicht, es wird nur mit Assoziationen gespielt die man automatisch hat, in diesem Fall mit den folgenden: Man stellt sich vermutlich eine Haushaltsbatterie und ein großes Kohlekraftwerk vor. Dann stellt man sich unter ersetzen vermutlich noch einen Zeitraum von über einigen Jahren vor. Und zu guter letzt meint man wahrscheinlich noch daß man die Energie aus der Batterie entzieht indem man sie mittels zweier Drähte an einen Verbraucher anschließt. Aber jeder einzelne dieser Punkte lässt sich dazu verwenden die Richtigkeit der Aussage zu beweisen indem man eben nicht die automatisch angenommene Assoziation nimmt.

Ich habe nämlich keine Aussage darüber getroffen was für eine Batterie und was für ein Kohlekraftwerk (Einmal eine Dampfmaschine und dazu noch ein Fahrraddynamo, fertig ist das Kohlekraftwerk). Aber wie gesagt, es geht genauso gut mit einer Handelsüblichen Batterie und einem großen Kohlekraftwerk.

Man braucht dazu noch nicht einmal das Geschütz der Masse-Energie-Äquivalenz (in dieser Weise ist nämlich eine extreme Energiemenge in jeder Art von Materie gespeichert, dummerweise kennen wir keinen sinnvollen Weg an die so gespeicherte Energie heranzukommen). Es reicht einfach daß man sich fragt wie lange die Energie der Kohlekraftwerke geliefert werden muß. Wählen wir mal die Zeit so, daß der Satz vom Anfang stimmt: Laut Wikipedia speichert eine AA-Batterie (die einzige momentan von mir im Einsatz befindliche Baugröße) bei einer Spannung von 1,5V biszu 3,5mAh, also biszu 0,00525 kWh, runden wir mal freundlich auf 0,005 kWh ab (es kommt immer gut, wenn man abrundet, dann kriegt der Leser das Gefühl daß noch viel mehr Reserve in der Rechnung ist). Schauen wir uns jetzt mal das Kohlekraftwerk an. Nehmen wir ein typisches neues Kohlekraftwerk. Installierte Leistung: 600MW. Es braucht also ca. 8,3*10^-12 Stunden um die Energiemenge einer Batterie abzugeben. Anders ausgedrückt: 9,5*10^-16 Jahre. Damit brauchen 5 Kohlekraftwerke 1,9*10^-16 Jahre. Und weil die 10^-Schreibweise ja so furchtbar wissenschaftlich ist (und Wissenschft wollen wir ja nur zur untermauerung unserer Argumente, wir wollen es ja nicht wirklich verstehen) schreiben wir doch mal 190 Attojahre. Atto klingt nämlich auch toll, die Vorsilbe kennt man nämlich kaum kann man doch einfach überlesen und 190 Jahre klingt gut.

Netcat is a pretty nice piece of software. Because of its simplicity, it is very versatile. For sending a single file inside the local network, I can just use

cat somefile.file | netcat -l -p 13337 -q 0

on the server side and then

netcat server 13337 -q 0 > somefile.file

on the client side. If I do not want to remember the filename, or if I want to send directories, I can use

tar -cf - Directory/ | netcat -l -p 13337 -q 0

and on the other side

netcat server 13337 -q 0 | tar -xf -

For noobs who cannot use netcat, Wikipedia has a nice example of serving a single file which is downloadable via a webbrowser

{ echo -ne "HTTP/1.0 200 OK\r\n\r\n"; cat some.file; } | nc -l 8080

There are options for using UDP instead of TCP. But something that would be very desirable is a possibility to use STUN to create a p2p-connection. I do not think that netcat already has this possibility, but I am quite sure that something like that exists. Say, I give some Stun-Server, and the Program then passes some credentials to its stderr which I can then send (myself) to the receiver, which also passes them and creates a connection via UDP, and a bidirectional stream then. Since netcat is so good because of its simplicity, such a "Stun Netcat" would be very nice for sending files, too.

One could even add a simple GUI, such that n00bs can use it. If something like that exists, please tell me.

Update:
Notice that I forgot to mention that "netcat" is called "nc" in some implementations, and "-q 0" is called "-c" (or completely different), depending on the implementation of netcat you have. Read the documentation for your implementation, in case of doubt.

Software I Like: Borland C++ Builder

| Keine Kommentare
Yet another old programming environment I used for quite a long time is the Borland C++ Builder. It is the brother of the very famous Borland Delphi, and the IDE and API looks quite similar to it. I was given a book named "C++ für Kids", which taught the basics of it, but seems like already in my younger years I knew I would not like C++.

However, it is a quite nice environment with which one can easily create simple applications.

When starting, one usually sees a simple Window "Form 1". At the left side, several properties can be set, for example, the Caption of that first window.



Like in Visual C++, one can put several widgets on that window, and work with them.



When double-klicking on one of these widgets, the default event-handler is created. For a button, this is the OnClick-handler. It can be set appropriate.



As soon as we are finished with making our application, we can run it!



It is as simple as that, and with just a little more efforts, nice applications can be made.
Ich wollte mich ja eigentlich mit Kommentaren dazu zurückhalten, nun da es aber faktisch vorbei ist, schreibe ich vielleicht doch ein wenig meine Meinung dazu. Erstmal den unterhaltsamen Teil: Schon 2009 habe ich einen Blogeintrag über Guttenberg verfasst (damals noch auf meinem alten Blog), mit Guttenberg Facts, und mit Freuden sehe ich, dass auch andere Leute Guttenberg-Facts verfassen.

Heute las ich nun, dass Guttenberg zurückgetreten ist. Das hätte er schon früher gesollt, meiner Meinung nach, denn ein Plagiat ist kein Kavaliersdelikt, wie einer meiner Professoren bereits schrieb. Es gehört zur wissenschaftlichen Arbeit, Dinge zu kopieren, aber man gibt stets an, woher man sie kopiert hat. Eine wissenschaftliche Arbeit gewinnt durch Quellen an Wert, denn Wissenschaft ist Ergebnisorientiert, und sollte nicht primär irgendwelchem Ego-Boosting dienen.

Im ersten Moment hätte ich, als ich von den Plagiatsvorwürfen erfuhr, auch erwartet, dass es sich vielleicht um eine Kleinigkeit handelt. Eine vergessene Referenz - soetwas kann vorkommen. Aber das war bei der Fülle, die man auch in Guttenplag sah, leider nicht anzunehmen.

Plagiieren ist meines Wissens das Zweitschlimmste, was ein Wissenschaftler machen kann, gleich nach dem Fälschen von Ergebnissen. Dass ihm der Doktortitel aberkannt wurde, war also eine Notwendigkeit.

Kann er deshalb seine Arbeit als Politiker nicht mehr fortsetzen? Nunja, als Politiker hat man gewisse Ansprüche an sich - wie Guttenberg selbst sagte. Wenn er ein guter Politiker ist, ist er das auch ohne Doktortitel, allgemein finde ich, Doktortitel werden überbewertet - eine Promotion qualifiziert einen Menschen zum wissenschaftlichen Arbeiten in einem Fachgebiet. Mehr nicht. Nun hat er aber eben einen Doktortitel gemacht - warum auch immer - dann muss er sich auch an die Regeln halten. Bliebe er im Amt, hieße das für den Rest der Welt, dass Deutschland ihn stützt, und das würde dem wissenschaftlichen Ansehen von Deutschland dauerhaft schaden. Eine Alternative zum Rücktritt gibt es also nicht.

Trotzdem möchte ich darauf hinweisen, dass Guttenberg in seiner Bundeswehrreform die Wehrpflicht endlich ausgesetzt hat - was vermutlich ein wichtiger Schritt in Richtung Abschaffung der Wehrpflicht war. Selbst wenn das das einzig gute war, was er in seiner Amtszeit getan hat, hat es sich gelohnt.

Sind wir mal gespannt, wer jetzt nachrückt.