Archiv 4.8.2005 - 20.8.2005

Posting 5000

Wow. Das hier ist ernsthaft jetzt das Posting 5000 in der Datenbank.

erstauntes Gesicht

erste Django-Anwendung life

So, meine erste Django-Anwendung ist life - noch nicht fertig, aber im Moment schon mal so gut, das sie besser ist als das alte PHP-Gemölter das da vorher lief. Und zwar gehts hier um meine Bildergalerie unter viele-bunte-bilder.de. Im Moment gibts zwar die Benutzerregistrierung und alles was damit zusammenhängt - aber das werd ich noch irgendwann mal einbauen. Oder auch nicht. Schaun mer mal.

Auf jeden Fall ist es schon mal ganz nett - ich kann Bilder wieder direkt aus iPhoto hochladen (was der wichtigste Vorteil der alten Galeriesoftware war) und die Sachen liegen im Filesystem, nicht in einer Datenbank - was ebenfalls ein recht wichtiger Punkt war.

Die Software selber ist natürlich verfügbar - wer stöbern will, ich hab eine Trac-Instanz mit meinen Django-Spielereien aufgesetzt.

Seit 2007 ist nix mehr davon online.

ObjectiveCLIPS

Way cool: Objective CLIPS ist eine neue Entwicklungsumgebung für OS X. Aus der Beschreibung:

Using Objective C runtime introspection, CLIPS, and FScript, it is possible to write intelligent Cocoa applications. Any Objective C object can be asserted as a fact in CLIPS, however, CoreData provides an additional meta model along with object persistence.

CLIPS ist eine Expertensystemumgebung die im Prinzip auf einem Lisp-Dialekt aufbaut und die Verwaltung von Regeln und Fakten ermöglicht, sowie das Reasoning darüber. FScript ist eine an Smalltalk angelehnte Scriptsprache die direkt mit den ObjectiveC-Klassen im OS X zusammenarbeitet. Beides zusammen sollte ziemlich coole Sachen ermöglichen, zumal mit CoreData auch einfach Datenbanken und Dokumente erstellt werden können. Und beide Sprachen (CLIPS und FScript) fand ich bei meinen Spielereien damit recht interessant - CLIPS war sogar längere Zeit bei mir als "Lisp-Ersatz" im Einsatz, weil es zwar ein recht altmodisches Lisp ist, aber dafür eben mit mächtigen zusätzlichen Abstraktionsmöglichkeiten ausgestattet ist.

RSS 3 - gleich zweimal

Mal wieder jemand der meint er könne ein tolles neues Format kreieren: RSS 3.0 - und der jemand ist zu blöd vorher mal zu googlen. Denn sonnst wäre er über RSS 3.0 gestolpert und hätte vielleicht mal nachgedacht.

Ach watt, nachdenken zählt nicht zu den üblichen Tätigkeiten von tollen Erfindern von Syndizierungsformaten, hat man ja schon in der Diskussion rund um Atom gemerkt. Ich bin immer noch überzeugt das die ganze Syndizierungsformate nur ein grossangelegter netzpsychologischer Test sind.

Heise hat auch was drüber. Und genauso Rogers Cadenhead - der ja im RSS Advisory Board sitzt.

Writing PlugIns beschreibt wie man iPhoto Exporter Plugins erstellt. Könnte mal ganz interessant sein.

SHA-1 geht weiter den Bach runter

Jedenfalls wenn der 2^63 Angriff gegen SHA-1 der jetzt verlautbart wurde trifft. Jetzt werden wohl bald die ersten Referenzimplementationen angegangen werden. 2^63 ist mit heutigen Maschinenleistungen durchaus knackbar, da gibts schon erste Erfahrungen. Und damit ist es wohl nur noch eine Frage der Zeit bis ähnlich wie bei MD5 Hash-Kollisionen für reale Dokumente produzierbar sind. Schon strange wenn man sich anguckt wie sich das Feld verändert hat in Bezug auf die Rechenleistung die aufgebracht werden kann.

1&1 spinnt

Denn da gibts jetzt eine Zwangsumleitung:

Wenn Karlsruher Kunden des Providers 1&1 eine neue DSL-Verbindung aufbauen und danach den Browser starten, bekommen sie neuerdings stets das 1&1-Portal angezeigt.

Na toll. Und wenn diese ersten Requests von irgendwelchen Scripten eines Servers an dem DSL-Anschluss stammen, fallen Scripte da auf die Nase. Nur weil 1&1 mal wieder eine selten dumme Idee hatte. Und wir dürfen das dann den Kunden wieder erklären, warum da irgendwas obskures nicht funktioniert - und das alles nur für Marketingscheiss.

