wiki2beamer @ 26C3

short story: meet us there, today, lightning talk. [slides|sources]

long story:
After I feared to get no tickets, yesterday, I finally got one (after waiting patiently in the line). Now I’ll give a 4-minutes Lightning Talk at the 26. Chaos Communication Congress were I will introduce wiki2beamer and point out, that is good for collaborative working and sourcecode-centric talks.

The slides are available as PDF and with all the sources.

update: video recording is online, other formats here

phlow

The phlow-magazine: http://phlow-magazine.com/

Found some of the finest open content music there. Mostly eletronic, but also with influences from jazz and pop.

TED Video Feed

So, for anyone who hasn’t subscribed yet: TED is a series of conferences about all kinds of topics from great people who really have to tell something. This is the feed, you will find great talks there — one to two new ones every day. Watch it, I’m convinced it makes better people.

Don’t be afraid of .pyc

During the last UCSB iCTF we (ENOFLAG) got (amongst other applications) a python binary which means, we only got the .pyc file and not the python source. The .pyc modules had to be reversed to find some remote code execution vulnerability. Well, I’m not the assembler-uber-geek so I had some problems reversing the code and until the host supplied the plain source I didn’t really got anything usable.

Now, a few days later, I know the exploit but I lost the source for the binary. So I just thought, let’s get it back and do what you were supposed to do. And … it’s astonishingly easy. The only thing you got to do is take some time and decompile the disassembled output line by line into source.

So here come’s a short tutorial for decompiling python 2.5/2.6 code:

Step 1: disassembling

dismybinary.py:
#!/use/bin/env python
import binarymodule
import dis

dis.dis(binarymodule)


$ ./dismybinary.py > mybinary.dis

Step 2: decompiling

$ cp mybinary.dis mybinarydis.py
$ vim mybinardis.py

An additional ipython shell on another terminal might help for inspecting the binary module during decompilation.

Now, cpython disassembler output is not to hard to read, it’s really easy in fact, when you concentrate and take your time. The documentation of dis helps and I’m pretty sure you can do it, too.

So next time, I won’t be so afraid of python binaries and I suggest anyone having to deal with, too: Don’t be afraid, it’s easy, just do it.

thanks grml

As I’m planning to set up a fresh new gentoo on my new Atom 330 system, I was looking for a suitable boot medium today. The Atom board only has SATA connectors and I don’t have a SATA CD-ROM, so I had to look for an USB bootable 64bit linux. This should not be a problem nowadays … I thought.

Well, first attempt: Ubuntu 9.10 64bit desktop. Downloaded the ISO and then looked for some tutorial. It turned out they now have a debian/ubuntu/windows custom usb-creator tool which is not available on gentoo. So I tried unetbootin, which promised to create bootable USB sticks from all kinds of distributions. It failed. For some reason the BIOS said the resulting stick was not bootable. My next try was to follow some generic tutorials for converting bootable CD images into bootable USB sticks. With this attempt I got the Ubuntu image to boot into the initramfs but it then didn’t find the live image to mount and I didn’t really care to hack into the initramfs. Frustrating. This should be easy, instead.

Well, then I took a look at GRML, as it is said to be a nice litle Linux distro for admins. And surprisingly all it takes to make a GRML ISO boot from USB Stick is dumping the ISO on the stick with dd. dd if=grml64-medium.iso of=/dev/sdX. Done. Works nicely. Thank you GRML!

Was ist eigentlich … Kapitalismus?

Zum Anlass des Bildungsstreiks möchte ich heute einmal für ein wenig Ersatzbildung sorgen.

Es geht um Wirtschaft.

Wirtschaft ist der Vorgang der Produktion von materiellen und immateriellen Gütern sowie Dienstleistungen. Materielle Güter könnten zum Beispiel Autos oder Fernseher sein, unter immateriellen Gütern darf man sich Dinge wie Informationen (Nachrichten, Musik, …) vorstellen. Dienstleistungen sind z.B. Autoreparaturen oder der Maler, der uns die Wohnung weisst. Wir alle brauchen diverse dieser Güter, haben also einen Bedarf und davon manchmal mehr und manchmal weniger.

