Linkblog - 26.1.2010 - 19.2.2010

ZODB - a native object database for Python — ZODB v3.9.0 documentation - weil ichs immer wieder vergesse: die ZODB gibts auch standalone, ohne das Monster Zope oben drüber. Und bei direktem Zugriff von Python bietet ZODB einige sehr interessante Features. Immer noch eine der am weitesten ausgebauten echten Objekt-Datenbanken für Python (aber leider immer noch keine allgemeine Query-Language auf die Datenbank zur effizienteren Behandlung von Objektmengen).

Foto verboten - noch können wir hoffen, dass der Britische Weg sich nicht in der EU durchsetzt. Allerdings hat die EU schon öfter mal völlig bescheuerte Ideen übernommen. Für Hobbyfotografen, die ja üblicherweise keine Registrierung von Fotos bei einer anerkannten Agentur haben (wir können davon ausgehen, dass Fotoagenturen weiterhin dafür sorgen werden, das ihre eigenen Rechte sichergestellt sind), wäre das ganze jedenfalls ziemlich katastrophal.

The dark side of Dubai - mal eine etwas andere Geschichte über Dubai. Wenn man all die protzigen Bauten abzieht, bleibt eben nur eine Dikatur übrig, die auf Lohnsklaverei und Täuscherei basiert. Und jetzt gehört der Laden Abu Dabi.

django-piston - muss ich mir auch mal näher angucken, es soll gerade den Bau von Web-APIs mit Django erleichtern. Und einige meiner Firmenprojekte könnten davon profitieren.

Fuck you, Google « Fugitivus - warum Google so richtig ins Klo gegriffen hat mit Buzz. Dieses "automatisch folge allen regelmäßigen Kontakten" ist so ziemlich die saublödeste Idee überhaupt, speziell mit deren Idee von opt-out-not-possible. Ich sags ja schon länger, nur weil die "don't be evil" als Motto haben heisst das nicht, sie hätten auch "don't be stupid". Viel blöder als die Einführung von Buzz gehts schon bald nicht mehr.

Murky - netter kleiner GUI-Client für Mercurial für OS X. Sieht schon ganz brauchbar aus, man kann recht leicht sich durch die Historie eines Projektes navigieren, sich Differenzen anzeigen lassen etc. - geht natürlich auch alles mit der Shell, aber manchmal ist es schlicht simpler mit einerm GUI zu arbeiten.

Tomboy : Simple note taking - weil ich mal wieder danach geguckt hab: tuts mitlerweile auch unter OS X. Allerdings ist das noch extrem buggy (beim Scrollen Artefakte, keine Standardtastenbelegung, Fenster vergrößern muss man blind nach der rechten unteren Ecke zippeln, der Anfasser fehlt). Basiert halt auf recht frischen Libraries die alle noch nicht so wirklich auf dem besten Mac-UI-Stand sind. Aber um z.B. auf die Notizen aus dem Linux-Tomboy zuzugreifen und über Dropbox zu syncen, dafür reicht es schon aus.

Front Range Pythoneering: Realizing Jython 2.5 - da stehts weiter unten drin. Jython hat ein GIL als witziges Easteregg im future Modul (das mit dem zukünftige Sprachfeatures als "Beta" verfügbar gemacht werden). Also kein GIL, sondern nur ein Joke. Hätte mich auch anders stark verdutzt.

Interactive Python GIL Visualization [dabeaz] - sehr interessante Auswertung der Auswirkungen des GIL in multithreaded Python Projekten. Ob Jython (kein GIL, threading auf Basis der Java-Standards) da eine Aushilfe ist?

maven-jython-plugin - Maven Jython Plugin - hmm, der Jython-Support für Maven ist ziemlich veraltet - das Artifact geht nur gegen 2.2.1 und auch das Plugin geht nur auf 2.2.1. Da fehlt dringend wohl ein bischen Updaten.

Proteste gegen G8: Pfeifkonzert für Ludwig Spaenle - "Zwar hätten die Schüler das Recht auf freie Meinungsäußerung und Demonstration, dies solle jedoch in der unterrichtsfreien Zeit geschehen." - genau, protestiert doch da wo es kein Schwein interessiert und es keiner merkt. So stellen sich Politiker Demokratie vor.

Security-Forscher: Bezahlen mit Kreditkarte und PIN unsicher - Golem.de - aber angeglich ist das Zahlen mit EC-Karten ja absolut sicher.

Bill Clementson's Blog: Elephant and Rucksack - Comparison of two CL Open Source Prevalence packages - weil es mich auch im Moment mal wieder interessiert, etwas Common Lisp. Elephant und Rucksack sind wohl die interessanteren Persistenz-Lösungen für Common Lisp im Moment. Rucksack ist leider nicht asdf-install-tauglich, da ist viel Handarbeit nötig.