2029 geht die Welt unter

Weil uns dann der Himmel auf den Kopf fällt. Was auch gut so ist, denn 2037 läuft die Unix Epoch über und alle Computer spielen verrückt. Und so bleibt uns das Chaos erspart.

Achso, und wer mir das alles glaubt, ich hätte da noch eine recht nette Brücke zu verkaufen ...

Django hat einen wichtigen Schritt für den Release 1.0 gemacht: anonyme Sessions. Bisher waren ja Sessions bei Django an eine Benutzeranmeldung gekoppelt, aber jetzt gehts auch ohne Registrierung. Wesentlich netter als tausende Cookies beim Benutzer zu erzeugen.

Cooperative Linux ist ein Port des Linux-Kernel als Windows-Applikation. Dadurch kann man Linux als Windows-Anwendung laufen lassen, ohne einen Virtualisierer wie VMWare bemühen zu müssen.

CRUD mit Django

Create, Read, Update, Delete - die Standardfunktionen klassischer Interfaces - kann man mit Django sehr einfach zusammenbauen. Dazu gibt es die Generic Views. Auf Postneo gibts jetzt ein CRUD Tutorial, welches zeigt wie simpel solche Oberflächen mit Django zusammengestellt werden können.

London: Zweifel an Polizeiversion im Fall Menezes

Es gibt berechtigte Zweifel an Polizeiversion im Fall Menezes in London:

Ein Überwachungsvideo zeige, dass der 27-Jährige eine leichte Jeansjacke getragen und sich in der U-Bahn-Station nicht auffällig verhalten habe, berichtete der Sender. Er habe die Haltestelle ruhig betreten, eine Gratiszeitung entgegengenommen und sei mit dem Aufzug zum Bahnsteig gefahren. Erst dort sei Menezes zu einem Zug gerannt und habe in einem Wagon Platz genommen. Ein Zeuge habe zudem ausgesagt, der gelernte Elektriker sei von einem Beamten überwältigt worden. Wenig später schossen Polizisten Menezes mehrfach gezielt in den Kopf. Eine Obduktion ergab, dass die Leiche sieben Kopfschüsse und einen Einschuss in der Schulter aufwies. Allerdings hätten die Polizisten noch drei weitere Schüsse abgefeuert, deren Projektile noch nicht gefunden worden seien, heißt es bei ITV weiter.

Und wie erklären sich die ganzen Shoot-To-Kill-Verfechter das jetzt beiseite? Damit sie nicht über den Wahnsinn ihrer Haltung nachdenken müssen?

Mal was interessantes in Rails

Endlich mal eine Anwendung in Ruby on Rails die über die üblichen Beispielanwendungen hinaus geht - und nicht einfach ein Weblog oder eine total sinnlose Todo-Listen-Verwaltung oder Artverwandtes ist: VitalSource ist eine iTunes-ähnliche Anwendung für Bücher mit einem entsprechenden Backend und einem ebenfalls auf Rails aufbauenden (aber in der Anwendung integrierten) Frontend:

Apparently their backend applications have been running Rails for a while. But they've recently released their client software, and it runs Rails as well. Except... you won't see it running in a conventional browser. As the picture shows, the Rails app runs embedded within the client executable: in the case of the Mac client it uses WebKit to render the responses from the Rails app.

Mir gingen schon die ganzen Rails-Anwendungen - die irgendwie alle nach Übungsbuchaufgaben klangen - auf den Wecker.

A comparison of Django with Rails ist ein recht guter Vergleich von Rails und Django. Wobei Vergleich bei zwei Systemen die durchaus unterschiedliche Themen adressieren natürlich recht schwierig ist - aber der Artikel versucht zumindestens die beiden Frameworks gegeneinander zu positionieren.

Armer Jörg Jaksche

Also ehrlich. Klaut ihm da ein Abstauber auf der Ziellinie den Etappensieg. Sorry, aber manchmal ist Radsport wirklich unfair. Schade - ich hätte den Tagessieg heute dem Jörg Jaksche gegönnt, er hat wirklich immer wieder attackiert. Zweimal weniger umgeguckt und vielleicht hätte er doch noch gewonnen.

Lebende Daten

Komischer Titel, oder? Naja, mir ist einfach nur was aufgefallen bei der Beschäftigung mit Webframeworks und anderen Anwendungen, speziell im Ruby und Pyhton Umfeld. Und zwar die Art und Weise wie Minidaten gespeichert werden und wie zum Beispiel Konfigurationsdaten gehalten werden.

