Subscribing feeds with tt-rss under Opera.

So, 29 Mär 2009 23:14:22 +0200

Opera has its own Feed-Reader. And it seems like its not that easy to change it (at least I am too lazy to do that, and seems like other people have tried it and didnt succeed).

I found this userspace-script, but actually I dont know what exactly to do with it, it seems like it just changes the URL’s in the link-tags. That’s useful, but it’s not what I want – I want a preview before subscribing.

So I created a bookmark-button with the URL javascript:void(location.href=’http://tt-rss-root-domain/backend.php?op=pref-feeds&subop=add&cat_id=0&feed_url=’+escape(location.href)) – this only works when JavaScript is enabled. Then I just have to press that button to subscribe to the previewed feed.

Since at the moment I tend to unsubscribe from feeds rather than subscribing new ones, I wont use this too often in the near future, and in the long term I will certainly use another browser rather than Opera (wer rastet der rostet, scnr).


Programming Amnesia

So, 29 Mär 2009 14:40:16 +0200

It is quite funny. The code of my JNR-Project works fine (at least at the moment there is no major bug). But currently I had to change a few elementary parts of it. Well, I would today do many parts of the program in a different way I think. But actually, for some parts of it, I dont even know what they do anymore. Or, even worse, I cannot remember ever having written them.

Thats no surprise. According to „wc -l *.lisp“, my code has 2363 lines (though some lines are redundant or comments, and the line number of lisp-sources doesnt really give a proper comparism of sizes). And some parts of it should be 2 years old, and since that, I have never read or refactored them, but just used them and continue using them.

Thats the true spirit of programming: Use stuff that works, without knowing how or why it works, or if it will continue working. If something doesnt work or isnt sufficient for your purposes anymore, then first try to find a workaround, and only if this fails, rewrite the shrubs from your past.

That is why commercial software and software in general developes in thrusts, stagnating at a state without real innovations for long periods of time, and then blowing off the common habits with a new version.

Compare this to mathematics, and you will see the main difference between it and computer science: In mathematics, you dont have to care about the shrubs so much – as soon as they work, they mostly will continue to work, at least for a much longer time.


I just installed figlet…

So, 29 Mär 2009 04:06:52 +0200
 ___     _           _     _           _        _ _          _
|_ _|   (_)_   _ ___| |_  (_)_ __  ___| |_ __ _| | | ___  __| |
 | |    | | | | / __| __| | | '_ \/ __| __/ _` | | |/ _ \/ _` |
 | |    | | |_| \__ \ |_  | | | | \__ \ || (_| | | |  __/ (_| |
|___|  _/ |\__,_|___/\__| |_|_| |_|___/\__\__,_|_|_|\___|\__,_|
      |__/
  __ _       _      _      __        ___           _
 / _(_) __ _| | ___| |_    \ \      / / |__   __ _| |_    __ _
| |_| |/ _` | |/ _ \ __|    \ \ /\ / /| '_ \ / _` | __|  / _` |
|  _| | (_| | |  __/ |_ _    \ V  V / | | | | (_| | |_  | (_| |
|_| |_|\__, |_|\___|\__(_)    \_/\_/  |_| |_|\__,_|\__|  \__,_|
       |___/
       _
 _ __ (_) ___ ___   _ __  _ __ ___   __ _ _ __ __ _ _ __ ___
| '_ \| |/ __/ _ \ | '_ \| '__/ _ \ / _` | '__/ _` | '_ ` _ \
| | | | | (_|  __/ | |_) | | | (_) | (_| | | | (_| | | | | | |_
|_| |_|_|\___\___| | .__/|_|  \___/ \__, |_|  \__,_|_| |_| |_(_)
                   |_|              |___/
   _        _                                               _
  | |      | |                                             | |
  | |_|_   | |     __,   ,     ,   _        _   ,_    __,  | |
_ |/  |    |/ \   /  |  / \_  / \_|/  |  |_|/  /  |  /  |  |/
\_/\/ |_/  |   |_/\_/|_/ \/    \/ |__/ \/  |__/   |_/\_/|_/|__/

 _                         ______ _
| |                       (_) |  | |    o                           o
| |  __   _  _  _|_  ,        |  | |        ,     __   _  _    _        ,
|/  /  \_/ |/ |  |  / \_    _ |  |/ \   |  / \_  /  \_/ |/ |  |/    |  / \_
|__/\__/   |  |_/|_/ \/o   (_/   |   |_/|_/ \/   \__/   |  |_/|__/  |_/ \/
|\
|/
            _   _              o                          o
           | | | |        |    /               o          /
 __   __,  | | | |  _   __|      ,   __   ,_        _ _|_
/    /  |  |/  |/  |/  /  |     / \_/    /  |  |  |/ \_|
\___/\_/|_/|__/|__/|__/\_/|_/    \/ \___/   |_/|_/|__/ |_/
                                                 /|
                                                 \|
  _|_|                    _|        _|      _|        _|
_|    _|  _|_|_|      _|_|_|      _|_|_|_|  _|_|_|          _|_|_|
_|_|_|_|  _|    _|  _|    _|        _|      _|    _|  _|  _|_|
_|    _|  _|    _|  _|    _|        _|      _|    _|  _|      _|_|
_|    _|  _|    _|    _|_|_|          _|_|  _|    _|  _|  _|_|_|

  _|_|    _|_|_|      _|_|
_|    _|  _|    _|  _|_|_|_|
_|    _|  _|    _|  _|
  _|_|    _|    _|    _|_|_|

  _|                                                _|
_|    _|        _|                      _|        _|
      _|_|_|    _|    _|_|      _|_|_|  _|  _|
      _|    _|  _|  _|    _|  _|        _|_|
      _|    _|  _|  _|    _|  _|        _|  _|
      _|_|_|    _|    _|_|      _|_|_|  _|    _|
   #
  # #   #    # #####     ##### #    # #  ####      ####  #    # ######
 #   #  ##   # #    #      #   #    # # #         #    # ##   # #
#     # # #  # #    #      #   ###### #  ####     #    # # #  # #####
####### #  # # #    #      #   #    # #      #    #    # #  # # #
#     # #   ## #    #      #   #    # # #    #    #    # #   ## #
#     # #    # #####       #   #    # #  ####      ####  #    # ######

###                                           ###
### #####    ##   #    # #    # ###### #####  ###        # #####
 #  #    #  #  #  ##   # ##   # #      #    #  #         #   #
#   #####  #    # # #  # # #  # #####  #    # #          #   #
    #    # ###### #  # # #  # # #      #####      ###    #   #
    #    # #    # #   ## #   ## #      #   #      ###    #   #
    #####  #    # #    # #    # ###### #    #      #     #   #
                                                  #

#       ####   ####  #    #  ####
#      #    # #    # #   #  #
#      #    # #    # ####    ####
#      #    # #    # #  #        #
#      #    # #    # #   #  #    #
######  ####   ####  #    #  ####

 ####   ####  #    # #####    ##   #####    ##   #####  #      #   #
#    # #    # ##  ## #    #  #  #  #    #  #  #  #    # #       # #
#      #    # # ## # #    # #    # #    # #    # #####  #        #
#      #    # #    # #####  ###### #####  ###### #    # #        #
#    # #    # #    # #      #    # #   #  #    # #    # #        #
 ####   ####  #    # #      #    # #    # #    # #####  ######   #

######   ##    ####  #   #
#       #  #  #       # #
#####  #    #  ####    #
#      ######      #   #   ###
#      #    # #    #   #   ###
###### #    #  ####    #   ###
_/_/_/_/_/  _/        _/                _/
   _/      _/_/_/          _/_/_/            _/_/_/
  _/      _/    _/  _/  _/_/          _/  _/_/
 _/      _/    _/  _/      _/_/      _/      _/_/
_/      _/    _/  _/  _/_/_/        _/  _/_/_/

       _/                                      _/
    _/    _/                                _/
         _/    _/_/      _/_/_/  _/_/_/
        _/  _/_/_/_/  _/    _/  _/    _/
       _/  _/        _/    _/  _/    _/
      _/    _/_/_/    _/_/_/  _/    _/        _/
                                           _/

    _/                      _/
   _/    _/_/      _/_/    _/  _/      _/_/_/
  _/  _/    _/  _/    _/  _/_/      _/_/
 _/  _/    _/  _/    _/  _/  _/        _/_/
_/    _/_/      _/_/    _/    _/  _/_/_/

 _/      _/    _/_/    _/  _/_/  _/    _/
_/      _/  _/_/_/_/  _/_/      _/    _/
 _/  _/    _/        _/        _/    _/
  _/        _/_/_/  _/          _/_/_/
                                   _/
                              _/_/

                                        _/
     _/_/_/    _/_/      _/_/      _/_/_/
  _/    _/  _/    _/  _/    _/  _/    _/
 _/    _/  _/    _/  _/    _/  _/    _/
  _/_/_/    _/_/      _/_/      _/_/_/  _/
     _/
_/_/
  ____                                       _
 / ___|___  _ __ ___   ___    __ _ _ __   __| |
| |   / _ \| '_ ` _ \ / _ \  / _` | '_ \ / _` |
| |__| (_) | | | | | |  __/ | (_| | | | | (_| |
 \____\___/|_| |_| |_|\___|  \__,_|_| |_|\__,_|

             _                   _     _ _       _              _
  __ _ _ __ | |_       __ _  ___| |_  (_) |_    | |_ ___   ___ | |
 / _` | '_ \| __|____ / _` |/ _ \ __| | | __|   | __/ _ \ / _ \| |
| (_| | |_) | ||_____| (_| |  __/ |_  | | |_ _  | || (_) | (_) |_|
 \__,_| .__/ \__|     \__, |\___|\__| |_|\__( )  \__\___/ \___/(_)
      |_|             |___/                 |/

Why a Markup Language?

So, 29 Mär 2009 03:32:25 +0200

Die Frage kann man sich des Öfteren stellen. Die Antwort, die dieses Projekt findet, lautet:

Any time a formal language is created for computing, a compromise has to be found: whether the language is perfect for the computer but terrible for the human or vice versa. XML is very good for the computer ;-)

Using XML for the reasons mentioned above, but for programming? „Why a Markup Language?!“ was what I was shouting some time playing around with a code generator in XSLT. That gave the idea.

Nun, XML ist nicht gerade das Optimum für den Computer – XML ist genaugenommen nichtmal LL(1), wenn ich mich gerade nicht irre, ist aber andererseits nicht wirklich ausdrucksstärker als Lisp-Klammernnotation und erheblich schlechter Menschenlesbar. XML ist eigentlich weder gut für den Menschen noch für den Computer. Das ist ja auch der Grund warum man es benutzt: Arbeit erzeugen.

Der Grund für eine Markup-Language ist aber eigentlich ein Anderer, soweit mir gesagt wurde, nämlich, damit man das Web verschiedensten Ausgabegeräten zugänglich machen kann, zum Beispiel für Blinde. Man schreibt die Information einigermaßen strukturiert hin, und gibt verschiedene Stylesheets an, Letztere sind aber optional. Dass die Realität häufig anders aussieht, ist eine andere Geschichte.

Optimal für den Computer wäre eher ein Bytecode, das ginge in Richtung Flash oder Java. Beides nicht so optimal bisher. Java hat wenigstens eine Accessibility-API (auch wenn die keiner nutzt und sie daher vermutlich nicht besonders gut gepflegt ist).

Was solls, das verlinkte Projekt „YML“ sieht interessant aus. *Note to Self*


Zeitumstellung

So, 29 Mär 2009 03:07:39 +0200

Mag ich nicht!


WLAN Funktioniert jetzt

So, 29 Mär 2009 00:56:44 +0200

So. Jetzt funktioniert das WLAN bei meinem Router auch. Wie wundervoll. Ein unglaubliches Erlebnis, überall im Haus online sein zu können, theoretisch sogar auf dem Klo (nicht dass ich es da bräuchte, nur als Beispiel). Selbst im Garten müsste es eigentlich gehen, aber dazu ist es momentan noch zu kalt.

Es ist vermutlich von Anfang an gegangen. Aber ich habe es unter Windows XP und Debian getestet. Was ich nicht wusste, war, dass Windows XP ein Update braucht, um WPA2 zu können. Und unter Debian … naja, scheinbar ist irgendwas an meiner wpa_supplicant.conf falsch gewesen. Denn mit dem knetworkmanager ging es dann problemfrei. Werd noch schaun, woran das liegt. Bei sowas ist KDE dann halt doch immer ganz praktisch. Man muss ja nicht gleich das ganze Environment nutzen.

Momentan habe ich mit dem tollen Toggle-Button, den ich mir eingerichtet habe, das WLAN allerdings ausgeschaltet. Brauch ich grad nicht. Kabel ist immernoch das Sicherste, und braucht auch weniger Strom soweit ich weiß. Solange es reicht, ist also Kabel vorzuziehen, denke ich.