Presenting django-devserver, a better runserver. - interessante Idee, eine Erweiterung des runserver die SQL Statements logged und Cache-Informationen liefert. Das könnte für mein derzeitiges Django-Projekt recht interessant sein, da ich dort zeitweilig etwas komplexeres SQL produziere. (und ja, ich hacke wieder mit Django herum, eventuell kommt ja sogar was veröffentlichbares dabei raus - ist aber primär ein Arbeitsprojekt).

Jesus, Kirk and Vinny - über so Sachen und so.

Schneier on Security: All Subversive Organizations Now Must Register in South Carolina - es ist beruhigend, das bei all dem Schwachsinn der hier abgeht, die USA immer noch einen drauf setzen können. Würden sich bitte alle subversiven Elemente in South Carolina melden? Kostet auch nur 5 Dollar ...

Twitpic / Astro_Soichi - twitter from space ... (der Fotograf sitzt in der ISS)

persistence.js: An Asynchronous Javascript ORM for HTML5/Gears « I am Zef - sehr interessant, ein Object-Relational-Mapper in JavaScript, der Objekte auf HTML5 Datenbanken abbildet. Sowas könnte sehr interessant für Offline-iPhone-Webanwendungen sein, denn nackte Datenbankprogrammierung (nackte Datenbank, nicht nackter Programmierer) macht nicht wirklich immer Spaß.

Bericht: Post plant DE-Mail für 20 Cent - wenn ich so einen Mist lese, frag ich mich wirklich was für ein Kraut die Pappnasen bei Post und 1&1 denn da so rauchen. Legal kann das Kraut nicht sein, wenn es solche absurden Wahnvorstellungen produziert. Ganz abgesehen davon, daß eine "sichere Onlinekommunikation" von solchen Läden betrieben sowieso eine Farce ist.

Simtec Electronics Entropy Key - falls man mal echte Zufälligkeit braucht.

Faster or Lazier Pagination - interessanter Ansatz, einfach nicht die Menge der Sätze ermitteln, sondern stattdessen eine Anzahl Seiten annehmen und diese aktualisieren wenn man auf spätere Seiten zugreift. Ein bischen ähnlich zu manchen Websites die nur einen Ausschnitt der Seitenliste als Navigation anbieten - dafür braucht man dann nicht wissen wie viele Seiten es wirklich sind. Google mogelt ja auch, in dem die Seitenanzahl maximal beschränkt wird. Für große Datenmengen mit langsamem count(*) sicherlich sehr sinnvoll und evtl. könnte man das auch kombinieren mit gecachten maximalen Seitenzahlen für verschiedene Queries, so das beim nächsten Mal die Vermutung über die Menge schon präziser ist.

Please read: Security Issue on AMO « Mozilla Add-ons Blog - war ja nur eine Frage der Zeit, bis die ersten Firefox-Extensions mit Trojanern drin verteilt würden und durch die Prüfung bei Mozilla durchrutschen. Erweiterungen sind eben genau das - Codestücke die im selben Sicherheitskontext wie Firefox selber laufen. Ich glaube auf Dauer braucht es eine gänzlich andere Architektur mit weitaus stärkerem Sandboxing für Anwendungen und Erweiterungen wenn wir das sauber in den Griff bekommen wollen.

Using ctags in Vim - amix.dk - ctags ermöglicht die Navigation in größeren Sourcen und ganzen Projekten anhand von Definitionsstruktur. Unter Ubuntu kann man einfach mit vim-addons install taglist dieses Plugin installieren und dann fleißig benutzen. Ziemlich genial.

Vim 7: Turning completion on - amix.dk - nachdem ich mich eine Weile mit IDEs beschäftigt hab, aber irgendwie feststellen muss ich bin nicht wirklich IDE-kompatibel, VIM kann auch Symbolvervollständigung - und auch für Python. Recht einfach einzurichten und recht praktisch für den Zugriff auf Systemfunktionen.

collision detection: Molecular secrets of the "iron-plated snail" - eisengepanzerte Schnecken die in hydrothermischen Quellen 3 Kilometer unter der Meeresoberfläche leben. Steampunk-Schnecken?

mongoengine - Python-API für Zugriff auf MongoDB mit einer an den Django-ORM angelehnten Struktur.

BookmarksExtension - Mercurial - Mercurial hat mit den Extensions immer wieder Überraschungen parat. Die Bookmarks sind nett für schnelle kleine Wartungsfixes für die man nicht ein eigenes Repository aufbauen will, aber auch nicht einen in-repository Branch benutzen will (weil dadurch die History übertrieben komplex wird).