Im Java-Umfeld gibts da eine Inflation von XML-Mini-Languages - Berge von toten Daten. Tot deshalb, weil diese Daten eben nur im XML-Format leben und nur über XML-Werkzeuge bearbeitet und verändert werden können - habe ich zum Beispiel sich ständig wiederholende oder algorithmisch beschreibbare Konfigurationsblöcke (z.B. einen Berg von sich ziemlich ähnlich sehenden URL-Mustern für ein Webframework), kann ich diese nur über XML-Werkzeuge generieren - z.B. mittels XSLT aus einfacheren Formaten generieren. Oder ich schreib mir kleine Tools dafür.

In Ruby sieht die Situation ähnlich aus - nur das da statt XML dann eben YAML genommen wird. Letztendlich ist das aber auch nicht besser - die Konfiguration ist immer noch ein totes File.

Aber sowohl im Python-Umfeld als auch bei diversen anderen dynamischen Sprachen gibt es eine gute Alternative dazu: nimm einfach ein Modul in deiner Programmiersprache. Denn zum Beispiel Pythonmodule leben - ist die Struktur komplexer, aber teilweise repetitiv - einfach eine kleine Python-Funktion schreiben die bei der dynamischen Erstellung der Config hilft. Soll die Config teilweise aus Datenbankinhalten kommen - einfach eine Python-Funktion schreiben die diese Daten zur Laufzeit aus der DB liest und in die Config einmischt. Lebende Konfigurationdaten eben.

Natürlich kommen so Sicherheitsprobleme mit ins Spiel - wir wollen ja nicht den PHP-Fehler mit dem ewigen eval wiederholen. Was dazu also dringend notwendig wäre, wäre eine saubere Sandbox für solche Module. Leider ist genau da in Python ein massives Loch in der Implementierung. Es gab früher mal die Bytecodehacks, die auch wiederbelebt wurden - aber das sind eben nur Hacks. Auch die Methode mittels eingeschränkter Imports und Proxy-Objekten eine Scheinsandbox aufzubauen wie es Zope macht ist nicht der Weisheit letzter Schluss.

Perl bietet hier - wie bei allen Sicherheitsfeatures in Perl üblich wird das natürlich von fast keinem Projekt verwendet - eine sehr saubere Methode über die safe execution. Man kann bis ins kleinste hinein reglementieren was der Code in einer solchen Sandbox darf - und damit ist eine Konfiguration über Perl-Modul definitiv besser abzusichern als in Sprachen ohne so ein Konzept.

Java selber hat natürlich ein ziemlich ausgefeiltes Sicherheitsmanagement - zwangsweise, es soll ja auch in Browsern mit sehr stark beschränkten Rechten laufen. Dieses Security-Modell ist auch für Anwendungen nutzbar und könnte zum Beispiel für Servlets oder eben auch Java-Configs zum Einsatz kommen - vor allem da man mit Java ja auch problemlos Files zur Laufzeit übersetzen und dynamisch laden kann. Erklär mir jetzt mal einer warum die Java-Leute so fixiert auf XML sind, wo sie doch die besten Grundlagen für sichere lebende Daten haben ...

Das Safe-Modell von PHP ignorieren wir hier mal geflissentlich, denn das ist ein Sekt-oder-Selters-Modell - entweder läuft jeder Code unter safemode, oder garkeiner. Was wir bräuchten wäre aber eine selektive Aktivierung unterschiedlicher Sicherheitsklassen für einen einzelnen Codeblock oder Modulimport (ok, Modulimporte hat PHP auch nicht, nur Includes - ich sag ja, wir ignorieren es einfach mal).

Bisher kann man also bei Python nur dann mit lebenden Konfigurationen arbeiten, wenn man sich sicher ist das die Konfigurationen nur von Usern ohne böse Absichten bearbeitet werden. Django zum Beispiel benutzt nur lebende Konfigurationen - es wäre daher eine ziemlich dumme Idee, würde man z.B. die Konfigurationdateien bei zentral gehosteten Anwendungen über das Web editierbar machen.

Wir brauchen dringend eine saubere Sandbox für Python. Ich glaube sogar das wäre ein wichtigeres Teilprojekt als die diversen syntaktischen Erweiterungen die immer wieder angegangen werden.

wxWindows jetzt auch für Common Lisp