Hier nun ein Beispiel mit dem wir weiter arbeiten können:

Nehmen wir an, wir wären Besitzer eines Apfelbaumes. Nehmen wir weiterhin an dieser Apfelbaum wäre in der Lage nur genau zwei Güter zu produzieren: Äpfel und Holz.

Wären wir allein auf dieser Welt, würden wir uns einfach fragen was für uns sinnvoller wäre aus diesem Apfelbaum zu machen: Entweder seine Äpfel essen und damit unseren Hunger stillen, oder sein Holz nehmen und damit z.B. einen Stuhl bauen. Die Antwort hängt von unserem Bedarf ab. Je mehr Hunger wir haben, desto eher werden wir dazu tendieren die Äpfel zu wählen. Haben wir vielleicht aus anderen Quellen bereits absehbar auch zukünftig genug zu essen, jedoch keinen Stuhl im Hause, könnten wir uns auch dazu entscheiden einen Stuhl aus Apfelbaumholz zu bauen.

Wir sind natürlich jedoch nicht allein auf dieser Welt. Es geht also nicht nur um unsere Bedürfnisse, sondern auch darum die Bedürfnisse aller anderen Bürger. Als Gutmenschen wollen wir nun das Gesamtwohl maximieren, also das meiste Glück für die größte Zahl erzeugen. Die Entscheidung zwischen Äpfeln und Holz wird hierdurch um einiges komplizierter. Sie hängt nicht mehr nur von unseren eigenen Bedürfnissen ab, sondern auch den Bedürfnissen aller anderen Bürger. Gäbe es in diesem Lande mehr als genug Äpfel und alle hätten so viele Äpfel, dass sie keine Äpfel mehr sehen wollen, so wäre es reichlich unsinnig noch mehr davon zu produzieren und wir sollten vielleicht eher einen Stuhl aus dem Apfelbaumholz machen. Damit würde mehr Wohlstand für alle erzeugt. Haben im Gegensatz dazu alle Bürger bereits Stühle und gleichzeitig nicht genug zu Essen, wäre es am sinnvollsten die Äpfel zu produzieren.

Um unsere Entscheidung richtig treffen zu können, müssen wir den zeitlich und räumlich verteilten Bedarf nach Äpfeln bzw. Stühlen kennen. Dazu müssten wir eine ganze Menge Informationen einholen: Ganz genau, wer wo wieviel Bedarf nach Äpfeln und Stühlen hat und was von beiden insgesamt mehr nachgefragt wird. Hätten wir diese Informationen, könnten wir eine perfekte Lösung errechnen. Toll. Nennt sich Planwirtschaft und ist schwierig, weil es so gut wie unmöglich ist, diese Masse an Informationen eines ganzen Landes, geschweige denn der ganzen Welt einzusammeln und zu verarbeiten.

Die Menschen haben sich deshalb recht früh eine Alternative einfallen lassen und dann festgestellt wie sie funktioniert. Die geht so:

Um unsere Frage zu beantworten ob wir Äpfel oder Stühle produzieren gehen wir auf den Wochenmarkt im Dorf. Dort schauen wir, welchen Preis Äpfel und Stühle erreichen. Je nach dem was nun mehr Gewinn erzeugt, produzieren wir auch Äpfel bzw. Stühle und bieten sie unsererseits an. Dies führt dann wiederum dazu, dass der Preis für das produzierte Gut ein wenig fällt, weil mehr davon da ist. Irgendwann wird der Preis soweit fallen, dass wir uns angehalten fühlen ein anderes Gut zu erzeugen. Es stellt sich ein Gleichgewicht zwischen Angebot und Nachfrage ein und wir wissen genau wann wir was produzieren müssen. Der Preismechanismus beantwortet die Frage des Bedarfs durch eine verteiltes System. Das nennt man Marktwirtschaft.