Gericht: E-Mail-Abmahnungen sind zulässig - immer wenn ein Beitrag mit "Das Hamburger Landgericht" beginnt, weiss ich schon, da gibts wieder Blödsinn von der technisch inkompetentesten Stelle unter den Landgerichten. Wie gut, das es da noch Instanzen drüber gibt, die dann doch nicht mehr ganz so oft durch solchen Dummfug auffallen. Die Abmahnanwälte wird es sicherlich freuen, das sie demnächst einfach nur an irgendwelche veralteten Mailadressen oder wohin auch immer schreiben brauchen - ist doch wurscht, ist ja zugestellt ...

InfiniDB 1.0.2: Analytische Datenbank Engine für Datamining - Golem.de - hmm, auf MySQL aufbauend - keine Ahnung ob ich das als Empfehlung oder Abschreckung betrachten soll. Andererseits wäre eine DB speziell für Datamining-ähnliche Anfrageprofile durchaus manchmal sinnvoll - müsste ich also mal ausprobieren.

Pollution in 1/8 | RIPE Labs - 1/8 und 27/8 sind jetzt normale IP-Adressen - und es gibt Konflikte mit Leuten die speziell 1/8 für diversen Kram benutzt haben, weil er ja schon seit 1981 "unbelegt" ist ...

Time Capsule Memorial Register - hmm, ob ich da auch irgendwann meine TimeCapsule listen muss? Ich hab ja auch noch eine aus der ersten Generation ...

homebrew - GitHub - neue Packagemanager für Unix-Software unter OS X. Ein paar interessante Ansätze, anders als Fink und MacPorts (letzteres ziehe ich normalerweise vor) setzt es auf schon installierten Tools und Libs auf und installiert daher nicht das halbe Internet wenn man nur ein kleines Tool braucht. Allerdings hat es derzeit nahezu keinen Support für Dependencies, und die Auswahl an Pakete ist noch recht schmal. Und das Ergebnis ist halt wirklich nur selbstkompilierte Tools mit etwas Link-Verwaltung drumherum.

The Definitive Guide to Jython — Jython Book v0.91 documentation - ist drin was drauf steht. Bezieht sich auf Jython 2.5.1 und gibts auch als (aktualisiertes mit zusätzlichen Inhalten, die Open Source Version des Buches ist noch nicht voll aktualisiert) totes Holz von APress.

CLiki : FirstStepsWithAsdfAndAsdfInstall - weil asdf und asdf-install alles andere als intuitiv sind, hier ein Link auf ein Tutorial

HintsForAsdfAndOpenmcl – Clozure CL - und das ist wie man generell das asdf-install auf Clozure CL zum Laufen kriegt.

Alex Payne — On the iPad - "For now, though, I remain disturbed. The future of personal computing that the iPad shows us is both seductive and dystopian. It’s not a future I want to bring into my home."

Apple buys P.A. Semi chip designer, Intel says wha? - weil letztens beim Stammtisch die Diskussion war, ob Apple wirklich den A4 im iPad selber designed: in 2008 haben sie eine Chip-Designer-Schmiede gekauft, deren Chef einer der StrongArm Architekten war ...

AppScale, an OpenSource GAE implementation - interessantes Projekt das die Google App Engine API nachbildet als Open Source Lösung für Selberhosting.

Clozure CL - nicht zum ersten Mal gelinkt, aber die derzeitige 1.4 Distribution ist mitlerweile richtig nett geworden, es gibt die ersten IDE Tools (Apropos, Listener, Inspektor, Editor) in einer benutzbaren Form und das Cocoa-Framework und die ObjC Bridge sind auch schon recht ausgereift. Außerdem ist es eines der am schnellsten startenden Lisps für den Mac. Bietet nette Möglichkeiten mal mit OS X APIs rumzuspielen.

Eucalyptus Community - und hier ein Projekt welches die AWS APIs (EC2, S3 und EBS) nachbildet. Interessant wenn man AWS-gehostete Systeme baut und später auf eigene Systeme wechseln will. Cloud ist ja ganz nett, aber man sollte eine Exit-Strategie haben für den Fall, dass der Anbieter die Grätsche macht. Passiert nicht? Erzählt das den potentiellen Kunden der SUN Cloud Lösung, die gerade von Oracle geschreddert wurde ...