wxCL bietet Common Lisp Libraries für die Nutzung der genialen wxWindows GUI Bibliothek. Sehr schön - ich habe wxWindows in seiner Python-Inkarnation schon zu schätzen gelernt, auch in Scheme (über DrScheme) ist es sehr hilfreich, jetzt dürfen auch Common Lisper. Ich weiss das bei Common Lisp natürlich CLIM (heute oft in der Form von McCLIM) das Toolkit der Wahl ist, zumal es wesentlich mächtiger als wxWindows ist. Aber trotzdem ist es schon nett eine Cross-Plattform GUI Bibliothek zu haben, auch und gerade weil es diese eben für mehr als eine Programmiersprache gibt.

die seltsame Neigung der PHP-Programmierer zu eval

Schwachstellen in PHP-Modulen gefährden (mal wieder) zahlreiche Webapplikationen - und zwar wieder mal XML-RPC. Da wird immer noch eval benutzt - und zwar zur Auswertung von Tags. Bitte was? Sorry, Leute, aber das ist einfach nur noch albern - eval ist euch schon mal um die Ohren geflogen, warum wurden die ganzen Aufrufe nicht damals schon rausgeworfen? Oder wenigstens vernünftig gesichert?

Und da wundern sich Leute wenn ich von PHP-Software nicht allzuviel halte ...

lahmes Posten in WordPress

Das neue Wordpress 1.5.2 soll endlich das lahme Posten - verursacht durch das Pingen - beheben, in dem das Pingen in den Shutdown geschoben wird, also hinter die eigentliche Request-Response-Kette. Auf Deutsch: mit der 1.5.2 sollte das Pingen nicht mehr ein ewiges Warten auf den Browser verursachen. Wäre ja sehr nett, wenn das auch klappt.

Da auch Security-Fixes drin sind, ist eh ein Upgrade sinnvoll. Wobei WordPress für eine PHP-Anwendung erstaunlich stabil funktioniert - aber eben trotzdem durchaus noch die eine oder andere Leiche im Keller gammelt.

Update: naja, schneller ist das ja nun doch eher nicht geworden beim Posten ...

Seashore ist ein auf Gimp-Libraries und Formaten aufbauender Bildeditor für OS X. Sieht schon ganz nett aus, auch wenn es natürlich derzeit noch fast keine Features hat (vor allem die ganzen Filter fehlen). Aber vielleicht wird aus sowas mal irgendwann ein OS X nativer Gimp ...

spotlight auf Wechsellaufwerk ausschalten

sudo mdutil -i off -E /Volumes/VOLNAME/ soll spotlight auf einem Volumen disablen und den Index wegwerfen. Hoffentlich - das nervt, wenn meine Backup-Laufwerke jedesmal indiziert werden sollen. Oder wenn dann die gefundenen Anwendungen in den Open With Listen auftauchen, auch wenn das Laufwerk garnicht angeschlossen ist ...

trac - Softwareprojektmanagement leicht gemacht

trac ist ein Webinterface für Subversion -Repositories. Allerdings ist es nicht nur die passende Weboberfläche - dazu kommt ein Wiki, ein Bugtracking-System, eine Meilensteinverwaltung und sehr komfortabel zu erstellende Reports auf Basis des Bugtrackings. Und das ganze in einer sehr leicht installierbaren Packung - bei Debian genügt ein apt-get install trac und dann mit trac-admin initenv eine Trac-Instanz erzeugen. Das ganze sieht auch noch recht ansprechend aus und die Funktionen sind sehr gut integriert - Links aus den Tickets ins Wiki oder Links von Changeset-Bescheibungen in das Wiki oder das Bugtracking sind einfach zu machen und helfen natürlich gewaltig bei der Verwaltung der Softwareänderungen. Dazu kommt eine nette Timeline die Änderungen am System dann zeitlich dokumentiert und verlinkt - unter anderem auch auf einen sehr komfortablen Changeset-Browser.

Ich hab für TooFpy jetzt das ganze handgestrickte Zeugs weggeworfen und auf trac umgestellt. Allein schon die Möglichkeit meine bisher im Sourcetree verwaltete ToDo-Liste jetzt über Tickets den geplanten Releases zuzuordnen bringt eine Menge Überblick über das Projekt.

Yep, wer ein Softwareprojekt verwalten muss sollte sich definitiv trac mal angucken, denn wer nicht unbedingt Kontrollfetischist ist wird sicherlich mit der eher offenen Struktur von trac glücklicher als mit manchem overengineered Teil.

kenosis ist eine Python Library für ein einfaches P2P-Protokoll das auf XMLRPC aufbaut. Simpel und schlicht, allerdings ohne jegliche Form von Verschlüsselung - sollte also über extern verschlüsselte oder anderweitig gesicherte Wege benutzt werden.