Beide Systeme erzeugen Kosten. Planwirtschaft hat Informations- und Planungkosten und Kosten wegen der zwangsläufig auflaufenden Ineffizienzen und Fehlallokationen. Marktwirtschaft (oder synonym Kapitalismus) ist auch nicht perfekt. Auf dem Weg zum Gleichgewicht treten sog. Transaktionskosten auf, die ebenfalls nicht unerheblich sind und manchmal auch für Fehlallokationen sorgen. Zudem gibt es Situationen in denen der Markt versagt und die identifiziert und reguliert werden müssen. Die zugrundeliegende Frage jedoch, welches Gut produziert und wohin verteilt werden soll, wird vordererst noch unglaublich viel komplexer, wenn wir noch weitere Güter hinzufügen. Sollen wir Fernseher oder Autos bauen? Sollen wir Flugzeuge oder Schiffe bauen? Sollen wir Milch oder Fleisch erzeugen? Sollen wir einen Bauernhof oder eine Autofabrik bauen? Der Leser sei nun aufgefordert sich Anhand der Geschichte zu beantworten, welches System zu Beantwortung der Frage nach optimaler Ressourcenallokation besser funktioniert.

Wer den Kapitalismus abschaffen will, der sollte sich vorher informieren was das eigentlich ist.

Im Übrigen ist der Vorgang der Verteilung von Mitteln aus dem Haushalt der Deutschlands/Berlins an die Einrichtungen des öffentlichen Bildungssystems alles andere als marktwirtschaftlich organisiert. Es gibt dort einen Bildungsminister / Bildungssenator, der erfasst welche Einrichtung wieviel Bedarf hat und entsprechende Mittel verteilt. Wenn wir also irgendwo bereits Planwirtschaft erleben, dann im Bildungssektor.

Diese Diskussion über das richtige System wird meist mit einer ungemein religiös anmutenden Inbrunst geführt. Auch im Rahmen der Bildungsproteste formulieren diverse Gruppen immer wieder ihre Kapitalismuskritik. Damit tun sie den Bildungsprotesten einen Bärendienst. Wer erwartet aus dem Hörsal heraus das wirtschaftliche System Deutschlands umstürzen zu können, hängt zum einen illusorischen Zielen nach verwässert zum anderen die eigentlichen Ziele mit ideologischen Ansichten die zudem nicht von allen Studenten geteilt werden.

A while back…

… I was here:

CO Berlin, Nan Goldin, Poster

And as always, exhibitions from c/o berlin are a thrilling experience. So everyone who has a slight interest in photography, take your chance to see the stunning pictures of one icon of the photographic world. Nan Goldin stands for the genre of autobiographic photography like no other. You will be shocked, you will find love, you will be overwhelmed.

Clifford Stoll on everything and the sink

here

LaLaLa LaLaLa LaLaLaLaLaLaLa

süß ist sie ja schon: Nilam Farooq ;)

in: T-Mobile LaLaLa Werbespot

Trotzdem: ist nicht OpenSource und wahrscheinlich voll durch patentiert, deshalb: besser nicht kaufen.

Und wo ich schonmal dabei bin einen sinnlos-post zu machen: don’t watch.

Damit wünsche ich Ihnen einen weiterhin angenehm (brech-)reizvollen Start in den Tag…

Bye bye, trusty old one …

As some of you may know, I’ve been running a 24/7 box in my room that provides me with a unified messaging service (fetchmail/dovecot) and acts as a NAS for me. As my parents visited this weekend and needed to sleep somewhere, without the constant (yet silent) sound of a machine running, I turned the box of. It’s a good old AMD Duron 650 that was bought in 2002 (I think) and has been always on since about 2005. Thats four years of current running through the board. As you can guess, when I tried to turn it on again in the morning, it just didn’t come up (random hangs). Well, the elcos don’t look to healthy anymore, too. So, rest in peace little duron *sniff* we had a good time together (about 98% uptime).

So long, I put the RAIDed harddisks into another machine which is running my mail service now and just bought a pretty cool new board: Foxconn 45CSX, one of the few fully passive Atom 330 boards :)

Let’s see if I can get wattage down. In a year or so, the new board should pay out.