Mindestlohn-Urteil: Postdienstleister PIN will Löhne senken | tagesschau.de - toll wie die Unternehmer gleich in die Taschen ihrer eh schon nur schlecht bezahlten Mitarbeiter greifen. Irgendwomit muss ja der neue Swimming-Pool bezahlt werden. Tariflich abgesicherte 6.50 im Osten und 7.50 im Westen? Das ist keine Absicherung, das ist eine Beleidigung. Für so einen Stundensatz würden die Unternehmerärsche nicht mal guten Morgen sagen. Soviel zur sozialen Verantwortung von Unterehmern - wenn das nächste Mal das Merkel darüber schwafelt, erinnert sie mal daran wie bereitwillig Arbeitnehmer von diesen ach so sozialen Arbeitgebern abgezockt werden.

Apple - iPad - Technical specifications and accessories for iPad. - zwei Monate in denen sich die Technik-"Experten" die Finger fusselig schreiben können.

denkspuren: Factor @ Heilbronn University - da hat jemand Factor als Programmiersprache in Kursen an der Uni benutzt und scheint recht angetan. Ich selbst mag Factor ja auch - so ein bischen kommt bei der Factor-IDE das alte Lispmaschinen-Feeling rüber und die Sprache ist einfach nett kompakt. Allerdings merke ich oft, wenn ich damit herumspiele, dass ich dann doch sehr viel Zeit darauf verwende die passenden Abstraktionen zu finden - es gibt einfach Berge von mitgeliefertem Code und die Dokumentation ist zwar gut, aber es fehlt einfach ein bischen an Tutorials zur Nutzung des Codes. Best Practices und Cookbooks wären gefragt. Spaß macht Factor aber trotzdem.

Mainz: Brüderle kein Landesparteitags-Delegierter mehr - lustig, die FDP. Versehentlich einen Bundesminister nicht mehr als Landesdeligierten wählen. Ooops, und wech isser. Ich glaub, sowas kann auch wirklich nur der FDP passieren.

django-extensions - sehr nützliche Tools für Django die sich in den Manage mit einhängen. Zum Beispiel ein Diff für SQL.

Introducing Bibble 5 - man sollte die alten Bekannten nicht vergessen. Bibble 5 gibts nämlich auch in einer Linux-Version und Bibble 5 hat auch Asset Management (was LightZone ja fehlt). Massiver Nachteil von Bibble: die weigern sich DNG einzubauen mit IMO recht albernen Argumenten ("wir wollen nicht mit Adobe-konvertierten Files arbeiten und erklären warum die Ergebnisse anders aussehen als die aus originalem RAW"). Was dazu führt, das z.B. Kameras mit direktem DNG Output (Ricoh, Leica) nicht unterstützt werden und z.B. meine konvertierten Altformate aus der seit vielen Jahren nicht mehr verfügbaren Kodak DCS 520 auch nicht unterstützt werden. Schon ziemlich blöd, weil ansonsten ist es recht nah an Lightroom im Aufbau.

kbarni's bibble plugins - Plugins - diverse Plugins für Bibble, teilweise frei. Wenn ich tatsächlich mich mit Bibble beschäftige, wäre das sicherlich auch ein wichtiger Punkt.

LightZone « lightcrafts - durch Zufall drüber gestolpert, nette Bildbearbeitungssoftware für RAW-Fotos. In Java geschrieben, daher auf allen Plattformen verfügbar (Windows, MacOS X und Linux). Keine brauchbare Verwaltungssoftware für das Bilderarchiv dabei - das muss man extern realisieren - aber Bilder werden non-destruktiv bearbeitet, Ergebnisse in JPG Files gespeichert (inkl. des Stacks angewendeter Tools). Alles in allem sieht es ganz nett aus und könnte eine Alternative zu LightRoom sein, wenn ich noch für Linux eine brauchbare Bilderarchiv-Software finde (jedenfalls eine brauchbarere als ich bisher hab - leider unterstützt Picasa ja keine Panasonic-RAW in der Linux-Version).

Scala 2.8.0 Beta 1 | The Scala Programming Language - Scala macht sich auch fertig für die nächste Release. Die Erweiterungen und Änderungen klingen recht gut - und der Impact auf bestehende Sourcen scheint gering zu sein.

Carl Bildt: Digitale Mauern einreißen - die Tatsache, das Schweden gerne als eines der Vorbilder in Deutschland für erfolgreiches Internetfiltern gezogen wird und die Tatsache, das die USA massiven Druck ausüben um Glücksspiel im Internet für Amerikaner unzugänglich zu machen, naja, das lassen wir dabei dann mal einfach außen vor. Ist ja viel einfacher von autoritären Regierungen zu schwafeln und die eigenen Bestrebungen der Zensur im Internet einfach unter den Teppich zu kehren. Von daher wird sich sicherlich auch die deutsche Regierung mit ihrer derzeitigen Zensuraffinität nicht davon angesprochen fühlen.