Nitro ist ein Webframework für Ruby. Klar als Konkurrenz zu Rails ausgelegt adressiert es einige der Schwächen von Rails - zum Beispiel die recht mageren Object-Relation-Mapper in Rails über ActiveRecords. Nitro benutzt da Og. Auch sonst sind die Features deutlich besser ausgebaut - mehr Code, weniger Hype.

RBL Betreiber mal wieder

Nachdem ich schon im April drüber geschrieben habe, ists jetzt auch endlich im Heise Ticker: RFC-ignorant: Alle .de-Domains unter Spamverdacht. Die Ignoranten von RFC-Ignorant werden sicherlich ihre Meinung nicht ändern, aber vielleicht nimmt jetzt der eine oder andere Provider diese hirnrissige Sperrliste aus der Mailkonfiguration raus.

Fuck, langsam geht mir awstats.pl ziemlich auf den Senkel. Bin schon am Überlegen ob ich nicht doch wieder auf webalizer umsteige, der produziert nur doofen statischen Output. Kann aber leider auch weniger.

Privacy-Update unter OS X

In IRC, identd und Privacy hatte ich mich drüber mokiert das die Proxies mit SOCKS-Support eher dünn gesäht sind - mitlerweile ist das deutlich besser geworden. Denn X-Chat Aqua ist mitlerweile in einem Zustand der als sehr brauchbar bezeichnet werden kann - nach vielen Jahren Snak-Benutzung bin ich jetzt tatsächlich umgestiegen.

X-Chat Aqua unterstützt SOCKS und erlaubt es damit direkt tor zu benutzen. Allerdings ist das nicht SOCKS4A - von daher werden Nameserver-Auflösungen immer noch sichtbar. Idealerweise trägt man einfach die IP-Adresse des Servers ein, dann braucht keine Namensauflösung zu passieren.

Bei Jabber siehts mitlerweile mit PSI auch sehr gut aus - PSI ist unter OS X sehr brauchbar und die Darstellungsprobleme älterer Versionen sind auch behoben. Und PSI arbeitet ebenfalls mit tor zusammen.

Browsen über tor ging schon vorher problemlos, aber mit den aktuellen Mac OS X Builds von tor ist das ganze auch noch nett einfach zu installieren. Als Tipp: ich habe mir eine eigene Netzwerkkonfiguration angelegt, mit der ich die Proxy-Einstellungen leicht wechseln kann. Damit kann ich dann einfach im Apfelmenü Privoxy+Tor ein- und ausschalten wie ich es brauche. Funktioniert natürlich nur mit Browsern die ihre Proxy-Einstellungen aus den Systemeinstellungen holen.

ssh-Nutzung über tor ist mit dem ProxyCommand-Kram einfach machbar. Eine Anleitung ist in der Torify HowTo. Viele der dort genannten Tipps funktionieren auch unter OS X, da ja ein normales Unix drunter liegt.

Zu dem Bayern-Getöse

fällt mir nix weiter ein als ein herzhaftes: Weiter so, Herr Stobier! - ist doch wahr, einen besseren Wahlhelfter kann sich die Linkspartei doch garnicht wünschen als den tobenden Giftzwerg aus dem Hinterwald. Ok, seine Entgleisungen entberen nicht einer gewissen Peinlichkeit - schon ärgerlich wenn in Bayern ja angeblich die Leute so schrecklich schlau sind, aber der Landesvater mal wieder nicht kapiert was Demokratie bedeutet. Nunja, egal was rauskommt, Herr Stoiber, eines ist sicher: von Bayern werden wir nicht regiert werden. Und so wie sie gerade Frau Merkel demontieren, da ist plötzlich für die SPD wieder alles drin. Vielen Dank an Sie und Ihren Kollegen Schöhnbohm, die mit ihren hahnebüchenen Aussagen vermutlich mehr Ost-Wähler mobilisiert haben als Gysi und Lafontaine zusammen ...

Mac OS X Intel hacked to run on standard PCs

Ist ja schon bitter wenn OS X Intel schon gehackt ist, bevor es eigentlich verfügbar ist:

MacBidouille reports that the Apple Developer kit version of Mac OS X x86, released to developers in early June, has been "hacked" to work with a PC notebook. The report includes a video showing Mac OS X x86 booting natively on a Pentium M 735-based notebook.

Und das trotz TPM und ähnlichen Spielereien. Vielleicht sollte Apple doch wieder auf PowerPC zurückswitchen, das ist zwar nicht sicherer, aber wenigstens gibts keine Alternativhardware zum Spottpreis wie bei den Intels

