tag:blogger.com,1999:blog-121204372023-06-21T07:37:54.478+03:00wITTus' BlogSaschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.comBlogger27125tag:blogger.com,1999:blog-12120437.post-90472286193989360492013-05-07T21:01:00.001+03:002013-05-07T21:02:08.577+03:00Quadratmeterpreise für wg-gesucht.deDie WG-Suche in München ist eine Tortur. Mit diesem Skript, das den Quadratmeterpreis pro Angebot ausrechnet, geht's ein bisschen einfacher.<br />
<br />
<a href="http://userscripts.org/scripts/show/166885">http://userscripts.org/scripts/show/166885</a><br />
<br />
Man benötigt dafür lediglich die Firefox-Erweiterung <a href="https://addons.mozilla.org/de/firefox/addon/greasemonkey/" target="_blank">Greasemonkey</a>.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-51830413167555931852011-12-14T22:12:00.005+03:002011-12-14T22:33:25.863+03:00Bash: Converting IPs to Hostnames within a file or streamI recently stumbled upon an interesting problem.<br /><br />Imagine you have many IP addresses in a file or piped input. How to reverse DNS these entries, that is, how to substitute them with host names?<br /><br />Example:<br /><br /><span style="font-family: courier new;">Blah;10.1.73.70:8800;10.1.73.69:8800;10.1.73.68:8800;10.1.73.67:8800;10.1.73.66:8800</span><br /><span style="font-family: courier new;">Lalalala;10.1.73.70:8800;10.1.73.69:8800;10.1.73.68:8800;10.1.73.67:8800;10.1.73.66:8800;1</span><br /><span style="font-family: courier new;">...</span><br /><br />Well... took me a few hours, but once again, Perl magic to the rescue:<br /><br /><span style=" color: rgb(51, 51, 255);font-family:courier new;" >cat <span style="color: rgb(204, 0, 0);">file</span> | perl -pe '<span style="color: rgb(51, 51, 255);">sub rep{$host=`host $_[0]`;$host=~'s#\\n##g';$host=~'s#\(.+\ \|\.$\)##g';return $host} s#<span style="color: rgb(51, 51, 255);">([^0-9]+)?([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)</span>#$1.rep($2)#eg';<br /><br /></span></span>So, for "<span style="color: rgb(255, 0, 0);font-family:courier new;" >LALALA---8.8.8.8---BLAAAAH---4.2.2.2---LALALA</span>" you'd get "<span style="color: rgb(0, 153, 0);font-family:courier new;" >LALALA---google-public-dns-a.google.com---BLAAAAH---vnsc-bak.sys.gtei.net---LALALA</span>".<br /><br />Cool or cool?<span style=" color: rgb(51, 51, 255);font-family:courier new;" ><span style="color: rgb(51, 51, 255);"><br /></span></span>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-9745308960415035512011-02-16T01:44:00.004+03:002011-08-25T17:02:04.558+03:00Teamspeak 3 Wav to Mp3This is rather a note to myself. If you try to convert a wav-file with Lame, which had been written by Teamspeak 3, you'll probably encounter the following error:
<br />
<br /><span style="color: rgb(204, 0, 0);">Unsupported data format: 0x0003</span>
<br />
<br />One solution is, to resample it with Sox:
<br />
<br /><span style="color: rgb(51, 51, 255); font-family:courier new;" >sox ts3.wav -b 16 -r 44100 converted.wav</span>
<br />
<br />Now, you may convert it with lame (or oggenc):
<br />
<br /><span style="color: rgb(51, 51, 255); font-family:courier new;" >lame -V9 converted.wav final.mp3</span>
<br />
<br />or directly by piping:
<br />
<br /><span style="color: rgb(0, 153, 0); font-family:courier new;" >sox ts3.wav -b 16 -r 44100 -t wav - | lame \
<br />-V9 - final.mp3</span>
<br />
<br />I've chosen -V9 since that voice quality was still good for me. The original file had 906 MB, the other wav (generated by Sox) had 417 MB. I finally got mp3's of 18 MB (with -V9) and 26 MB (with -V8).Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com2tag:blogger.com,1999:blog-12120437.post-82487476796654960082010-01-04T19:30:00.008+03:002010-01-04T20:32:45.785+03:00PrimaCom Internet verteilen mit KnoppixWenn Sie einen PrimaCom-Anschluss besitzen und das hier lesen, werden sie vermutlich bemerkt haben, dass im Windows für die LAN Verbindung keine Internetverbindungsfreigabe möglich ist. Das liegt möglicherweise daran, dass das PrimaCom-Gerät sich einmalig den erstbesten Rechner sucht, und ihm eine dynamische, externe IP zuweist. Über diese wird dann kommuniziert. Es ist eben ein "Cable-Modem", das via Ethernet funktioniert, zum Leidwesen aller Windows-User, die nur eine Netzwerkkarte haben - oder grad keinen Hardware-Router zur Hand. Aber es gibt ja zum Glück noch andere Systeme. Mit Knoppix lässt sich alles ordentlich dahin routen wo es hin soll.<br /><br />Wir wollen:<br /><ul><li>Beliebig viele PCs online haben</li><li>Ohne Hardware-Router</li><li>Mit nur einer Netzwerkkarte pro PC</li></ul>Was man dafür braucht:<br /><ul><li>Einen Hub oder Switch</li><li>Einen Rechner auf dem <a href="http://www.knoppix.org/">Knoppix</a> dann laufen wird (oder ein anderes Linux)</li></ul>Letzteres sollte idealerweise das Gerät sein, auf das das Modem standardmäßig anspricht. Sollte dies nicht der Fall sein, könnte eventuell ein Modem-Reset von Nöten sein, was ich allerdings nicht ausprobiert habe.<br /><br />So sieht die Konfiguration dann aus:<br /><pre>|---------| ________ _____________<br />| Knoppix |_______| Switch | _| PrimaCom |<br />| PC | #-oooo-o-# / | Cable-Modem |<br />|---------| || \____/ #-------------#<br /> ||<br />|---------| || |---------|<br />| Anderer |_________||____________| Anderer |<br />| PC 1 | | PC 2 |<br />|---------| |---------|<br /></pre>Wenn kein Crosskabel vorhanden ist, kommt das Modem an den Uplink-Port des Switches (die sind meistens extra gekennzeichnet). Wenn der PC mit Knoppix startet, müssten die Netzwerkeinstellungen für's Internet schon korrekt sein.<br /><br />Unter Knoppix dann folgendes (mit <span style="font-family: courier new; color: rgb(51, 102, 255);">sudo</span> davor, wenn es Probleme mit den Berechtigungen gibt):<br /><br /><ul><li><span style="color: rgb(51, 102, 255);font-family:courier new;" >ifconfig eth0:1 192.168.0.1 netmask 255.255.255.0 up</span></li><li><span style="color: rgb(51, 102, 255);font-family:courier new;" >sysctl net.ipv4.ip_forward=1</span></li><li><span style="color: rgb(51, 102, 255);font-family:courier new;" >iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</span></li></ul>Nun gibt es für die anderen Geräte zwei Möglichkeiten:<br /><br /><span style="color: rgb(51, 153, 153);">A) Manuelle Konfiguration</span><br /><span style="color: rgb(153, 51, 153);">B) Automatische Konfiguration</span><br /><br /><span style="color: rgb(51, 153, 153);">A geht mit Linux so:</span><br /><br /><ul><li><span style="color: rgb(51, 153, 153);font-family:courier new;" >ifconfig eth0 192.168.0.2 netmask 255.255.255.0 up</span></li><li><span style="color: rgb(51, 153, 153);font-family:courier new;" >route add default gw 192.168.0.1</span></li><li><span style="color: rgb(51, 153, 153);font-family:courier new;" >echo "nameserver 8.8.8.8" >> /etc/resolv.conf</span></li></ul><br /><span style="color: rgb(51, 153, 153);">Und für Windows:</span><br /><br /><ul><li><span style="color: rgb(51, 153, 153);">IP-Adresse: </span><span style="color: rgb(51, 153, 153);font-family:courier new;" >192.168.0.2</span></li><li><span style="color: rgb(51, 153, 153);">Subnetzmaske: </span><span style="color: rgb(51, 153, 153);font-family:courier new;" >255.255.255.0</span></li><li><span style="color: rgb(51, 153, 153);">Standardgateway: </span><span style="color: rgb(51, 153, 153);font-family:courier new;" >192.168.0.1</span></li><li><span style="color: rgb(51, 153, 153);">DNS: </span><span style="color: rgb(51, 153, 153);font-family:courier new;" >8.8.8.8</span></li></ul><span style="color: rgb(51, 153, 153);">Natürlich brauch der nächste Rechner dann 192.168.0.3 usw.</span><br /><br /><span style="color: rgb(153, 51, 153);">Für Möglichkeit B muss ein DHCP Server auf dem Knoppix Rechner eingerichtet werden.</span><br /><br />Das Cable-Modem ist ansich nicht schlecht. Vor allem mag ich den dicken, großen Knopf zum An- und Ausschalten. Es bietet zwar einen DHCP Server, aber keine Routing Funktionalität. Warum man nun scheinbar ausschließlich durch einen Reset des Modems den Zielrechner ändern kann... tja. Als langfristige Lösung bietet sich am Besten ein wLan Hardware-Router an.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com1tag:blogger.com,1999:blog-12120437.post-26839194594288659112009-11-25T01:01:00.005+03:002009-11-25T01:37:56.384+03:00PXE OdysseyBooting via network is a nice thing, when it works. I tried to boot my laptop (which didn't recognize my CDRW) with the help of another Windows machine to finally install a Linux distribution from the Internet. At first, the best solution wasn't obvious. You'll need a few server apps which are all nicely integrated into a program which goes by the name <a href="http://tftpd32.jounin.net/">tftpd32</a>. Next prerequisites are <a href="http://ftp.nl.debian.org/debian/dists/lenny/main/installer-i386/current/images/netboot/">some files</a> (bootloader, installer...) which will be actually loaded into the target machine. Just follow the instructions of <a href="http://ubuntuforums.org/archive/index.php/t-327597.html">this excellent post</a>.<br /><br />I had a few problems, though. Unfortunally, PXE error messages aren't very enlightening. At best you'll be able to find out to which server application the error message is referring to. For example I got that one:<br /><br /><span style="font-family:courier new;">PXE-E53: No boot filename received</span><br /><br />I don't know why it happened. I guess it simply asked the wrong DHCP server (although I saw that tftpd32 was correctly responding). As soon as I removed my DSL router, I got another error:<br /><br /><span style="font-family:courier new;">PXE-E51: No DHCP or proxyDHCP offers were received</span><br /><br />Guess this is another DHCP problem :-). He claims that he didn't receive an offer from tftpd32, and he's a damn liar. tftpd32 told me otherwise. I struggled around for a half an hour and got it finally done. I read something on the net about Full-Duplex problems and so on... well, nonsense. Solution was to go back to basic. I put both machines on a switch, configured the windows network adapter manually just with 192.168.0.1 / 255.255.255.0, adjusted "IP pool starting address" in tftpd32 to 192.168.0.2, made the default router 192.168.0.1 and it worked. Well, DHCP worked, but not TFTP:<br /><br /><span style="font-family:courier new;">PXE-E32: TFTP open timeout</span><br /><br />tftpd32 told me this instead:<br /><br /><span style="font-family:courier new;">Rcvd DHCP Discover Msg for IP 0.0.0.0, Mac 00:00:39:59:11:B4 [24/11 22:14:37.161]</span><br /><span style="font-family:courier new;">DHCP: proposed address 192.168.0.1 [24/11 22:14:37.161]</span><br /><span style="font-family:courier new;">2868 Request 2 not processed [24/11 22:14:37.239]</span><br /><span style="font-family:courier new;">Rcvd DHCP Rqst Msg for IP 0.0.0.0, Mac 00:00:39:59:11:B4 [24/11 22:14:38.145]</span><br /><span style="font-family:courier new;">Previously allocated address 192.168.0.1 acked [24/11 22:14:38.145]</span><br /><span style="font-family:courier new;">Connection received from 192.168.0.1 on port 2070 [24/11 22:14:38.161]</span><br /><span style="font-family:courier new;">Read request for file <pxelinux.0>. Mode octet [24/11 22:14:38.161]</span><br /><span style="font-family:courier new;">OACK: <blksize=1456,> [24/11 22:14:38.161]</blksize=1456,></span><br /><span style="font-family:courier new;">Using local port 55153 [24/11 22:14:38.161]</span><br /><span style="font-family:courier new;">2868 Request 2 not processed [24/11 22:14:38.208]</span><br /><span style="font-family:courier new;">File <pxelinux.0> : error 10054 in system call re<span style="font-family:courier new;">cv </span>An existing connection was forcibly closed by the remote host<span style="font-family:courier new;">. [</span>24/11 22:14:38.270]</pxelinux></span><br /><br />Okay. That is, he tries to read 1456 bytes from pxelinux.0 and closes the connection. Something went wrong at the remote machine. The laptop doesn't remember and simply says "timeout". So I tried lots of things. Shortened the directory names (C:\pxe\...), tried other pxelinux.0 files and so on.<br /><br />Nothing changed, till I deleted everything except tftpd32.exe/.ini and pxelinux.0 and suddenly the laptop complained about several missing files (e.g. pxelinux.cfg/default). So I added step-by-step the remaining files and it worked. It loaded all files necessary for booting the debian installer. I switched back cables and re-configured network connections (also in the installer) and could complete the installation. Happy end with PXE.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-27881131873548662542009-08-27T15:22:00.009+03:002011-05-08T20:41:09.716+03:00Kontochart erstellen mit SparkassendatenKunden der Sparkasse können sich ihre Kontoauszüge auch im CSV Format herunterladen. Mit Hilfe von GNUplot und dieser Liste aller Kontobewegungen kann man dann natürlich ganz einfach nette Visualisierungen erstellen. Falls man mit Windows gestraft ist, kann man wenigstens noch Cygwin benutzen; das macht die ganze Arbeit wesentlich angenehmer.<br /><br />Mein Problem war am Anfang, dass die Beträge jeweils die Differenz darstellen und nicht den Saldo zum jeweiligen Zeitpunkt. Wenn man das dann als Chart darstellt kommt natürlich nur Müll heraus. Ich habe ewig versucht das ganze mit GNUplot ausrechnen zu lassen; kam allerdings auf keinen grünen Zweig. Also schrieb ich schnell ein C++ Programm, welches die Daten auf die notwendige Art und Weise umschreibt. Hier ist es (<a href="http://www.webutils.pl/index.php?idx=uu">uuencoded</a>):<br /><br /><span style="font-size:78%;"><span style="font-family:courier new;"></span></span><blockquote><span style="color: rgb(153, 153, 153);font-size:78%;" ><span style="font-family:courier new;">begin 644 main.cpp.gz</span><br /><span style="font-family:courier new;">M'XL(`(!P;T4"`\U66V_:,!1^!HG_<$HE:D9&USU"J=1U[52I6JO>]A@9QRE6</span><br /><span style="font-family:courier new;">M0XQB!]96_/<=WT*`3'N='Z"<F[_OW-Q#D;.L3#B<"JETP>G\K-,^K(0H$OG+</span><br /><span style="font-family:courier new;">MEFC)F9;%EBAM\)Q*C'><\=^"T2QF5.GA;+%`DTZ[5!@3<CKG:D$9!Z63L9$S</span><br /><span style="font-family:courier new;">MF2MM?HU&[E[X$5__O'MZC*^N;RY)MYPKRO4['S*U[/;'S0ZW3X\;CX*K,M.5</span><br /><span style="font-family:courier new;">M?:>=9I)J>.'ZLBRD.E=7]C>IA>C!,RWZG?9'I]UJ*?'.8PW?.;N3(M<P,<IA</span><br /><span style="font-family:courier new;">M*O*$'$5'+F2K960%7V3(A033"$XBZ`Z[P:;@NBQRL%D9C>II.;68SHBY%HW7</span><br /><span style="font-family:courier new;">MQMZSV>!\<`+B\&\0>D-KA>B:POL2AOC&:8^5]?>\AH&72*&B`P<3<(%&HWPA</span><br /><span style="font-family:courier new;">M5=]P<E[-S*/`W!.WMH$>RZA2\(TF#WPNF,QD?CZ7)=[RL;9.'J#!\Z!IH6_3</span><br /><span style="font-family:courier new;">MRZ?[9YJ5',A>S7MP(W(>\N$\K1?R,AI/:VQIM1HUD7,8G/QW)KX,WK*A!GI6</span><br /><span style="font-family:courier new;">MR%5#*HE/__$Q_.*0<YZ`GG'`/,+2)E+FV5L$2H)Z%0O`BX'F"1QUCS8U<[<.</span><br /><span style="font-family:courier new;">MX&NH6Z>]E"*!52$TO[>C]2BO1%:KBBO(;:E3%$<&H#E.ZQ9'Z,<>N`B^<-+O</span><br /><span style="font-family:courier new;">M$$B)]QZR&$6D;_.P[3L:V8@QPB@HRD&8-+IXPRE_$;FEWTI11<9&>U"I.::Y</span><br /><span style="font-family:courier new;">M/X;!0&B;P!1.3^$3FN`7ZK(-5]/V<VIB.8AB`[&^E^HX-Q,9#BN+@N?:E-@@</span><br /><span style="font-family:courier new;">M,C%K)T/QA2D7+Y#`%XO93GAU'LIYT&SGP/-QEZYFM@JX+TQ$DD:U:_O0ZR'=</span><br /><span style="font-family:courier new;">MVE6&MUUONG@#^\?NW#1,'JF''->=+K%O)G6BOI>[H9?##MS:5M5.VW95Y=1D</span><br /><span style="font-family:courier new;">MT_I%-O3GG2`N0::1)[N+G&Q%KCQ,#@<3X[(#!!5SJGEB"=8`[>Y=@H95M#K:</span><br /><span style="font-family:courier new;">ML/OJ,M]_.#>.A'6"AM/LA)3_[M((N$+F.WQ1JED\I>QUOV1K\\&H9C,@^SNC</span><br /><span style="font-family:courier new;">M[YN!R=*.0_=BQMDK4+>;90HJV"L0.>"K"E@)TUA=-^G&J=[2FY%J52_@YY,]</span><br /><span style="font-family:courier new;">M)/[5FM(DKK]</9CN(IH.5S,L<_]?D=?5`^9S8EH51]3H][87V?JG(8QS%/:3</span><br /><span style="font-family:courier new;">,6PA_`&0Q9^DH"0``</span><br /><span style="font-family:courier new;">`</span><br /><span style="font-family:courier new;">end</span></span><br /></blockquote><br />Also im Prinzip, muss man die Erste (unnötige) Zeile von umsaetze.csv löschen, da GNUplot damit nicht klar kommt. Dann, mein Programm (im selben Ordner) ausführen und schließlich GNUplot starten. Dort gibt man die folgenden Befehle ein:<br /><br /><span style="color: rgb(51, 102, 255);font-size:85%;" ><span style="font-family:courier new;"></span></span><blockquote><span style="color: rgb(51, 102, 255);font-size:100%;" ><span style="font-family:courier new;">set xdata time</span><br /><span style="font-family:courier new;">set xlabel "Datum"</span><br /><span style="font-family:courier new;">set ylabel "EUR"</span><br /><span style="font-family:courier new;">set title "Kontochart Sparkasse"</span><br /><span style="font-family:courier new;">set datafile separator ";"</span><br /><span style="font-family:courier new;">set timefmt "%d.%m.%Y"</span><br /><span style="font-family:courier new;">set terminal png size 1024,768</span><br /><span style="font-family:courier new;">set output "Chart.png"</span></span><span style="font-size:100%;"><br /><br /></span><span style="color: rgb(51, 102, 255);font-size:100%;" ><span style="font-family:courier new;">plot "result.csv" using 1:7 w boxes fs pattern 2</span></span></blockquote><br /><br />Und so könnte beispielsweise dann das Resultat aussehen (hier etwas verkleinert):<br /><br /><img style="width: 416px; height: 312px;" src="http://i31.tinypic.com/2nlr590.jpg" /><br /><br />Oder man benutzt:<br /><br /><span style="font-family: courier new;font-family:courier new;font-size:85%;" ><span style="color: rgb(51, 102, 255);">plot "result.csv" using 1:7 w l</span></span><br /><br />und bekommt:<br /><br /><img style="width: 416px; height: 312px;" src="http://i28.tinypic.com/2v9dysw.png" /><br /><br /><span style="font-family: courier new;font-family:courier new;font-size:85%;" ><span style="color: rgb(51, 102, 255);">plot "result.csv" using 1:7 smooth bezier title "bezier" w l, \<br /> "result.csv" using 1:7 title "line" w lp</span></span><br /><br />ist auch nicht schlecht.<br /><br /><br />Und weil GNUplot toll ist, geht das ganze auch noch mit <a href="http://t16web.lanl.gov/Kawano/gnuplot/intro/style-e.html">candlesticks und financebars</a>.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com1tag:blogger.com,1999:blog-12120437.post-25550485967319579542009-08-25T22:15:00.009+03:002010-02-20T21:43:33.651+03:00Howto compile libMSN without CMakeWell, this blog entry serves rather as a note to myself, but I guess it could be useful for others, too. Compiling the excellent <a href="http://sourceforge.net/projects/libmsn/">libMSN</a> is pretty easy (especially when running Linux), but every time I do something wrong with the cmake building system on Windows it becomes a PITA (I had some problems with cmake finding my OpenSSL installation... no idea why). That's why I'll show how to build it manually for Visual Studio 2008 (should also work with other versions though).<br /><br />If you have already installed OpenSSL in your IDE, you can start immediately. If not, you can download <a href="http://www.slproweb.com/products/Win32OpenSSL.html">here</a> a precompiled package which contains everything you need (I used the package "Win32 OpenSSL v0.9.8k" with a size of 7MBs). Just put the 2 precompiled files and the headers into the particular directories of Visual Studio.<br /><br /><ol><li> At first, grab the latest version from SVN trunk: <span style="color: rgb(51, 51, 255);">svn co https://libmsn.svn.sourceforge.net/svnroot/libmsn libmsn</span>. In case you don't have a suitable SVN client: I'm quite happy for now with the <a href="http://www.sliksvn.com/en/download/">free client from SlikSVN</a>.</li><li>Make a new empty file with the name <span style="color: rgb(51, 51, 255);">config.h</span> in <span style="color: rgb(51, 51, 255);">trunk/msn</span>. This file is normally automatically generated by cmake and contains a few macros which enable or disable certain features. But for now, we're in a hurry so we don't care :-).</li><li>Now copy all header files in <span style="color: rgb(51, 51, 255);">trunk/msn</span> to a new msn folder in your include directory of visual studio (e.g.: <span style="color: rgb(51, 51, 255);">C:\Program Files\Microsoft Visual Studio 9.0\VC\include\msn</span>).</li><li>Create a new project with Visual Studio. We need an empty Win32 project for a dynamic link libary.</li><li>Try to find "Add" -> "Existing Item" somewhere and add all headers and source files to the project. Add also all files in the subdirectory "libsiren".</li><li>Open up your project settings (or property pages) :</li><li>Go to "C/C++" -> "Preprocessor" and add <span style="color: rgb(51, 51, 255);">msn_EXPORTS</span> to the "Preprocessor Definitions".</li><li>Go also to "General" and set the character set to "Not Set".</li><li>Now "Linker" -> "Input" and add <span style="color: rgb(51, 51, 255);">libeay32.lib</span> and <span style="color: rgb(51, 51, 255);">ssleay32.lib</span>.</li><li>You may experience some linker problems related to debug code. Search "Linker" -> "Debugging" and set "Generate Debug Info" to "No".</li></ol>Now pray and compile the project. You should get libmsn.lib and libmsn.dll. Put the lib into the lib directory of Visual Studio and the DLL either into the same directory of your executable or into system32 of your windows folder. That's it.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com3tag:blogger.com,1999:blog-12120437.post-5270910985383795742009-07-09T03:21:00.003+03:002009-07-12T15:20:28.237+03:00Ancient photos of Mahajanga, Madagascar - Part Two<span style="">As promised, here comes the second load of pictures:</span><div><span style="">(check out the <a href="http://wittus.blogspot.com/2009/05/ancient-photos-of-mahajanga-madagascar.html">first part</a>, too)</span><br /><br /><a href="http://img521.imageshack.us/my.php?image=img0022z.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/7214/img0022z.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0023i.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/4974/img0023i.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0024u.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/9365/img0024u.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0025y.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/3344/img0025y.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0029l.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/4907/img0029l.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0030i.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/9237/img0030i.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0032swz.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/2180/img0032swz.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0033d.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/1927/img0033d.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0034l.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/9577/img0034l.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0035n.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/3179/img0035n.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=le20phare20de20la20poin.jpg" target="_blank" title="Le phare de la pointe de sable"><img src="http://img521.imageshack.us/img521/3663/le20phare20de20la20poin.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=mahanoro.jpg" target="_blank" title="Mahanoro"><img src="http://img521.imageshack.us/img521/2313/mahanoro.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=montagne20d27ambre.jpg" target="_blank" title="Montagne d'Ambre"><img src="http://img521.imageshack.us/img521/5669/montagne20d27ambre.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=monument20place20mauric.jpg" target="_blank" title="Monument place Mauriès"><img src="http://img521.imageshack.us/img521/465/monument20place20mauric.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=nasses20de20pc3aacheur.jpg" target="_blank" title="Nasses de pêcheur"><img src="http://img521.imageshack.us/img521/7804/nasses20de20pc3aacheur.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=porte20arabe.jpg" target="_blank" title="Porte arabe"><img src="http://img521.imageshack.us/img521/2418/porte20arabe.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=porteuses20d27eau.jpg" target="_blank" title="Porteuses d'eau"><img src="http://img521.imageshack.us/img521/5084/porteuses20d27eau.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=rivic3a8re20cc3b4te20es.jpg" target="_blank" title="Rivière côte Est"><img src="http://img521.imageshack.us/img521/4920/rivic3a8re20cc3b4te20es.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=tanay.jpg" target="_blank" title="Tana"><img src="http://img521.imageshack.us/img521/5659/tanay.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=tana20palais20de20la20r.jpg" target="_blank" title="Tana Palais de la Reine"><img src="http://img521.imageshack.us/img521/9747/tana20palais20de20la20r.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=tana20vue20est.jpg" target="_blank" title="Tana vue Est"><img src="http://img521.imageshack.us/img521/6954/tana20vue20est.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=tsialana.jpg" target="_blank" title="Tana vue Est"><img src="http://img521.imageshack.us/img521/658/tsialana.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a><br /><br /><span class="Apple-style-span" style="font-style: italic;">The lighthouse is still there, but I think the "Monument place Mauriès" has been destroyed because it was some kind of colonial praise building, I really can't remember having seen this thing during the time I've been living there. The bridge of the Betsiboka river had been almost destroyed in the political crisis in 2002, but is still working great today. Sadly, the harbor of Mahajanga is a joke nowadays. A friend told me that you can still the the remains of those big cranes.</span><br /><br /><a href="http://img521.imageshack.us/my.php?image=baobab20en201898.jpg" target="_blank" title="Baobab en 1898"><img src="http://img521.imageshack.us/img521/4040/baobab20en201898.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=baobab20en201903.jpg" target="_blank" title="Baobab en 1903"><img src="http://img521.imageshack.us/img521/4049/baobab20en201903.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=boeufs20montc3a9s.jpg" target="_blank" title="Boeufs montés"><img src="http://img521.imageshack.us/img521/6350/boeufs20montc3a9s.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=constructions20autour20.jpg" target="_blank" title="Constructions autour du marché"><img src="http://img521.imageshack.us/img521/2503/constructions20autour20.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=embarcadc3a8re20pointe2.jpg" target="_blank" title="Embarcadère pointe de sable"><img src="http://img521.imageshack.us/img521/7201/embarcadc3a8re20pointe2.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0028c.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/5885/img0028c.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=img0031ima.jpg" target="_blank"><img src="http://img521.imageshack.us/img521/8557/img0031ima.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=jeunes20filles.jpg" target="_blank" title="Jeunes filles"><img src="http://img521.imageshack.us/img521/1229/jeunes20filles.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=la20rc3a9sidence.jpg" target="_blank" title="La Résidence"><img src="http://img521.imageshack.us/img521/6728/la20rc3a9sidence.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=la20rade.jpg" target="_blank" title="La rade"><img src="http://img521.imageshack.us/img521/8105/la20rade.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=le20marchc3a920en201903.jpg" target="_blank" title="Le marché en 1903"><img src="http://img521.imageshack.us/img521/6530/le20marchc3a920en201903.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=le20port.jpg" target="_blank" title="Le port"><img src="http://img521.imageshack.us/img521/7497/le20port.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a><br /><br /><div><span class="Apple-style-span" style="font-style: italic;">Here again the market hall with so much space around it. No street, no "Tobany", no "pharmacie", just a wide empty field. The building on the photo "La Résidence" has heavily changed and is much bigger today... but uglier in my opinion and has ridiculous christmas lighting attached everywhere. The entry is now closed and moved to the left side. Personally, I prefer the first photo. It shows the old baobab in 1898, without a traffic circle around it. Well, don't ask me where "La rade" is. Doesn't seem to exist anymore.</span></div><br /><br /><a href="http://img35.imageshack.us/i/majunga7ruedurovar.jpg/" target="_blank" title="Rue du Rova"><img src="http://img35.imageshack.us/img35/3030/majunga7ruedurovar.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img9.imageshack.us/i/majunga15bvdpoincarr.jpg/" target="_blank" title="Boulevard Poincaré"><img src="http://img9.imageshack.us/img9/5454/majunga15bvdpoincarr.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img9.imageshack.us/i/majunga15letrsorr.jpg/" target="_blank" title="Le Trésor"><img src="http://img9.imageshack.us/img9/8206/majunga15letrsorr.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img9.imageshack.us/i/majunga18collalr.jpg/" target="_blank" title="Collection A. LeFranc"><img src="http://img9.imageshack.us/img9/704/majunga18collalr.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img9.imageshack.us/i/majunga26lemarchr.jpg/" target="_blank" title="Le Marché"><img src="http://img9.imageshack.us/img9/1636/majunga26lemarchr.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img9.imageshack.us/i/majunga49jourdecourrier.jpg/" target="_blank" title="Jour de Courrier"><img src="http://img9.imageshack.us/img9/2884/majunga49jourdecourrier.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img179.imageshack.us/i/majunga71laplager.jpg/" target="_blank" title="La Plage"><img src="http://img179.imageshack.us/img179/9191/majunga71laplager.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img40.imageshack.us/i/majunga20vu20du20rova.jpg/" target="_blank" title="Vu du Rova"><img src="http://img40.imageshack.us/img40/5071/majunga20vu20du20rova.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img40.imageshack.us/i/march20aux20poteries.jpg/" target="_blank" title="Marché aux poteries"><img src="http://img40.imageshack.us/img40/4919/march20aux20poteries.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img40.imageshack.us/i/marchands20de20riz.jpg/" target="_blank" title="Marchands de riz"><img src="http://img40.imageshack.us/img40/4848/marchands20de20riz.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img40.imageshack.us/i/marchands20indiens.jpg/" target="_blank" title="Marchands indiens"><img src="http://img40.imageshack.us/img40/3912/marchands20indiens.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img40.imageshack.us/i/mess20de20la20lgion.jpg/" target="_blank" title="Mess de la Légion"><img src="http://img40.imageshack.us/img40/1467/mess20de20la20lgion.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img36.imageshack.us/i/monument20aux20morts.jpg/" target="_blank" title="Monuments aux morts"><img src="http://img36.imageshack.us/img36/6192/monument20aux20morts.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a><br /><br /><span class="Apple-style-span" style="font-style: italic;">The first image is nice. I think it shows the street near "Maison Akbar" (in the back) with the Parad'ice and Patel Hotel to the left and the university on the right side. Boulevard Poincaré looks interesting, but I was unable to figure out where it is; I think it's in front of the Alliance Française, at the coast line but I'm not sure at all. "Le Trésor" is also very interesting. I suggest this building doesn't exist anymore. Even the newest (near the tribunal) just got replaced by a construction site. Nice view on the photo "La Plage" - should be the Piscine Hotel today. Where is or was the the place described as "Camp Bostany"? I've really no idea. Could it be the "Bloc Administrative"?</span><br /><br /><a href="http://img357.imageshack.us/i/place20mauris201.jpg/" target="_blank" title="Place Mauriès 1"><img src="http://img357.imageshack.us/img357/3839/place20mauris201.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img189.imageshack.us/i/place20mauris202.jpg/" target="_blank" title="Place Mauriès 2"><img src="http://img189.imageshack.us/img189/782/place20mauris202.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img189.imageshack.us/i/place20mauris203.jpg/" target="_blank" title="Place Mauriès 3"><img src="http://img189.imageshack.us/img189/9207/place20mauris203.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img37.imageshack.us/i/port20aux20boutres200.jpg/" target="_blank" title="Port aux boutres"><img src="http://img37.imageshack.us/img37/7428/port20aux20boutres200.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img37.imageshack.us/i/quai20orsini201.jpg/" target="_blank" title="Quai Orsini 1"><img src="http://img37.imageshack.us/img37/6059/quai20orsini201.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img37.imageshack.us/i/quai20orsini202.jpg/" target="_blank" title="Quai Orsini 2"><img src="http://img37.imageshack.us/img37/6811/quai20orsini202.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img13.imageshack.us/i/sousmarin.jpg/" target="_blank" title="Sous-marin"><img src="http://img13.imageshack.us/img13/5616/sousmarin.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a> <a href="http://img13.imageshack.us/i/vieux20port.jpg/" target="_blank" title="Vieux port"><img src="http://img13.imageshack.us/img13/1594/vieux20port.th.jpg" border="0" alt="Free Image Hosting at www.ImageShack.us" /></a><br /><br /><span class="Apple-style-span" style="font-style: italic;">Place Mauriès looks interesting. On the first image one can clearly see the "Bazary Be", the second shows a big place (which can be seen in several other photos of my postings) with a monument, which has been surely destroyed meanwhile.</span><br /><br />Beautiful photos. More to come in part three.</div>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-33163290410280830612009-06-02T14:56:00.005+03:002010-01-05T17:30:23.249+03:00rsdl v1.1Here comes the next version of my cool Rapidshare download tool for the bash command line. It works out of the box on most Linux distributions and on Macintosh.<br /><br /><a href="http://141.45.21.33/%7Ewittus/rsdl/rsdl-1.1.tar.bz2">Download</a> <a href="http://141.45.21.33/%7Ewittus/rsdl/rsdl-1.1.tar.bz2.md5"><span style="font-size:78%;">(md5)</span></a> <span style="color: rgb(204, 0, 0);">// Update January 2010: Mirror is down at the moment. Sorry.</span><br /><br />Make sure to have read<a href="http://wittus.blogspot.com/2009/03/rsdl.html"> my previous post on rsdl</a>. This is basically a bugfix release, the following things have been done:<br /><ul><li>Many bugfixes</li><li>Temporary files get stored in /tmp now</li><li>Output fits better into the terminal</li><li>Time gets counted down</li><li>rsdl won't overwrite files</li><li>More error checks for Rapidshare (file deleted/server busy and so on)</li></ul><div>PS: There seems to be a similiar tool for premium users of Rapidshare which goes by the same name, <a href="http://code.google.com/p/rsdl/">rsdl</a>.</div>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-9295317098487269162009-05-29T22:28:00.005+03:002009-05-30T10:31:07.665+03:00Howto boot the Damn Small Linux ISO from hard disk with GrubJust this evening I wanted to install <a href="http://www.damnsmalllinux.org/">Damn Small Linux</a> on one of my computers. But I had no more blank CDs left, so I searched for a way to boot the ISO from hard disk with GRUB, as Xubuntu was already installed on the machine. Well I found a lot of crap and nothing worked for me. I really think that <span style="font-style: italic;">there is no quick and easy solution</span>. I tried a few things out and came out with the following way:<br /><br /><ul><li>At first, you need some extra space on your hard disk. If you want to install DSL it would be better to boot off an other partition, too. I used my 512MB swap partition for that purpose, but I think that also a little more than 50MB are already enough for DSL.</li></ul><ul><li>Boot into some Linux system of your choice, this could even be Knoppix from CD. Then, execute carefully <span style="color: rgb(204, 0, 0);">(!!)</span> the following steps:</li></ul><ol><li>Make sure that your swap partition isn't in use. (<span style="color: rgb(51, 102, 255);">swapon -s, swapoff <span style="color: rgb(51, 204, 0);">/dev/hdXX</span></span>)</li><li>Change the type of the swap partition to <span style="color: rgb(0, 153, 0);">0x83</span> with <span style="color: rgb(51, 102, 255);">fdisk</span>.</li><li>Use mkfs.ext2 to create a new file system<span style="color: rgb(51, 102, 255);"></span> on your old swap partition. (<span style="color: rgb(51, 102, 255);">mkfs.ext2 <span style="color: rgb(0, 153, 0);">/dev/hdXX</span></span>)</li><li>Mount your new ext2 partition (<span style="color: rgb(51, 102, 255);">mount <span style="color: rgb(0, 153, 0);">/dev/hdXX /somefolder</span></span>)</li><li>Mount the DSL ISO to some folder. (<span style="color: rgb(51, 102, 255);">mount <span style="color: rgb(0, 153, 0);">dsl.iso /someotherfolder</span> -o loop</span>)</li><li>Copy the contents of the ISO to your new ext2 partition. (<span style="color: rgb(51, 102, 255);">cp -R <span style="color: rgb(0, 153, 0);">/someotherfolder/* /somefolder</span></span>)</li></ol>Maybe this works also without the need for another partition, but I preferred to go the safe way.<br /><ul><li>Now you'll need Grub. Reboot. I had to press 'ESC' to get into the Grub menu when starting Xubuntu. Go into Command Mode with 'c', then execute the following commands:</li></ul><ol><li>root (hd0,2) <span style="color: rgb(153, 153, 153);"># hd</span><span style="color: rgb(204, 0, 0);">0</span><span style="color: rgb(153, 153, 153);">,</span><span style="color: rgb(204, 51, 204);">2</span><span style="color: rgb(153, 153, 153);"> was my old swap partition; that is /dev/hd</span><span style="color: rgb(204, 0, 0);">a</span><span style="color: rgb(204, 51, 204);">3</span></li><li>kernel /boot/isolinux/kernel24 <span style="color: rgb(153, 153, 153);"># So <span style="color: rgb(0, 153, 0);">/</span> would be the root of the DSL ISO</span><br /></li><li>initrd /boot/isolinux/minirt24.gz</li><li>boot</li></ol>Now, if you're lucky you'll see the DSL ASCII logo after you hit return. I think that this would work also pretty good for Knoppix, haven't tested it though. Hope this helps a bit!Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-704427542314032322009-05-28T11:00:00.016+03:002009-07-09T12:46:24.246+03:00Ancient photos of Mahajanga, Madagascar - Part One<div style="text-align: left;">During the last 2 weeks, I had been working voluntary for a little aid organisation. When I was about to leave Mahajanga as everything was done, I was waiting for my "Taxi Brousse" in an Internet Café from one of my friends. Whilst being bored and "surfing" trough the public folders of other clients, who have downloaded stuff some day from the net and leaved it on the computer I was sitting on, I stumbled upon an indubitable interesting collection of very old photographs of the district of Mahajanga. If you want to see some pictures of today, you may visit <a href="http://wittus.deviantart.com/gallery/">my deviantArt gallery</a> or simply Google for "Mahajanga" or "Majunga".<br /><br />Of course I copied all files onto my MP3 player. For me, it was beyond question that I would simply leave this treasure on my personal computer, waiting for the next HDD crash to come. So at the beginning I thought that it would probably the best thing to upload them all to the "Wikimedia Commons". But, although the authors of these photographs are defintively dead since a long time, I wasn't still 100% sure about the copyright issue. It is impossible for me to mention the author of some of these photos.<br /><br />I simply found them on a public computer. For some of them I don't know who made them, I don't even know who has scanned them. Probably most of them would get quickly deleted at Wikimedia, therefore I decided to put them into my blog, with the notice that I would delete them immediately as soon as somebody claims and proves his personal rights on these photos - apart from that I don't see any reason at all why I should detain them. The only modification I've done to the original files was to remove some annoying white borders.<br /><br /><span style="font-style: italic;">Here we go</span>:<br /><br /><br /><a href="http://img521.imageshack.us/my.php?image=inauguration20aeroport2.jpg" target="_blank" title="Inauguration Aeroport de Majunga"><img src="http://img521.imageshack.us/img521/8567/inauguration20aeroport2.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=inauguration20lycc3a9e2.jpg" target="_blank" title="Inauguration Lycée Ph. Tsiranana"><img src="http://img503.imageshack.us/img503/3516/inauguration20lycc3a9e2.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=la20rade20de20majunga.jpg" target="_blank" title="La rade de Majunga"><img src="http://img503.imageshack.us/img503/1524/la20rade20de20majunga.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=le20port20aux20boutres2.jpg" target="_blank" title="Le port aux boutres 1"><img src="http://img503.imageshack.us/img503/1094/le20port20aux20boutres2.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=le20port20aux20boutres2c.jpg" target="_blank" title="Le port aux boutres 2"><img src="http://img503.imageshack.us/img503/1239/le20port20aux20boutres2c.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=nouvelle20citc3a920indi.jpg" target="_blank" title="Nouvelle cité indigène"><img src="http://img503.imageshack.us/img503/716/nouvelle20citc3a920indi.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=pont20sur20la20betsibok.jpg" target="_blank" title="Pont sur la Betsiboka"><img src="http://img503.imageshack.us/img503/8791/pont20sur20la20betsibok.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img503.imageshack.us/my.php?image=quartier20arabe20de20ma.jpg" target="_blank" title="Quartier arabe de Majunga"><img src="http://img503.imageshack.us/img503/2196/quartier20arabe20de20ma.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=vue20aerienne.jpg" target="_blank" title="Vue aerienne"><img src="http://img521.imageshack.us/img521/7152/vue20aerienne.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img521.imageshack.us/my.php?image=vue20aerienne202.jpg" target="_blank" title="Vue aerienne 2"><img src="http://img521.imageshack.us/img521/9672/vue20aerienne202.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a><br /><br /><span style="font-style: italic;">As there isn't anything written down on these photos, the file names are the only description which is left for me. Neither is there any date mentioned. I guess they've been all made in the 50's, because the second photo was made in 1956 (inauguration of the secondary school "Philbert Tsiranana").</span><br /><br /><span style="font-style: italic;">Continued</span>:<br /><br /><a href="http://img140.imageshack.us/my.php?image=220novembre.jpg" target="_blank" title="2 Novembre"><img src="http://img140.imageshack.us/img140/5450/220novembre.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=camp20des20sc3a9nc3a9ga.jpg" target="_blank" title="Camp des Sénégalais"><img src="http://img140.imageshack.us/img140/5448/camp20des20sc3a9nc3a9ga.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=comptoir20national20d27.jpg" target="_blank" title="Comptoir National d'Escompte"><img src="http://img140.imageshack.us/img140/360/comptoir20national20d27.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=le20baobab20de20majunga.jpg" target="_blank" title="Le baobab de Majunga le 6 dec 1926"><img src="http://img140.imageshack.us/img140/217/le20baobab20de20majunga.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=corniche201962.jpg" target="_blank" title="Corniche 1962"><img src="http://img140.imageshack.us/img140/248/corniche201962.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=course20aux20sadjoas.jpg" target="_blank" title="Course aux Sadjoas"><img src="http://img140.imageshack.us/img140/1446/course20aux20sadjoas.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=hotel20de20l27administr.jpg" target="_blank" title="Hotel de l'Administrateur en chef"><img src="http://img140.imageshack.us/img140/2057/hotel20de20l27administr.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=le20bazar20be.jpg" target="_blank" title="Le bazar be"><img src="http://img140.imageshack.us/img140/3797/le20bazar20be.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=les20nouveaux20quais.jpg" target="_blank" title="Les nouveaux quais"><img src="http://img140.imageshack.us/img140/6177/les20nouveaux20quais.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=pirogues20sakalava.jpg" target="_blank" title="Pirogues sakalava"><img src="http://img140.imageshack.us/img140/1923/pirogues20sakalava.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img140.imageshack.us/my.php?image=place20mauric3a8s.jpg" target="_blank" title="Place Mauriès"><img src="http://img140.imageshack.us/img140/7206/place20mauric3a8s.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=port20aux20boutres.jpg" target="_blank" title="Port aux boutres"><img src="http://img242.imageshack.us/img242/453/port20aux20boutres.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=port20aux20boutres202.jpg" target="_blank" title="Port aux boutres 2"><img src="http://img242.imageshack.us/img242/5774/port20aux20boutres202.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=port20aux20boutres203.jpg" target="_blank" title="Port aux boutres 3"><img src="http://img242.imageshack.us/img242/791/port20aux20boutres203.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=quai20orsini.jpg" target="_blank" title="Quai Orsini"><img src="http://img242.imageshack.us/img242/3492/quai20orsini.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=rue20de20la20marine.jpg" target="_blank" title="Rue de la Marine"><img src="http://img242.imageshack.us/img242/4415/rue20de20la20marine.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=rue20du20commerce201.jpg" target="_blank" title="Rue du commerce 1"><img src="http://img242.imageshack.us/img242/9677/rue20du20commerce201.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=rue20du20commerce202.jpg" target="_blank" title="Rue du commerce 2"><img src="http://img242.imageshack.us/img242/1710/rue20du20commerce202.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=rue20du20rova.jpg" target="_blank" title="Rue du Rova"><img src="http://img242.imageshack.us/img242/2321/rue20du20rova.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img242.imageshack.us/my.php?image=rue20indienne.jpg" target="_blank" title="Rue indienne"><img src="http://img242.imageshack.us/img242/329/rue20indienne.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=tamtamboeuf.jpg" target="_blank" title="Tam-tam-boeuf"><img src="http://img297.imageshack.us/img297/4931/tamtamboeuf.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=tananarive201958.jpg" target="_blank" title="Tananarive 1958"><img src="http://img297.imageshack.us/img297/1312/tananarive201958.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=transport20de20bananes.jpg" target="_blank" title="Transport de bananes"><img src="http://img297.imageshack.us/img297/1736/transport20de20bananes.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=tribunal.jpg" target="_blank" title="Tribunal"><img src="http://img297.imageshack.us/img297/5253/tribunal.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=village20indigc3a8ne202.jpg" target="_blank" title="Village indigène 2"><img src="http://img297.imageshack.us/img297/3015/village20indigc3a8ne202.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=village20indigc3a8ne.jpg" target="_blank" title="Village indigène"><img src="http://img297.imageshack.us/img297/343/village20indigc3a8ne.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=village20indigc3a8ne203.jpg" target="_blank" title="Village indigène 3"><img src="http://img297.imageshack.us/img297/231/village20indigc3a8ne203.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a> <a href="http://img297.imageshack.us/my.php?image=vu20du20rova.jpg" target="_blank" title="Vu du Rova"><img src="http://img297.imageshack.us/img297/254/vu20du20rova.th.jpg" alt="Free Image Hosting at www.ImageShack.us" border="0" /></a><br /><br /><span style="font-style: italic;">Now these are a bit more interesting. Some of these photos must have been made between 1890 and 1910 or earlier. Funny to see that the "Tribunal" and the "Bazary Be" are still exactly the same buildings today in 2009, with the tiny exception that they're heavily damaged and shabby. Unless I'm very much mistaken, the "Comptoir National d'Escompte de Paris" is now a little nightclub in the ground floor, and a bar for prostitutes and strangers in the first floor.</span><span style="font-style: italic;"> The street on the picture "Les nouveaux quais" looks still almost exactly the same, too. In march 2004, <a href="http://en.wikipedia.org/wiki/Cyclone_Gafilo">Cyclone Gafilo</a> destroyed the <a href="http://wittus.deviantart.com/art/le-bord-6936448">lovely promenade</a> on the photo "Corniche 1962", which then had been <a href="http://wittus.deviantart.com/art/Gafilo-Reparations-16893520">completely replaced</a> by the European Union with a new one which is even more beautiful and very robust.</span><br /><br />Putting all these photos on-line is a real bunch of work (especially with my current internet connection), that's why I'll take a little break now and upload <a href="http://wittus.blogspot.com/2009/05/ancient-photos-of-mahajanga-madagascar_30.html">more photos</a> in a few days.<br /></div>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com1tag:blogger.com,1999:blog-12120437.post-86381008400416024262009-05-08T17:04:00.003+03:002009-05-08T19:11:10.563+03:00EncryptionPrivatsphäre in Deutschland wird mit jeden Tag ein wenig mehr dezimiert; im Austausch dafür gibt es mehr Zensur und Kontrolle. Deshalb bitte ich jeden der das liest: <a href="http://www.gpg4win.de/">Verschlüsselt</a> <a href="http://www.gpg4win.org/handbuecher/einsteiger.html">Eure</a> <a href="http://www.erweiterungen.de/detail/Enigmail/">Kommunikationswege</a>. Umso mehr davon, desto besser. Denn alles was mühsam entschlüsselt werden muss (wenn sie überhaupt dazu fähig sind, was ich sehr stark bezweifle) erschwert ihnen die Suche nach wirklich relevanten Informationen. Ich habe bisher mindestens drei Leute erfolgreich überzeugen können, wenigstens einen Teil ihrer Online-Kommunikation zu chiffrieren. Vergesst nicht, dass heutzutage nicht nur <a href="http://www.schneier.com/essay-261.html">nichts gelöscht wird</a>, sondern, dass fast immer noch alles <span style="font-weight: bold;">unverschlüsselt</span> übertragen wird; insbesondere der <a href="http://bloghouse.org/de/messenger-nachrichten-verschluesseln">Messengerkram</a>. Bei der derzeitigen, politischen Lage ist es nur eine Frage der Zeit bis in unserem Überwachungsstaat Deutschland der Traffic ganz und gar über das Netz des BKA geroutet wird.<br /><br /><span style="font-style: italic;">"Hütet Euch vor <a href="http://www.heise.de/newsticker/Zypries-wirft-Google-Urheberrechtsverstoesse-im-grossen-Stil-vor--/meldung/137454">denen</a>, die Euch den Informationszugang verweigern, denn in ihren Herzen träumen sie davon, Euch zu beherrschen."</span>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-2374831672511375932009-04-27T20:21:00.006+03:002009-05-08T16:49:31.839+03:00SpeicherfrustSeit Monaten schlug ich mich herum mit einem äußerst nervigen Computerproblem, bis heute. Die Rede ist von meinem Gentoo, das sich aufhing sobald ich zuviel RAM belegt hatte. Ich konnte kein Swap verwenden; der Grund dafür ist, dass mein Mainboard (vermutlich aufgrund von starken Temperaturschwankungen in einer der heißeren Regionen Madagaskars) völlig hinüber ist. Durch den defekten DMA Controller bin ich gezwungen alle Geräte im <a href="http://de.wikipedia.org/wiki/Programmed_Input/Output">PIO Modus</a> anzusprechen, was das System natürlich enorm ausbremst da die CPU Last bei jedem Zugriff auf 100% schnellt.<br /><br />Firefox ist ein einziger RAM-Fresser; da konnte es schon mal passieren, dass man eine Anwendung zuviel öffnete und schwups passierte es: Das System griff auf die Festplatte zu wie wild, Musik im Hintergrund fing an zu stocken, der Mauszeiger reagierte kaum noch - bis schließlich so ziemlich alles völlig zum erliegen kam. Kein Login von außen möglich. Mein einziger Ausweg war damals der kalte Reboot, da ich keine rettende Lösung kannte (außer aufzupassen dass der Speicherverbrauch nicht ein gewisses Maximum überschreitet).<br /><br />Anfangs noch dachte ich, es läge ganz einfach an der Auslagerungsfunktion vom Kernel. Also, dass, sobald der RAM voll ist, er jede Menge Daten auf die Swap-Partition schaufelt (was ja eh schon langsam ist), und diese Aktion durch den lahmen PIO Modus alles Andere blockiert. Das erschien mir logisch woraufhin ich by-all-means versuchte diesen Mechanismus zu deaktivieren, was mir einfach nicht gelingen wollte. Zuallererst probierte ich es, mit <span style="color: rgb(51, 102, 255);">swapoff</span>, zu deaktivieren, kommentierte dann nachträglich den Eintrag für die Swap-Partition in <span style="color: rgb(51, 102, 255);">/etc/fstab</span> aus; ich setzte den <a href="http://en.wikipedia.org/wiki/Sysctl">sysctl</a> Wert <span style="color: rgb(51, 102, 255);">vm.swappiness</span> auf null; ja, ich entfernte sogar letztendlich das Kernelmodul.<br /><br />Es half alles nix. Der RAM war voll, und die Festplatte fing an zu rattern. Warum?? Ich fand keine Lösung. Irgendwann fand ich heraus, dass der Kernel ja eigentlich noch prächtig reagierte. Denn mit dem <a href="http://de.wikipedia.org/wiki/Magische_S-Abf-Taste">SysRq Key</a> konnte ich erfolgreich den Schaden begrenzen und das System vernünftigen neustarten - später, nach erneuter Recherche, dann sogar lediglich die aktuelle X Session killen und mich neu einloggen. Trotzdem waren alle Programme zu, und die Arbeit teilweise verloren.<br /><br />Heute, als ich Doxygen kompilieren wollte und mir das Debakel 5 Mal am Stück passierte, versuchte ich mich wieder einmal daran, diesem merkwürdigen Festplattenzugriff auf die Spur zu kommen. Manchmal sah man ja anhand von <span style="font-style: italic;">dmesg</span>, dass der Kernel tatsächlich ein Programm ausgewählt und terminiert hatte aufgrund einer out-of-memory condition; das passierte aber viel zu selten - und wenn, dann auch erst nach einer halben Ewigkeit. Da jegliches Swapping vom Kernel bereits entfernt war brauchte ich dort nicht mehr suchen. Stattdessen nahm ich mir vor jede einzelne vm-Variable von sysctl zu überprüfen und wurde sehr schnell fündig. Des Pudels kern liegt im ausgetüftelten Speichermanagement von Linux.<br /><br /><a href="http://hep.kbfi.ee/index.php/IT/KernelTuning">Hier</a> kann man den relevanten Part nachlesen (er beschreibt sogar fast dasselbe desaströse Verhalten im Abschnitt "<span style="font-style: italic;">Kernel virtual memory management</span>"). Der Kernel vergibt nämlich allerhand Speicher, den er gar nicht hat, da er weiß, dass die meisten Programme gefräßige Monster sind. Dieses Zusammenspiel ist normalerweise kein Problem - auf meinem System jedoch, schon. Wieviel er sich dabei extra herausnimmt wird mit der sysctl Variable <span style="color: rgb(51, 102, 255);">vm.overcommit_ratio</span> festgelegt. Einmal auf 0 (% extra) gesetzt, gab es keine Probleme mehr. Ein geeigneter Task wurde beim Testlauf mit Gimp (und riesigen Bildern) sofort vom Kernel ausgewählt und gekillt...<br /><br />Cool!<br /><br />Nachtrag: Es ist nicht so einfach wie ich mir das vorgestellt hatte, es passiert nämlich immernoch: Der <span style="font-style: italic;">kswapd</span> blockiert das ganze System (selbst Tasks die mit nice -20 laufen) und die CPU befindet sich 90% der Zeit in Wartestellung. Also forschte ich weiter und <a href="http://www.linuxinsight.com/proc_sys_vm_hierarchy.html">fand heraus</a>, dass sich mit der Variable <span style="color: rgb(51, 102, 255);">vm.overcommit_memory</span> das Grenzverhalten einstellen lässt. Ist sie gleich null werden heuristische Verfahren angewendet, die abwägen, ob Anwendungen getötet werden müssen oder nicht. Bei dem Wert 2, wird konsequenter vorgegangen - das kann allerdings gefährlich werden wenn <span style="color: rgb(51, 102, 255);">vm.overcommit_ratio</span> null ist: Denn dann kann keine Anwendung mehr auf dem gesamten System Speicher reservieren, noch nicht mal <span style="font-style: italic;">init</span>. Aber selbst mit der harten Einstellung kann es immer noch manchmal vorkommen, dass sich das System zu Tode kswapd't. Wer mehr Informationen dazu hat, bitte kommentieren ;-)<br /><br />Nachtrag: Nach längerem Testen habe ich mich nun dazu entschlossen, meine Swap Partitionen wieder anzuschalten. Dabei kann man auch denen, die eine schnellere Zugriffsgeschwindigkeit besitzen, ganz einfach eine höhere Priorität geben als den Anderen. Diese Lösung ist tatsächlich empfehlenswerter, als das Swapping komplett auszuschalten - denn der wundersame, unaufhörliche Festplattenzugriff des <span style="font-style: italic;">kswapd</span>, der das ganze System zu Tode blockiert, ist nämlich viel, viel schlimmer als im langsamen PIO Modus auszulagern. Mit dem <span style="font-style: italic;">deadline scheduler</span> des Kernels lässt sich das auch noch ganz gut ertragen.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-24034434305676285512009-04-20T15:13:00.005+03:002009-04-20T16:53:23.292+03:00Verborgene WeisheitenIch bin heute zufällig über den Wikipedia Artikel "<a href="http://de.wikipedia.org/wiki/Molotowcocktail">Molotowcocktail</a>" gestolpert und als ich mir die hitzige Diskussion über die deutsche Rechtslage zu Bombenbauanleitungen durchlas, wurde mir klar, dass es in der Wikipedia noch weitaus mehr Informationen gibt, als man als Deutscher eigentlich sehen soll. Streitpunkt ist in diesem Fall das deutsche Waffenrecht.<br /><br />Mal abgesehen davon, dass hier ganz klar ersichtlich (zu Unrecht!) deutsche Gesetze auf Österreicher und Schweizer Bürger angewendet werden (obwohl übrigens sogar im Duden die Bestandteile erklärt werden) wird hier das deutsche Volk mal wieder bevormundet (oder bevormundet sich selbst). Zumindest in seiner eigenen Sprache, denn in manch anderer Sprachversion des Artikels wird daraus überhaupt kein Hehl gemacht.<br /><br />Die Französische z.B., ist ja schon recht aufschlussreich, aber die russische Variante kann ich nur empfehlen. Oh Gott, mache ich mich jetzt Strafbar wenn ich sie verlinke? Ja! Denn ich bin für meine Links verantwortlich. Das gilt übrigens auch für die Wikipedia selbst - leider haben die Admins gegen die vielen Bots überhaupt keine Chance (irgendwann hat man es scheinbar sein lassen; ist über-indizierte-Literatur-sprechen eigentlich auch Strafbar?). Also:<br /><br />1) Auf die russische Version des Wikipedia Artikels gehen.<br />2) Link kopieren<br />3) Link einfügen bei translate.google.com<br />4) All die grausamen Details erfahren<br /><br />Bei deutschen Gesetzen bekomme ich jedes Mal einen Würgekrampf. Was soll der Scheiß? Das ist <span style="font-weight:bold;">Wissen</span>. Warum sollte man das verbieten? Vielleicht brauchen wir das ja noch mal irgendwann. Und wenn schon, liebe Politiker, dann am besten gleich richtig. Also bitte auch den Artikel über Schwarzpulver löschen und Chemieunterricht verbieten. Affen! Na egal; diese senilen, weltfremden Schauspieler werden letztendlich eh keine Chance haben. In nicht allzu langer Zeit werden wir ganze Exabyte auf die Größe eines Fingernagels packen können und dann ist es eh bald endgültig <a href="http://de.wikipedia.org/wiki/Streisand-Effekt">vorbei</a> mit der Zensur.<br /><br />Hier mal ein paar Beispiele von brutalem Vandalismus, mit dem die Aufpasser tagtäglich zu kämpfen haben:<br /><br />- <a href="http://de.wikipedia.org/w/index.php?title=Molotowcocktail&diff=33554250&oldid=33551328">Verrückt, was die Leute mit Wunderkerzen so alles anstellen...</a><br />- <a href="http://de.wikipedia.org/w/index.php?title=Molotowcocktail&diff=42899895&oldid=42899866">Öl als Bindemittel eingesetzt?? Wie fies!</a><br />- <a href="http://de.wikipedia.org/w/index.php?title=Molotowcocktail&diff=4481827&oldid=4481780">Huiuiui... na zum Glück wurde dieser Artikel rechtzeitig entschärft!</a><br /><br />Einfach mal die Früheren Versionen durchstöbern. Manche hatten zwar gefordert auch diese zu verbren... ähhm zu löschen, allerdings wurde dies leider versäumt (- und wenn schon, es kommen permanent neue, unerwünschte Einträge hinzu).<br /><br />Ach ja, und nicht vergessen: Wenn man irgendwann mal in die dumme Situation kommen sollte, mit so einer verbotenen Waffe einem feindlichen Panzer zu begegnen, dann immer schön auf die Lufteinzugsschächte des Motors werfen, denn davon explodiert der Tank. Hab' ich auf Wikipedia gelesen...Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-11335060869403009122009-04-06T03:36:00.009+03:002009-04-20T16:56:40.031+03:00Volksgehirnwäsche!Auch wenn <a href="http://madagaskar-blog.malala-madagascar.net/2009/04/deutschland-ist-weder-souveraen-noch-unabhaengig-noch-frei/">manche</a> der Ansicht sind, dass ja <a href="http://www.boston.com/bigpicture/2009/04/protests_at_the_g20_summit.html">alles dermaßen Scheiße</a> ist, bin ich froh, ein Deutscher zu sein, frei zu sein, beliebig umher reisen zu können, und meine Meinung sagen zu dürfen, solange selbstverständlich alles im Rahmen der Verfassung bleibt. Ich weiß bescheid über unsere Probleme, unseren aktuellen Diskussionen über sog. potentielle Gefährder, Internetzensur, Überwachung usw. - und trotzdem! Meine Meinung, nämlich Politiker seien Schweine, steht mir gänzlich frei, hier, öffentlich zu machen. Viele Andere haben dieses Privileg nicht. Obwohl ich eine ganze Reihe von Staaten nennen könnte, spreche ich aber speziell von einem Land, welches sich gerade erst vor kurzem wieder mal mit einem <a href="http://www.spiegel.de/politik/ausland/0,1518,617518,00.html">sensationell lächerlichem oder beeindruckend gefährlichem Auftritt</a>, nicht nur für die Medien, als böser Schurkenstaat geoutet hat. Nord Korea!<br /><br />Ein faszinierendes Land, welches in seiner bedrohlichen Art einzigartig ist. Durch Zufall stolperte ich im Netz über <a href="http://www.vbs.tv/video.php?id=1438428757">diese seltene "Dokumentation"</a> der dortigen Zustände. Ja, Zustände. Man kann das Ganze eigentlich nur noch mit einem einzigen Wort beschreiben: Irrsinn. Also, dass muss man sich mal überlegen. Da wird ein ganzes Land einer ständigen Gehirnwäsche unterzogen und ist völlig <a href="http://en.wikipedia.org/wiki/Internet_in_North_Korea">abgeschottet</a> vom Rest der Welt. Wie ist denn sowas heutzutage noch möglich?? Ich weiß es nicht. Aber es muss eine Kombination aus Unterdrückung, Verarsche und völliger (Gedanken-)Kontrolle über einfach alles sein. 1984 eben. Finanzieren lässt sich das Ganze ja anscheinend <a href="https://secure.wikileaks.org/wiki/CRS:_North_Korean_Counterfeiting_of_U.S._Currency%2C_April_16%2C_2008">doch recht einfach</a>. Ich frage mich ernsthaft was man tun könnte um einen Kontakt mit der Außenwelt aufzubauen, wenn man erstmal drin ist? Ich fürchte es ist, vor allem als Ausländer, gänzlich unmöglich.<br /><br />Nachdem ich mir die Doku angesehen hatte, mich in ein paar News der hiesigen Propaganda Maschinerie vertiefte, die mich übrigens sehr stark an <a href="http://anonym.to/?http://www.kcckp.net/de/news/news_view.php?0%2B17137">den</a> <a href="http://anonym.to/?http://www.kcckp.net/de/news/news_view.php?0%2B17277">Nazikram</a> sowie an <a href="http://anonym.to/?http://www.kcckp.net/de/news/news_view.php?0%2B17269">die</a> <a href="http://anonym.to/?http://www.kcckp.net/de/news/news_view.php?0%2B17270">DDR</a> erinnerte (jede Menge Sprachmanipulation), wollte ich eigentlich einen größeren Beitrag zu der ganzen Thematik schreiben. Aber mir fehlen bislang die Worte - am besten, man macht sich davon selbst ein Bild. Öffentlichen Ankündigungen sind in einem Stil geschrieben, als befände sich das Land im Krieg mit alles und jedem. Im Osten wusste ja jeder so ziemlich was abgeht, aber dort, in NK, müssen die Menschen wohl inzwischen wirklich hundertprozentig überzeugt davon sein, dass wir gefährliche Aggressoren sind. Was soll's. Irgendwann muss auch dieser eine Bastard sterben. Hoffen wir nur, dass er nicht "würdevoll" ersetzt wird, wie sein Vater einst.<br /><br />PS: <a href="http://maps.google.com/?ie=UTF8&ll=39.423659,125.934134&spn=0.001914,0.003455&t=h&z=18">Soviel</a> zu dem Argument, dass die meisten Google Bilder von Flugzeugen aufgenommen worden sind, ich glaube die Nordkoreaner hätten es ziemlich schnell vom Himmel geholt.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-14508922916856682009-03-19T13:30:00.005+03:002009-04-20T16:54:26.293+03:00Putsch in MadagaskarRajoelina hat sich vorgestern mit der Macht von wenigen (wenngleich, strategisch wichtigen) abtrünnigen Offizieren gewaltsam an die Spitze geputscht. Die internationalen Reaktionen sind, wie vorauszusehen war, Empörung und Inakzeptanz. Etliche Staaten warnen vor der Einreise nach Madagaskar und sehen zu, dass sie ihre Landsleute herausbekommen, Corsair fliegt schon gar nicht mehr her. TGV hat ein erstklassiges Terrorregime in Schwung gebracht. Erste Anzeichen dafür fand man vorher schon auf der Straße. Jetzt ist Rajoelina anscheinend nicht nur selbsternannter Präsident, nein, er ist <span style="font-style: italic;">defacto</span> Präsident - obwohl er das nach eigenen Angaben nie sein wollte, aber das war noch vor seinem zweifelhaften Erfolg. Sein Einzug in den Regierungssitz war von lächerlichem und mittelalterlichem Exorzismus und Beseitigung von satanistischen Flüchen seitens der "Mpiandry" begleitet. Frühere, politische Gegner haben nun nichts mehr zu lachen. Die Zeitungen berichten von Verhaftungen und menschenunwürdigen Folterungen.<br /><br />Ravalomanana hatte, eigentlich, schon lange nichts mehr zu melden - dafür hätte er viel früher reagieren müssen, seine Arroganz allerdings lies dies wiederum nicht zu. Seine engsten Berater und sein Kommandostab verrieten ihn am Ende. Letzterer landete zuerst <a href="http://www.youtube.com/watch?v=Zso8nT_cdss">in einem Kofferraum</a> und schließlich im Gefängnis von TGV. Der Präsident versuchte mit einer letzten Entscheidung aus Verzweifelung eine Führung auf militärischer Ebene einzuleiten. Diese neuen "Führer" allerdings übergaben mit fast sofortiger Wirkung ihre Macht an Rajoelina - was legal aber mal wieder nicht mit der Verfassung in Einklang zu stehen scheint, denn Artikel 52 der madagassischen Verfassung besagt, dass die Machtübergabe eines "Directoire Militaire" nur durch echte Wahlen vollzogen werden kann.<br /><br />Echte Wahlen und Verfassung waren freilich noch nie ein Hindernis, und so, dem internationalen Sturm trotzend, beharrt er auf seinen Plan und versucht sein desaströses Image wieder aufzuheitern indem er z.B. ein neues Krankenhaus bauen will. Das wird er brauchen wenn er für <strike>24</strike> 6 Monate (diese lange Zeitspanne wurde international verurteilt) "Präsident" sein will. <a href="http://madagaskar-blog.malala-madagascar.net/2009/03/ankuendigung-der-rueckkehr-von-didier-ratsiraka-nach-madagaskar/">Einige meinen</a>, dass danach wohl wieder der Ex-Schlächter Ratsiraka übernehmen wird. Währenddessen ruft er nun, wie Ravalomanana vorher auch, ebenfalls nach Investoren; Ich zweifele ernsthaft an seinen Chancen, denn er war es, der genau diese harte Arbeit seines Vorgängers in nur 3 Monaten irreparabel zunichte gemacht hat, nur um die Macht ansich zu reißen. Der Preis des Euros ist gestern Nacht schon mal schlagartig von ~2480 Ar auf 2608 Ar gestiegen. Die Zukunft Madagaskars sieht ohne Zweifel nachwievor düster aus.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com2tag:blogger.com,1999:blog-12120437.post-52130588997146356782009-03-18T22:04:00.004+03:002009-03-18T23:03:41.655+03:00Die ICQ UINVor etwa 2 Monaten beschwerte ich mich über Gamestar.de und erzählte nebenbei von einer Slashdot News, in der Google Forscher vor den Gefahren der systematischen Zusammenführung von Daten warnen, die man in Sozialen Netzwerken hinterlegt haben könnte.<br /><br />Von meinen Freunden in Deutschland nutzt so ziemlich jeder den AOL Dienst ICQ. In Brasilien z.B. setzt man hauptsächlich auf MSN - hier in Madagaskar ist der Yahoo Messenger das meist genutzte Chat-Werkzeug. Sowie bei MSN also auch bei Yahoo, meldet man sich ausschließlich (IIRC) mit seiner E-Mail Adresse an - bei ICQ jedoch, kann man noch zusätzlich eine sog. UIN verwenden. Und das tut auch jeder.<br /><br />Vor ein paar Tagen wurde mir klar, wie einzigartig und öffentlich diese Nummern eigentlich sind! Die Meinige ist 8 Stellen lang, und dabei bin ich schon seit bestimmt bald 10 Jahren registriert. Inzwischen ist man schon längst bei 9 Stellen angelangt. Wenn ich also z.B. 64362173 (8) bei Google eingebe, bekomme ich zwar noch 252 Treffer, wenn ich hingegen 124516235 (9) eingebe, sind's nur noch 71. Umso höher die Zahl wird, desto seltener wird sie.<br /><br />Viele Portale, Communities und sonstige Onlineangebote, welche die Möglichkeit bieten, ein 'eigenes Profil' zu erstellen, haben auch ein Feld für die ICQ Nummer. Selbst ganz normale PHP BB Foren; bei denen ist das Profil meistens dann auch öffentlich einsehbar. Um mal endlich auf den Punkt zu kommen: Es ist schlichtweg gefährlich diese Nummer überall hinzuschreiben. Man wird dadurch nämlich eindeutig identifizierbar im Internet.<br /><br />Man könnte jetzt natürlich sagen, dass die E-Mail Adresse doch einen viel einfacheren Startpunkt der Recherche darstellen würde. Viele 'User' sind allerdings inzwischen etwas vorsichtiger geworden und schreiben sie entweder gar nicht mehr hin, oder nur noch so etwas wie 'blah at blub dot com' was ich übrigens<span style="font-size:100%;"><span style="color: rgb(255, 0, 0);">¹</span></span> genauso strunz-dämlich finde! Aber darum geht es nicht. Es war (mir jedenfalls) bisher völlig selbstverständlich, dass ich meine Nummer überall hinschreibe. Das sollte ich wohl besser in Zukunft tunlichst unterlassen.<br /><br />Am besten mal selbst ausprobieren wie einfach man jemanden lediglich anhand seiner ICQ UIN im Internet "tracken" kann.<br /><br /><span style="font-size:78%;"><span style="color: rgb(255, 0, 0);">¹</span> </span><span style="font-size:78%;">Dieser einfache Reguläre Ausdruck: </span><span style="font-size:78%;"><span style="color: rgb(51, 102, 255);">s#<span style="color: rgb(0, 153, 0);">(\w+)\s?(at|@)\s?(\w+)\s?(dot|\.)\s?(com|de|fr|org)</span>#<span style="color: rgb(0, 153, 0);">$1\@$3\.$5</span>#</span> findet solche Adressen und stellt die richtige Form wieder her. Hab' ich in 2 Minuten geschrieben.</span>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-8889274526778899272009-03-14T19:22:00.011+03:002009-03-15T17:02:36.330+03:00rsdlI present you the first English entry in my blog and the first release of my 'rsdl' tool for Linux. It's basically a tiny shell script which does all the pesky work for you. There's still a few things to fix, but please try it out, you won't be disappointed.<br /><br />Be careful though, as it won't (yet) check if it would overwrite a file or not - one could say that it is still beta software. The only "special" requirement is 'curl', so it should still run on most linux distributions. If you make a list of your RS links, you'll be able to do the following:<br /><br /><span style="color: rgb(51, 102, 255);font-size:100%;" ><span style="font-family:courier new;">cat list | xargs rsdl</span></span><br /><br />If you find or even fix some error, please let me know or send me patches. Further updates will always be available <a href="http://wittus-dev.blogspot.com/search/label/rsdl">here</a>.<br /><br /><a href="http://141.45.21.33/%7Ewittus/rsdl/rsdl-1.0.tar.bz2">Download</a> <a href="http://141.45.21.33/%7Ewittus/rsdl/rsdl-1.0.tar.bz2.md5"><span style="font-size:78%;">(md5)</span></a><br /><br />Have fun, and don't tell these guys from RS ;-)<br /><br /><span style="font-size:85%;">PS: This program has been written only for the "Free Download" feature, and not (yet?) for the premium zone.<br /><br /><span style="color: rgb(204, 153, 51);">15. 3. : Meanwhile I've found out, that there exist other tools which do a similar job. However, I still prefer this one at the moment because of it's simplicity: No overblown interface, no config files and almost no dependencies.</span><br /></span>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-27560831503078153232009-03-09T13:15:00.007+03:002009-03-09T14:14:36.696+03:00Antananarivo im ChaosWährend ich schreibe, herrscht in Antananarivo das Chaos. Ein Teil des Militärs hat angefangen zu meutern; sofort werden in der Stadt wieder Einkaufszentren und Galerien geplündert. Es gibt sozusagen keine Polizei oder Militärpräsenz mehr in der Stadt - noch gibt es irgendeine Form von Sicherheit. Vor ein paar Tagen noch, gab es in meinem Stadtviertel Granaten und Gewehrfeuer; die Eingreiftruppe Emmonat befreite erfolgreich Geiseln der Oppositionsführer, die Kinder politisch wichtiger Personen im Gymnasium für ihre Zwecke nutzen wollten. Das Außenministerium warnt seit einigen Monaten vor Einreisen und die Botschaft hat Sicherheitsrelevante Informationen für deutsche Madagaskar-lebende verteilt. Es ist davon auszugehen, sollte das Militär nicht wieder die Ordnung in den eigenen Reihen herstellen können, dass das sich die Lage verschlimmern wird und dass einzelne Stadtviertel wieder anfangen werden, sich selbst zu verteidigen.<br /><br />Mir geht es noch gut, die kleinen, madagassischen Lebensmittelgeschäfte kümmern sich (zumindest hier) tatsächlich um "ihr" Stadtviertel. Hamsterkäufe werden gezielt verhindert und bisher gibt es nur wenige Sachen, die aufgrund der Krise nicht mehr erhältlich sind. Kochen ist allerdings etwas problematisch geworden, Petroleum wird (sowie Benzin und Diesel natürlich), um den Möglichkeiten der Gewalt Einhalt zu gebieten, kaum mehr verkauft. Die Zapfsäulen sind abgestellt und die Tankwarte winken die Autofahrer vor den Tankstellen vorbei. Gas ist zur Mangelware geworden. Als wir unsere Flasche auffüllen wollten gab es nur noch eine Einzige, nämlich die Teuerste, die des größten Models.<br /><br />Hunderte sind bereits Tot. Die Madagassen sind voll dabei, ihr eigenes Land zu zerstören. Intellektuelle werden nicht zu Rate gezogen, dafür aber religiöse Organisationen. Vernunft hat keine Chance, denn es geht nur noch um Macht und die dazu nötige Manipulation. Ich persönlich bin auf der Seite des Präsidenten, werde jedoch dazu nicht weiter Stellung nehmen. Es ist nur schade, dass dieses Land, welches einen großartigen Aufschwung während der Letzten Jahre erfuhr, nun langsam aber sicher wieder einmal der sicheren Armut entgegen blickt, und das zu Zeiten einer Weltwirtschaftskrise. Hoffnung gibt es kaum noch, da das Allerwichtigste bereits kaputt ist: Der internationale Ruf der Stabilität des eigenen Landes.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-82765518780821770812009-03-08T23:23:00.004+03:002009-03-15T10:26:29.263+03:00Trac<span style="font-style: italic;">"Use the best tools available for testing and for analyzing the problem, the design, and the implementation" - Bjarne Stroustroup</span><br /><br />Das Projekt, in das sich im Moment all meine Energie stecke wird langsam aber sich groß. Ich benutzte bisher lediglich Subversion mit WebSVN um der Änderungen Herr zu bleiben - und ein paar ganz normale Text Dateien. Mir war <a href="http://trac.edgewall.org/">Trac</a> schon etwas früher zufälligerweise aufgefallen, ich konnte damit aber herzlich wenig anfangen da ich eigentlich Support für ein WebSVN Feature suchte, das Trac lediglich für sich selbst implementiert hatte.<br /><br />Ich gab dem ganzen heute einen Versuch und installierte es auf meinem System. Gentoo ist ja nicht gerade dafür bekannt, leicht konfigurierbar zu sein. Trac ist mal wieder ein Paradebeispiel und hat mich etliche Stunden gekostet. Aber wenn auf einem Linux System mal etwas erst läuft, dann läuft es meistens auf ewig! Das Setup dauerte auch zusätzlich noch etwas länger, da ich versehentlich meine 'system locales' geschrottet hatte, und die Python Skripte von Trac regelmäßig deshalb abschmierten.<br /><br />Ich dachte also ich 'emerge' es einfach schnell, passe ein paar Config-Dateien an und es sollte laufen. Pustekuchen!<br /><br />Probleme:<br /><br />Ich habe einen Apache Server (ohne vHosts) der "<span style="color: rgb(204, 0, 0);">/var/www/localhost/htdocs</span>" verfügbar macht. Da liegen alle meine Skripte und anderes nützliches Zeugs wie PHPMyAdmin, MRTG, WebSVN usw. Ich dachte also ich könnte einfach ein weiteres Verzeichnis namens Trac hinzufügen und es dann einfach benutzen! Nö! Erstmal liegt Trac in "<span style="color: rgb(204, 0, 0);">/var/lib/trac</span>". Und es ist auch komplett in Python geschrieben, und nicht in PHP. D.h., um es Apache fähig zu machen brauch man für diesen ein Python Modul. Ansonsten stellt Trac den sog. Trac Daemon aka tracd bereit, einen Webserver. Der lief anfangs nur via Kommandozeile aber nicht per Init-Skript; erst als ich den Kram aus $TRACD_OPTS in "<span style="color: rgb(204, 0, 0);">/etc/conf.d/tracd</span>" löschte, wollte er starten.<br /><br />Trac kam also nicht mit meinem Apache klar - jedenfalls nicht so einfach wie ich mir das vorgestellt hatte. Ich versuchte es krampfhaft dennoch; später war mir allerdings der Aufwand mit den vHosts einfach zu hoch und ich ließ es bleiben. Das nächste war der Datenbank Kram. Trac unterstützt (in diesem Moment) SQlite, PostgreSQL und MySQL. Da ich MySQL bereits eingerichtet hatte lag die Entscheidung auf der Hand. Das war ein Fehler. Trac warnt aber vor seiner MySQL Unterstütztung und bezeichnet sie als "experimental". War mir egal.<br /><br />Ich richtete also ein neues Trac Projekt ein: "<span style="color: rgb(204, 0, 0);"><span style="color: rgb(255, 0, 0);">trac-admin</span> /var/lib/trac/blah <span style="color: rgb(255, 0, 0);">initenv</span></span>". Ich füllte einen Kommandozeilenfragebogen aus und es ging los. Das hatte, mal abgesehen von den vorher genannten Gründen, aufgrund der Tatsache dass man den "trac" Eintrag in der MySQL DB manuell erstellen musste, nicht problemlos geklappt. Ich tat es also mehrere Male und irgendwann war ich einigermaßen zufrieden mit dem Ergebnis.<br /><br />Eine weitere Odyssee hatte ich mit der Rechteverwaltung. Es funktionierte zwar alles, aber ich konnte mich einfach nicht authentifizieren, um Inhalte verändern zu können. Auch hier bietet Trac zahlreiche Möglichkeiten. Nach dem Klicken auf Login kam jedes Mal: "<span style="color: rgb(204, 0, 0);">Authentication information not available. Please refer to the installation documentation</span>" was nicht soooo aufschlussreich war. Ich probierte also so ziemlich alles aus was in der Dokumentation erwähnt wurde. Und ldap Krams, was mich wieder dazu brachte an Apache herumzufummeln. Ich werde nicht lange um den heißen Brei herumreden... es hat mich bereits Stunden gekostet herauszufinden, was wohl die beste Konfiguration für mein System ist, also will ich jetzt keine Zeit mehr vergeuden :-). Tada:<br /><br /><span style="font-weight: bold;">Via Trac Daemon mit SQlite DB in einer lokalen Datei mit "basic authentification" (Standalone) mittels .htpasswd.</span> Das klappt alles bei mir. Bloß bis ich das erstmal alles begriffen hatte! Ganz wichtig ist folgendes: "<span style="color: rgb(204, 0, 0);">tracd --basic-auth=environmentname,/fullpath/environmentname/.htpasswd,/fullpath/environmentname /fullpath/environmentname</span>" - Na? Alles klar? Also übersetzt heißt das folgendes (und so ungefähr sieht das auch in meiner "<span style="color: rgb(204, 0, 0);">/etc/conf.d/tracd</span>" aus):<br /><br /><span style="color: rgb(51, 102, 255);font-family:courier new;" >PROJ="/var/lib/trac/blah"</span><br /><span style="color: rgb(51, 102, 255);font-family:courier new;" >TRACD_OPTS="--basic-auth=Blah,$PROJ/.htpasswd,$PROJ $PROJ"</span><br /><br />Nicht vergessen ein <span style="color: rgb(204, 0, 0);">.htpasswd</span> File in <span style="color: rgb(51, 102, 255);">$PROJ</span> zu erstellen! Das geht wirklich ganz einfach mit dem gleichnamigen Befehl. Und dann sollte auch schon alles klappen. Das ist keine Installationsanleitung für einen Produktionsserver, aber wohl für ein kleines Heimprojekt und ein paar Beteiligte.<br /><br />Bis auf die, für Einsteiger, relativ schwierige Installation finde ich das Projekt wirklich gelungen. Es macht Spaß damit zu arbeiten und vereint viele altbekannte Features auf einfache Weise, die einem einen nicht unwesentlichen Teil Arbeit abnehmen können. Ich werde bestimmt noch öfter über Trac reden in Zukunft...Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-66354152550550093232009-01-23T00:55:00.008+03:002009-01-23T01:31:35.808+03:00// TODO: ListeMir ist vorhin aufgefallen, dass ich wirklich viele TODO Kommentare in meinen Sourcen verwende.<br /><br />Beispiel:<br /><span style="color: rgb(51, 102, 255);font-family:courier new;" >// TODO: Free Resources</span><br /><br />Nervig wird es dann, wenn man mal ein paar erledigen möchte - denn die müsste ich dann erstmal überall zusammensuchen. Schön wäre eine Liste die mir gleich alle Vorkommnisse, inklusive Dateinamen, Zeilennummer und Inhalt anzeigt. Also hab ich mal ein kleines Skript zusammengehax0rt welches genau das tut für mich. So sieht die Ausgabe aus:<br /><br /><pre><span style="color: rgb(55, 55, 55);font-size:85%;" ><span style="font-family:courier new;">control.h, 161 : Remove this later</span><br /><span style="font-family:courier new;"> prog.h, 7 : Implement error handling. Exceptions and Assertions.</span><br /><span style="font-family:courier new;"> prog.h, 57 : This is a temporary solution.</span><br /><span style="font-family:courier new;"> prog.h, 61 : Make a ref counter for destroying this</span><br /><span style="font-family:courier new;"> test.cpp, 151 : Free Resources Here */</span><br /><span style="font-family:courier new;"> test.cpp, 182 : Make this dynamic</span><br /><span style="font-family:courier new;"> test.cpp, 188 : Free resources</span></span></pre><br />Und das alles (praktisch) mit einer einzigen Zeile:<br /><pre><span style="font-size:85%;"><span style="color: rgb(102, 102, 102);font-family:courier new;" >#/bin/bash</span><br /><span style="color: rgb(55, 55, 55);font-family:courier new;" >egrep -n 'TODO' <span style="color: rgb(10, 51, 255);">src/*.{h,cpp}</span> | \<br />perl -pe 's#(?:src/)+(.+):+([0-9]+):+.*TODO:?\s?(.+)$#"\1" \2 "\3" #g' | \<br />xargs printf '%20s, %-4d : %s\n'</span></span></pre><br />Ist das nicht genial? Der blaue Part sollte angepasst werden. :-)Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-85101826622434136902009-01-16T03:29:00.000+03:002009-01-16T03:29:17.223+03:00WLAN Signal Power Beep ScriptWieder einmal wurde ich beeindruckt von der IT-Solution™-Power, die Linux dem Normalsterblichen völlig selbstverständlich zur Verfügung stellt. Mein Problem war im Prinzip, dass sich mein WLAN Adapter draußen befindet und ich beim Ausrichten nicht auf meinen Bildschirm schauen konnte wie gut die Signalstärke war. Also schrieb ich mir schnell ein Skript welches mir die 'Link Quality' in Audio Signale mittels PC-Speaker ausgibt - denn die konnte ich draußen noch sehr gut hören.<br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >while true; do</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > QUALY=`/sbin/iwconfig wlan0 | /bin/grep "Link Quality" | /usr/bin/perl -pe 's/.*=(\d+)\/\d+.*/$1/g'`</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > FREQ=$(($QUALY * 100))</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > if [ $FREQ == 0 ]; then</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > FREQ=100;</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > fi</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > echo "Beeping at freq $FREQ"</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" > sleep 1 && /usr/bin/beep -f $FREQ -r 2</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >done</span><br /><br />Natürlich hätte man das auch mit Windows machen können, aber eben nicht so schnell & einfach. Das 'Link Quality' in Zeile 3 gilt anzupassen, sollte es in deutsch sein. Das Kernel Modul für den PC-Speaker sollte geladen sein sowie das Programm `beep` installiert.<br /><br /><span style="color: rgb(204, 0, 0);">Update</span>: Zugegeben, beep ist nicht gerade sehr flexibel. Man kann die Lautstärke nicht einstellen, Ausgabe über Kopfhörer nicht möglich usw. Außerdem musste ich mittlerweile feststellen dass die 'Link Quality' nicht sehr ausschlaggebend für die Gesamt-Qualität ist. Selbst bei über 50% kann die Verbindung immer noch schnell zusammenbrechen wenn der Signal Level einfach zu schlecht ist. Also habe ich mein Skript ein wenig modifiziert, Voraussetzung diesmal ist übrigens sox und eine geeignete Sound-Datei. Ich gehe hier von einem Mindest Signal Level von -90 aus und mein Interface ist wlan0:<br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >while true; do</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >QUALY=`sudo iwconfig wlan0 | grep "Signal level" | perl -pe 's#.*Signal level:(-\d+) dBm.*#$1#'`</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >PITCH=`echo "scale=2; $(((92-($QUALY*-1))))/0.01" | bc`</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >echo -ne "\r$PITCH"</span><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >sleep 0.5 && play -q "beep.wav" pitch $PITCH</span><br /><br /><span style="color: rgb(153, 153, 153);font-family:courier new;" >done</span><br /><span style="color: rgb(153, 153, 153);"></span><span style="color: rgb(153, 153, 153);"></span>Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-66918419440768451672009-01-11T23:02:00.009+03:002009-04-20T16:56:27.276+03:00Vom Kopieren, Abkupfern und AusbeutenSchaut man sich mal die Job Angebote bei <a href="http://www.rentacoder.com/">RAC</a> an, wird man feststellen, dass ziemlich viele Leute heutzutage nicht unbeträchtliche Summen bezahlen um für spezielle Zwecke automatisch an Inhalte von diversen Webseiten ranzukommen. Ich meine damit Web-Scraping, Data Extraction usw.<br /><br />Ein paar sind legitim, ein paar sind sogar "educational non-profit"-Projekte, ein paar Andere sind sogar hochgradig illegal. Ich fand sogar Bidding-Requests für Spam-Programme. Mich beeindruckte mitunter, dass es sich dabei ziemlich oft um Wetten handelt. Komplexe Applikationen werden da benötigt, die ganze AJAX Webseiten analysieren und die Daten entweder selbst verarbeiten, um Beispielsweise die besten Gewinnchancen auszurechnen, oder um die Daten irgendwo in irgendeine Datenbank einzutragen damit weiß-der-Geier-was damit passiert hinterher. Das ist auch der Grund warum wir mit Captchas genervt werden. Aber für die gibt es dann wieder neue Bids. Ich frage mich ernsthaft wie viele Webseiten ihre Inhalte auf denen von anderen, <span style="font-style: italic;">echten</span> Webseiten zum größten Teil basieren?<br /><br />Glücklicherweise bin ich davon nicht betroffen. Nur finde ich es interessant, dass sich für solche Jobs <span style="font-weight: bold;">immer</span> Programmierer finden - und dann auch noch für irrwitzige Kleinstbeträge von $10. Wie ist sowas überhaupt möglich? Die Antwort: Drittländer. Geldnot, Devisenkurse, und kulturbedingte niedrige Lebensansprüche machen's möglich. Oder in einem Wort: Outsourcing.<br /><br />Denn genau darauf basiert RAC zum allergrößten Teil. Nicht nur Scraper, nein, ganze Artikel über zig-tausende Wörter werden für ein paar Dollar von irgendwelchen Afrikanern geschrieben. Ob es Pakistani oder Rumänen sind - allesamt unterbieten sie sich auch noch gegenseitig bis aufs Mindeste, um den Job überhaupt zu bekommen. Der Schüler kann sich freuen - ein Inder erledigt seine Hausaufgaben für, umgerechnet, gerade mal ein Menu bei McDonalds. Eigentlich ist das ein Trauerspiel.<br /><br />Und jetzt die Ironie: RAC wurde <a href="http://www.rentacoder.com/RentACoder/DotNet/SoftwareBuyers/BuyerKudos.aspx">hochgelobt und mehrfach ausgezeichnet</a>, unter Anderem als bestes Geschäftsmodell und gilt als eines der am schnellsten wachsenden IT-Unternehmen überhaupt. Natürlich hat das Ganze auch seine Vorteile. Es schafft eine Menge Arbeitsplätze und die, die in der Rangfolge nach oben kommen, können sich damit durchaus etwas aufbauen in ihrem Heimatland. Für komplizierte Sachen werden auch höhere Beträge bezahlt, aber Ausbeutung bleibt es meiner Meinung nach immer noch. Und vor Allem fördert es die Faulheit von Westlern: Wenn ich 4000€ verdiene, warum nicht 90% meiner Arbeit für 200€ von <span style="font-style: italic;">jemand Anderen</span> erledigen lassen...Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com0tag:blogger.com,1999:blog-12120437.post-15648618515927455262009-01-11T00:40:00.005+03:002009-04-20T16:56:10.842+03:00Gamestar.deAch ja, damals. Damals war alles besser, oder? Man trug noch nicht die ganze Last des Lebens auf seinen Schultern. Machte sich keine allzu-großartigen Gedanken um die Zukunft. Wie soviele Dinge, wusste man ebenfalls nicht, dass man als Teenager seine Seele verkauft wenn man sich bei Gamestar.de anmeldet.<br /><br />Nach einer <a href="http://yro.slashdot.org/article.pl?sid=09%2F01%2F10%2F0028236">Slashdot Story</a> in der Google Forscher vor Social-Networking Webseiten warnen, deren Personenbezogenen Daten irgendwann mal zusammengeführt werden könnten und quasi den gläsernen User möglich machen würden - wie es z.B. durch diverse Personen-Suchmaschinen wie <a href="http://www.yasni.de/">Yasni</a> oder <a href="http://www.123people.com/">123people</a> bereits geschieht - nahm ich mir vor, mal wieder Klarschiff zu machen.<br /><br />Vor etwa 8 Jahren meldete ich mich bei Gamestar.de an und musste heute mit Erschrecken feststellen, dass ich meinen öffentlichen(!) Account garnicht löschen kann. Im Forum wird gesagt dass es angeblich technisch nicht möglich ist bla bla bla. Ich kann Allen die das lesen nur davon abraten sich da anzumelden...Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com1tag:blogger.com,1999:blog-12120437.post-91606969007817111232009-01-07T23:03:00.002+03:002009-08-27T21:03:37.931+03:00Passwörter von Files auf Rapidshare besorgenIch höre gerne ab und an mal alternativere Musik. Neben diversen Blogs nutze ich hauptsächlich eine <a href="http://www.rapidoogle.com/">Rapidshare Suchmaschine</a> (angepasste Google Search) und die sog. <a href="http://www.rapidlibrary.com/">Rapidlibrary</a>. Erstere verweist zum größten Teil auf die Letztere. Das Problem mit der (eigentlich nützlichen) Library ist, dass sie lediglich die Dateinamen indiziert die auf Rapidshare liegen - d.h. es gibt also keine Zusatzinformationen. Und wenn die (zumeist gepackte) Datei passwortgeschützt ist, hat man ein echtes Problem. Das ist mir tatsächlich letztens erst passiert.<br /><br />Was tut man also in so einem Fall? Man hat das begehrte File und kann so gut wie nichts damit anfangen. Ich lud mir also einen RAR-Passwort-Cracker herunter und versuchte mein Glück. Wir wurde irgendwann klar, dass das Ganze eigentlich ein ziemlich sinnloses Unterfangen ist. Warum, ganz einfach: Die meisten solcher Passwörter lauten 'domain.com'. Man bräuchte also im Prinzip ein Dictionary mit tausenden URLs von Webseiten mit illegalen Inhalten.<br /><br />Als ich so darüber nachdachte und mein PC währenddessen abertausende von Kombinationen ausprobierte fiel mir plötzlich eine wesentlich einfachere Lösung ein: Man nehme die Zahl eines Rapidshare Links wie bei z.B. '<span style="color: rgb(153, 153, 153);">http://rapidshare.com/files/</span><span style="color: rgb(255, 0, 0);">123456789</span><span style="color: rgb(153, 153, 153);">/file.rar</span>' und gebe sie schlicht bei Google ein. Sie wird so einzigartig sein dass man mit fast 100%iger Sicherheit den Ursprung dieser Datei finden wird und dadurch auch das Passwort. Sollte man plötzlich ein Login brauchen lässt man sich halt einfach den Cache von Google anzeigen.Saschahttp://www.blogger.com/profile/15044104127908029010noreply@blogger.com1