RIP last.fm

In das Netzbuch: last.fm verhärmt sich selbst beschreibt Ralf wie last.fm sich aus der Realität verabschiedet. Auch ich werd mich wohl von meiner früheren Empfehlung jetzt verabschieden - propreitäre Streamingclients gibts schon genug, da brauchts keinen weiteren - vor allem nicht, wenn der nicht mal vernünftig funktioniert. Schade - war ne nette Sache um auf neue und interessante Musik gestoßen zu werden. Aber so nicht.

SCO-Patent-Fallout?

Jedenfalls wird drüber spekuliert, das die Klage einer EFax-Firma gegen Konkurrenten wegen Einsatz von Asterisk mit SCO und dem ganzen Mist drumherum zu tun haben könnte:

Bei Groklaw wird nun spekuliert, inwieweit es sich bei dem Vorstoß um einen allgemeinen patentrechtlichen Angriff auf freie Software handeln könnte. Anlass dazu gibt eine enge Verknüpfung zwischen der SCO Group und j2. So gehört zu den Unterstützern der Softwarefirma, die sich seit langem in einem heftigen Streit um das geistige Eigentum in Linux-Komponenten insbesondere mit IBM befindet, die Investmentfirma Krevlin Advisors. Sie ist auch Großanteilshalter bei j2.

Aber auch wenn an den Gerüchten nix dran ist wird das ganze sicherlich wieder mal idiotisch und lästig - und wieder ein Beweis dafür, das Softwarepatente und Businessmethodenpatente hirnverbrannter Quatsch sind. Auf jeden Fall könnte Asterisk(im Prinzip eine in Software realisierte Telefonanlage) demnächst ein weiteres Kampfgebiet werden - allein schon weil es sicherlich dem einen oder anderen Hersteller von kleineren Telefonanlagen als Bedrohung erscheinen mag. Und gerade der Markt der Telefonanlagen ist ja eh durchzogen von sehr seltsamen Verkaufsstrategien und noch seltsameren Vertragssituationen (nicht umsonst werden immer mal wieder Telefonanlagenwartungsverträge wegen Verstoss gegen die guten Sitten als ungültig erklärt).

XchatPython ist ein Plugin für X-Chat mit dem man Erweiterungen in Python schreiben kann.

Coooool!

BlackDog ist ein PowerPC-Rechner mit 64 MB Speicher und 512 MB Flash-Disc in einem Mini-Gehäuse das man in jeden PC mit Windows oder Linux in den USB-Port stöpseln kann. Dort übernimmt dann der PowerPC-Prozessor die Tastatur, die Maus und den Bildschirm und startet sein Debian Linux, dessen Desktop man dann auf dem PC sieht.

Das Teil läuft nur aus der USB Stromversorgung und hat noch zusätzlich eine biometrische Zugangssicherung per Fingerabdruck. Wow. Schöne kleine Hackerkiste für unterwegs, man muss nur einen Wirtsrechner vorfinden.

Und es ist komplett in der Architektur offen und hackbar - es gibt sogar einen Hack-Wettbewerb um interessante Anwendungen dazu zu entwickeln. Wobei mir schon klar wäre was ich draufpacken würde - all die notwendigen Netzwerktools. Ich glaube ich muss mal in der Firma den Chef motivieren das wir dringend mal gucken müssen was man mit so einem Teil machen kann. So einen heftigen haben wollen Reflex hatte ich schon lange nicht mehr.

Informationen zur Canon EOS 5D aufgetaucht

Also die Gerüchte zur Canon EOS 5D klingen ja schon recht interessant - eine Vollformatsensorkamera für 3500 könnte mich jedenfalls reizen. Die bisherigen Kontrahenten im Vollformatsektor waren ja utopisch teuer (jaja, ist die 5D eigentlich auch, aber die Utopie ist etwas näher gerückt )

Oracle Cluster File System 2 für Linux

Das Oracle Cluster File System könnte schon eine nette Alternative zu GFS und Coda sein - jedenfalls wenn das hier wirklich passiert:

Der für den Linux-Kernel 2.6 verantwortliche Linux-Entwickler Andrew Morton will das Oracle Cluster File System in der Version 2 möglichst bald in den offiziellen Linux-Kernel aufnehmen. Schon Linux 2.6.14 könnte das OCFS 2 enthalten und wäre dann die erste Cluster-Komponente im offiziellen Linux-Kernel.

Den bisherige Clusterfilesysteme kranken gerade unter der fehlenden Integration - meist kann man sie eben nicht in jeder Kernelversion benutzen. Für mich interessant ist natürlich noch wie selbstständig die Knoten wirklich sind und ob es auch beim Oracle Cluster Filesystem einen single point of failure gibt, wie in es z.B. der Lockingdaemon bei OpenGFS ist. Bisher waren wir in der Firma nicht sehr erfolgreich in der Evaluierung von Clusterfilessystemen, eigentlich waren alle irgendwie dämlich ...

The Hidden Boot Code of the Xbox

In The Hidden Boot Code of the Xbox schreiben die X-Box-Linux-Programmierer wie der Sicherheitscode der X-Box aufgebaut ist und wie Microsoft in 512 Byte Code gleich 3 Fehler eingebaut hat. Lots of kindergarten security mistakes. - wie Bruce Schneier es nennt.

Schön ist auch das Fazit des Artikels:

So with the first version of the MCPX, Microsoft was too naive and apparently did not understand basic security concepts. After they had learnt their lesson, they designed a pretty good system with the second version of the MCPX - but the implementation still contained at least three security holes (Visor, MIST, TEA). They were too fast releasing a new version of the MCPX, spending a lot of money in trashing tons of already manufactured MCPX chips and manufacturing updated ones, apparently without any further code audit which should have revealed the security holes.

512 bytes is a very small amount of code (it fits on a single sheet of paper!), compared to the megabytes of code contained in software like Windows, Internet Explorer or Internet Information Server. Three bugs within these 512 bytes compromised the security completely - a bunch of hackers found them within days after first looking at the code. Why hasn't Microsoft Corp. been able to do the same? Why?

Genau. Wieso kriegt Microsoft sowas nicht hin? Wieso fällt gerade Microsoft immer wieder bei Security dermaßen auf die Schnauze? Und kommt mir jetzt nicht mit der albernen Ausrede das die Bugs bei Microsoft nur deshalb so schnell gefunden werden weil das so viele User benutzen - das sind hier banalste Grundlagenkenntnisse die erforderlich wären. Das ist einfach nur schlampig.

Und nun, Herr McBride?

Shit hits Fan für SCO:

A: There was a release of SCO LinuxWare release 7.1.2 that included the Linux kernel personality and SCO Linux-release 7.1.3 included the Linux kernel personality. At first when it first shipped it did include the Linux kernel packages which were subsequently removed.

Find ich schon irgendwie passend, wenn SCO erwischt wird das es selber den Linux-Kernel - der ja immerhin unter GPL steht - in ihren Produkten zumindestens zeitweilig benutzt und mit ihnen ausgeliefert haben. Könnte mit ein Grund sein, warum sie jetzt versuchen die GPL als unamerikanisch und nicht verfassungskonform zu denunzieren

Yep. Macht Sinn.

Nicht Intelligent Design, sondern das Google-Bombing des Ausdrucks natürlich.

EU-Kommission mal wieder im Alleingang

Diesmal mit direkter Attacke auf den gesunden Menschenverstand und das Bio-System: EU-Kommission genehmigt Genmais-Import:

Umstrittener Genmais darf künftig als Futtermittel in die EU-Staaten eingeführt werden. Die EU-Kommission traf damit eine Entscheidung im Alleingang.

Ich wiederhols nochmal: ich bin eigentlich Pro-EU eingestellt und sehe langfristig nur in einer funktionierenden Europäischen Union einen wirklich gangbaren Weg für unsere Region. Aber nicht mit so einer EU-Kommission, in der einfach mal eben willkürliche Entscheidungen getroffen werden die jedem gesunden Menschenverstand zuwiderlaufen. Und das alles nur zum finanziellen Wohl eines nicht-europäischen Unternehmens, dessen einziges Ziel es ist den europäischen Markt zu knacken und genauso zu dominieren wie andere Märkte auch schon.

Man reiche Darl McBride die Frog Pills

denn jetzt dreht er völlig ab:

Im Einzelnen zählt McBride zehn Punkte auf, die für SCO und gegen Linux sprechen. So sei der OpenServer wesentlich preiswerter als Linux-Systeme, die mit versteckten Jahreslizenzen arbeiten, habe einen überlegenen Kernel und biete wesentlich höhere Sicherheit als Linux-Systeme, bei denen Sicherheitslücken wochenlang offen bleiben würden. Mehrfach betont McBride, dass seine Firma Eigentümer von Unix ist und aus diesem Grunde höheres Vertrauen bei der Kundschaft besitze. Außerdem sorge SCO als Eigentümer dafür, dass es keine Absplitterungen inkompatibler Systemvarianten gebe.

Selten einen so kompakten Block von Bullshit gesehen

Mathematische Unkenntniss

Es ist ja schon fast modern zu erzählen wie schlecht man in Mathe war (ich nicht, ich war sehr gut in Mathe - und ja, mir hat Mathe sehr viel Spaß gemacht), aber wenn man dann von James Gosling die Fragen zu Sinus/Cosinus und den Sinn der Periodendefinition mit 2*Pi liest, dann packt man sich schon an den Kopf. Slava Prestov sieht darin immerhin die Erklärung warum die meisten Programmierer saublöde Fragen zu simpelsten mathematischen Problemen stellen, wenn selbst die Grössen der Branche einfache Trigonometrie nicht kapieren ...

International Components for Unicode ist eine Library von Referenzimplementierungen der ganzen Unicode-Standards, speziell die Transformation, Normalisierung und Sortierung von Zeichen betreffend, aber auch viele andere Lokalisierungsprobleme wie Datumsformatierung etc.

PyICU ist eine Integration der ICU C++ Schnittstelle in Python. Scheint recht vollständig zu sein, was den Umfang angeht. Integration mit Python Stringdatentypen ist ebenfalls gegeben.

man lernt doch nie aus

Ich hab ja bisher gedacht ich würde die meisten Tricks von ssh drauf haben. Aber ich bin dann doch mal über einen gestolpert, der banal und simpel ist, mir aber noch nicht bekannt war: die Option ProxyCommand. Mit dieser Option kann man für einen angegebenen Host einen Tunnel definieren der aufgebaut wird, bevor die eigentliche Verbindung gemacht wird. Mit dem Programm nc (Netcat) auf dem Rechner eins vor dem Zielsystem kann man sich damit wunderbar durch eine Kette von Firewalls tunneln, vor allem wenn man mit Auth-Forwarding arbeitet. Einfach in der .ssh/config einen Bereich ähnlich diesem einbauen:


 Host safe
 Protocol 2
 User me
 HostName 192.168.0.42
 ProxyCommand ssh door nc -q 0 safe 22

Hier wird jetzt einfach bei ssh safe intern mittels ssh door eine Verbindung zum Rechner door aufgebaut und dann dort eine Netcat-Verbindung zum ssh-Daemon auf dem eigentlichen Zielrechner safe erstellt. Das ganze kann man auch über mehrere ssh Hops wunderbar nutzen um dann direkt zwischen zwei Systemen durch eine Kette von Firewalls Files zu transportieren. ssh ist schon genial, wenns das nicht gäbe müsste man es glatt erfinden

(in meinem Fall brauchte ich das für darcs - das kann nämlich nur über ssh Repositories pushen)

auf dem Weg in die Medien-Monokultur

Denn Springer übernimmt ProSiebenSat.1 - und dürfte damit ihre neoliberale Meinungskampagne demnächst multimedial starten und ihren Müll dann auf allen Kanälen senden. Eine Demokratie benötigt eine unabhängige, starke Presse - aber eine, die nicht eine eigene politische Agenda verfolgt. Von daher können wir wohl einem weiteren Stückchen Demokratie gute Nacht sagen, wenn ein Konzern wie Springer demnächst die Medienkluft überbrückt.

Connecting databases to Python with SQLObject ist eine ganz nette Einführung in SQLObject - einen der netteren Object-Relation-Mapper für Python.

Umwelt-Ausverkauf in D-Dorf

War ja zu erwarten, die Landesregierung stellt umweltpolitische Ziele vor - und was bringt das:

Auch bei der neuen NRW-Landesregierung werde der Umweltschutz "hohen Stellenwert" haben - verspricht Umweltminister Eckhard Uhlenberg. Doch den Einfluss der Naturschutzverbände will er verringern.

Und dann noch so diverse andere Nettigkeiten, im Prinzip eine Demontage dessen was die NRW-Umweltpolitik gegen die ziemlich schlaffe Haltung des Bundes bisher immer ausgezeichnet hat (und wohl ein Verdienst von Frau Höhn war - nicht das jemand glaubt die SPD in NRW wäre sonderlich umweltbewusst gewesen).

Unicode HOWTO für Python. Sollten Python-Programmierer lesen.

Crypt::PasswdMD5 ist ein Perl-Modul das MD5 Passwörter so hashed wie es Linux und Solaris auch tun.

md5crypt.py ist der gleiche Algorithmus für MD5 Passwörter, nur diesmal in Python.