Recent posts (max 20) - Browse or Archive for more

Lockless Algorithms

Schon lange habe ich keine so passende Visualisierung mehr für etwas gesehen:

Lockless Algorithms / Schlosslose Algorithmen:

http://i.imgur.com/0MfvQb3.gif

 via devopsreactions

Melderecht Datenweitergabe jetzt ohne Zustimmung

Das ist doch ein Juwel: Melderechter sollen in Zukunft meine Daten an jedes Industrieunternehmen weitergeben dürfen - wenn die Firma die Daten für ein "update" schon vorhandener Daten anfragt.

Was pikanterweise die Voraussetzung fast jeder Anfrage ist.

Dem kann man dann gar nicht mehr widersprechen - de fakto hat man also keine Möglichkeit mehr dieser Geschäftspraktik der Meldeämter wenigstens für sich persönlich Einhalt zu gebieten.

Compact hält dagegen und hofft auf 200.000 unterstützer in möglichst kurzer Zeit:

 http://www.campact.de/melderecht/sn1/signer

Dafür!

SSL Certificate Trouble

If you should ever stumble upon this bug, consider yourself very lucky that I have found the solution to this already, because it took me _AGES_ to figure this out. No shit.

So here's the problem: We used a self signed certificate on on of our servers and curl and all tools relying on curl just couldn't connect to this server at all (with certificate validation). Despite the fact that the root certificate that signed the server certificate was happily in my keychain and marked as trusted.

The solution first: Turns out that the Keychain will eat certificates in many formats, specifically it supports DER and PEM. curl however can't use the DER certificate in the keychain and just reports it as missing. Exporting the certificate, converting it to PEM and then reimporting it (making sure to remove the DER version beforehand) fixed it.

I converted the file with this command

openssl x509 -inform DER -in some.ser.ver.der -out some.serv.ver.pem

Here's some of the error messages I got:

% curl -I https://some.serv.ver -v
* About to connect() to some.serv.ver port 443 (#0)
*   Trying some.ip... connected
* Connected to some.ser.ver (some.ip) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS alert, Server hello (2):
* SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
* Closing connection #0
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html

curl performs SSL certificate verification by default, using a "bundle"
 of Certificate Authority (CA) public keys (CA certs). If the default
 bundle file isn't adequate, you can specify an alternate file
 using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
 the bundle, the certificate verification probably failed due to a
 problem with the certificate (it might be expired, or the name might
 not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
 the -k (or --insecure) option.

If you hit this brick wall - hope this helps you too.

Mappei Stützen und Rechnungsstellung

Gerade habe ich endlich für mein GTD-System ein super-Zubehör gefunden,  Mappenstützen von Classei. Der große Vorteil davon: Die Mappen stehen in den Boxen auch stabil wenn diese nicht voll sind - damit kann man seine GTD-Ablage viel entspannter aufbauen. :)

Und noch ein witziges Detail: Classei gewährt 2% Skonto wenn man zügig bezahlt. Das bedeutet natürlich das sie eigentlich 2% mehr verlangen, wenn man nicht zügig bezahlt. Ich wette aber, dass das viele Leute dazu veranlasst schnell zu bezahlen. Und das finde ich einen schönen Trick. :-)

Musik ist doch was feines

Iranische Männer weinen nicht...

... hat Ihm seine Mutter beigebracht als er ein Fahrad wollte dass sie sich nicht leisten konnte. Und dann weinte er so stark dass er sein Auto nicht mehr weiter fahren konnte und am Straßenrand anhalten musste.

 http://www.thegreenwave-film.com/

Dieser Film hat mich tief traurig gemacht, weil es Länder wie den Iran gibt, in denen so viele Menschen nicht ihre Freiheit genießen und so sorgenfrei aufwachsen und leben können wie ich das hier konnte und kann.

Sehr sehenswert.

Ägypten

 http://twitpic.com/3u6gvc

Dabei läufts mir jedesmal wenn ich das anschaue kalt über den rücken.

Umfragen und Ergebnisse - so gehts!

Viel zu selten kriegt man mal bescheid wenn man an einer Umfrage / Untersuchung teilgenommen hat und dann endlich die Ergebnisse vorlegen.

Um so schöner wenn das mal funktioniert!

 Die Uni Augsburg hat das mal richtig gemacht!

Und dann auch gleich  zur nächsten Runde eingeladen. Jawohl!

Die meisten wissenschaftlichen Ergebnisse sind falsch

Geiler Titel eh? Trotzdem das Ergebnis gut replizierbarer wissenschaftlicher Forschung. Hach die Ironie.

 Hier gibt es dazu einen sehr schönen Artikel. (via fefe)

Liquid Feedback

 Darauf bin ich heute gestoßen.

Interessant.

Was mir durch den Kopf geht: Schade, What goes around comes around, wie geht es mit Liquid bei den Piraten weiter? Wie geht es bei dem Projekt weiter wenn die haupt-Triebfeder nicht mehr treibt?

Mal nachdenken.

Angst vor Badewannen?

Diese ganze Terror-Panik-Mache geht mir sowas von auf den Geist - das ich in Diskussionen dazu schon immer ganz ungemütlich werde.

Und immer fallen mir dann die entscheidenden Argumente dazu nicht ein - zum Beispiel zu so einem Security-Theater wie gerade am hier am Bahnhof, wo irgend ein Arsch eine Tüte hat stehen lassen und für Stunden der ganze U-Bahnhof gesperrt war und alle U-Bahnen weiträumig umgeleitet / gesperrt wurden.

Grah!

Da kann ich mich doch nur einem  Blogpost von Bruce Schneier anschließen:

I am not afraid of terrorism, and I want you to stop being afraid on my behalf. Please start scaling back the official government war on terror. Please replace it with a smaller, more focused anti-terrorist police effort in keeping with the rule of law. Please stop overreacting. I understand that it will not be possible to stop all terrorist acts. I accept that. I am not afraid.

Jawoll!

Bitte anschließen - und  das Video dazu kucken.

Nukleare Abschreckung

Bei den Gorleben Protesten kriegt man ja inzwischen doch eine ganze menge gute Informationen - sogar manchmal über die großen Medien. Und man interessiert sich auch mal ein wenig zu dem Thema.

Sehr gut gefallen hat mir dabei  diese Quarks & Co Sendung die ich hier auch wärmstens weiterempfehlen möchte.

Vor allem war mir überhaupt nicht klar WIE groß die Katastrophe in der Asse derzeit eigentlich ist.

Anschaubefehl.

Ein paar Gedankenanstöße:

  • Wenn es eine Stelle gibt an der so gegen sämtliche Regeln des Verstandes und der Sicherheit verstoßen wurde
  • Dann gibt es in der Nähe von dieser Stelle noch mehr ähnliche Probleme
  • Eines davon  zum Beispiel das AKW Biblis. Die Techniker dort wollen es nicht mehr Reparieren da sie dann "... mit einem Bein im Gefängnis ständen...".
  • Jetzt bitte genau nachdenken wie viele dieser Problemfälle immer noch vor uns Geheim gehalten werden.

*grusel*

Update: Wer noch nicht genug gegruselt ist, dem empfehle ich  diesen Podcast mit Sebastian Pflugbeil der sich als Atomphysiker mal den Reaktor in Tschernobyl sehr genau angeschaut hat (er ist dort gewesen!).

  • Posted: 2010-11-19 18:53 (Updated: 2011-02-12 17:12)
  • Author: dwt
  • Categories: politik
  • Comments (0)

Interessante Details zur Castor Lieferung

  1. Die Castoren sind (durch die Strahlung?) 120 grad heiß wenn sie geliefert werden, Eier die man darauf wirft verkohlen sofort. :-)
  2. Die Castoren müssen erst mal 30 Jahre auskühlen bevor sie überhaupt in einer Salzmine endgelagert werden können
  3. Diese 30 Jahre stehen sie in einer Blechhalle nicht weit von Gorleben und strahlen da (hoffentlich nicht) vor sich hin
  4. Bevor sie in Gorleben eingelagert werden können müssen sie noch in kleinere Behälter 'Pollux' genannt umgefüllt werden
  5. Die Technologie dafür gibt es noch gar nicht
  6. Gorleben als Endlager ist noch gar nicht genehmigt

Krass.  via

Unsere Obsession mit der Shell

Grade dachte ich mir ich mache mal wieder zum Spaß etwas an einem Open Source Projekt, checke es aus und will es mal bauen um etwas im Code herum zu lesen - und das erste was mir passiert ist das der Build-Prozess einfach irgendwann verstirbt.

Nach einiger Debugging Zeit stellt sich dann heraus das das selbstgestrickte build-system (eine Sammlung von Shell-Scripten) halt nicht mit spaces im Pfad zu den Sourcen klarkommt.

Gnarf! Wieso macht man sowas in Shell? Muss das sein?

Ok, aber es gibt ja workarounds, und die kenne ich ja auch und die lassen sich ja auch relativ einfach einbauen. ABER: Nicht mal die Abhängigkeiten ([ pkg-config] in diesem Fall) baut mit spaces im Pfad.

ARGH!

Und natürlich haben die ein [ Autohell] buildsystem an das ich nun wirklich nicht ranfassen will. :-(

Wie sollen wir als Softwareentwickler eigentlich irgendwann zu dem Punkt kommen wo unsere Software auch nur so etwas einfaches wie Pfade korrekt verarbeitet - also mit Leezreichen, Umlauten und Sonderzeichen (jep '/' ist auch gemeint) - wenn nicht mal unsere Eigenen Build-Tools und Shell-Sprachen damit verlässlich klar kommen? Also die Basis auf die einfach immer wieder zurückgegriffen wird?

Unglaublich.

Objective-C Metaprogrammierung: Blöcke zu Methoden

Die Ruby Welt verwendet Blöcke (Closures) liebend gerne für alles mögliche. Zum Beispiel als Builder-Methapher um Baumstrukturen (XML, GUI's, HTML, Tests) in der Sprache hinzuschreiben und dann nur noch in die Target-Sprache zu rendern.

Das sieht in Tests zum Beispiel so aus:

describe "something" do

  it "should do fnord" do
    someObject.should be_fnordy
  end

end

Der Trick dabei ist das alles von do bis end jeweils ein Block ist der von der Methode describe oder it dann in eine UnitTest Klassenstruktur eingehängt wird um dann später als 'ganz normale' unit tests ausgeführt zu werden.

Jetzt wo Objective-C auch Blöcke unterstützt (ok, die können natürlich weniger als das Ruby Equivalent) müsste das eigenltich auch gehen - und siehe da mit  Cedar gibt es auch schon einen ersten Versuch  RSpec in Objective-C nachzubauen.

Well und daher habe ich mir mal angeschaut wie weit man denn kommt wenn man in Objective-C einen Block in eine Instanz-Methode umwandeln will.

Gleich vorneweg - das Typ-System von Objective-C macht mir hier einen kleinen Strich durch die Rechnung - ich habe es nicht geschafft einen Block nicht direkt als Funktions-pointer verwenden.

Aber mit etwas Umweg geht es doch.

Der Trick ist das Blöcke auch id's sein können, d.h. man kann sie bequem in ein NSMutableDictionary packen.

Also brauche ich auf meiner Klasse nur ein Dictionary, speichere die Blöcke darin mit dem Namen der Methode ab und baue mir einen generischen Dispatcher-IMP der den Selector (zweites unsichtbares Argument jeder Objective-C Methode) verwendet um den Block aus aus dem Dictionary zu ziehen und führe ihn dann einfach aus.

So sieht dass dann aus

Die schönsten Testsuiten

Sowas wünsche ich mir auch mal für andere Programmiersprachen. Eine ständig aktuelle Hitliste der schönsten Testsuiten von Open Source software.

 Sowas hier - aber systematisch und crowdsourced immer aktuell.

Hach, man kann träumen. :-)

Klarträumen

 Klarträumen ist etwas das ich gerne lernen möchte und das mich derzeit beschäftigt. Erste Resultate habe ich schon - denn nach Jahren in denen ich mich vielleicht an einen Traum pro halbes Jahr erinnern konnte, erinnere ich mich jetzt an ein bis drei Träume pro nacht.

Stattlich. :-)

Sehr gut funktioniert für mich dass ich vor dem Schlafengehen via iPhone noch ein zwei YouTube Videos zu Klarträumen sehe um mich a) fortzubilden und b) mein Gehirn mit Klarträumen zu beschäftigen um die Warscheinlichkeit zu erhöhen dass ich mich an Träume erinnere (und später dass ich in einem Traum merke dass ich träume).

Eine super Einführung finde ich nach wie vor  Reece Jones  2,  3, aber auch andere Videos von ihm sind interessant (gleiten allerdings recht schnell in viel zu esoterische Gefilde ab für meinen Geschmack).

Abends (und morgens bevor ich noch einmal zum Träumen einschlafe) verwende ich momentan zur Beschäftigung mit meinem Träumen die Videos von  Lucidipedia die zwar etwa länglich, dafür aber gut verständlich und sehr Detailreich gute Tips zum Träumen geben. Besonders gefallen mir daran die vielen Beispiele die er gibt und die Art wie er sie erklärt.

Noch ein paar Webseiten:

Aber auch eine einfache  YouTube Suche bringt erstaunlich viele Ergebnisse.

jQuery editInPlace

Well, I just finished some major reworking of that jQuery plugin, so now it has a real testsuite and conforms to the  jQuery Plugin Guidelines and doesn't pollute the core prototypes (of String) anymore.

There are a few new features, most prominent the ability to define a class to apply for the hover effect (so you can style the hover in css instead of having to hand in the colors directly and more control over the way errors are presented so it is easier to embed into bigger applications.

So enjoy  the demo and  the download while they are hot, and keep a bookmark to  the project homepage. :)

Stuff I'd like to note:

  •  JSpec rocks, writing tests with it is a breeze. The DOM Testrunner they have could use some work though to become even more usefull
  • Writing the tests with no dom insertion is a _great_ technique to get a fast testsuite where you can almost guarantee that it has no test-ordering issues.
  • jQuery allows you to almost completely drive the interaction with the editor as a user would, making it almost like an acceptance test (and with very little dependency on the internal working of the editor.
  • Refactoring JavaScript Code is hard if you don't have a testsuite. My Advice: Break it down into smaller bits. I found it incredibly hard to refactor larger pieces of the code, as not having a testsuite means there's no way you know what still works. :/

Wo findet Innovation beim Lehren statt?

Früher mal dachte ich, dass das ja in den Universitäten sein muss. Schließlich ist da alles auf einem fleck. Forscher und Lehrer und Schüler.

Optimale Bedingungen eigentlich - nur dass dort an der Lehre überhaupt nicht geforscht wurde. Schließlich war das ja nur ein Anhängsel das Zeit kostet. Kein Forschungsgebiet.

In der Schule natürlich sowieso nicht und danach?

Im Beruf?

Ich bin natürlich mein eigenes Forschungssubjekt, weil ich weiter lerne und das beobachte. Und für mich selber ist es natürlich so dass ich ständig mit Innovationen habe, durch meine Möglichkeit das Netz zu verwenden.

Aber ab und an trifft man auf etwas großartiges. In einem  Interview von John Udell bin ich auf die  Khan Academy gestoßen.

Das ist ein Mensch der seine Erfüllung darin findet dass er kurze Videos (~10 Minuten lang) aufnimmt in denen er eine Sache - ein Konzept aus Mathematik, Physik, Chemie, Finanzen und vielen weiteren Themen.

Und die sind gut!

Ausserdem hat er  eine Software online gestellt die ein sehr spannendes Konzept verfolgt: Wissen ist dort als Graph aufgestellt - von einfachster Addition bis zu relativ komplexen Themen. (Aber viel weniger als als Video verfügbar ist).

Der Clou: Man fängt bei einfacher Addition an und kriegt die nächst-Schwierigeren Aufgaben erst wenn man 10 Aufgaben aus einem Wissensgebiet erfolgreich direkt hintereinander gelöst hat.

Dazu gibt es jeweils den ganzen Lösungsweg plus einen Link auf das dazugehörige Video wenn man es noch mal im Detail braucht.

Das führt dazu dass Kinder gerade bei Mathe ihre Lücken auffüllen können die sie irgendwo im Verständnis haben. Und das finde ich Großartig - denn das ist eines der größten Probleme von Großgruppen-Lernen. Wenn ein Thema vorbei ist, dann ist es vorbei - egal ob man es verstanden hat oder nicht.

Verdammt schade dass es noch soo lange dauern wird bis solche Konzepte auch in der "Offiziellen" Lehre angekommen sind.

Gletscher Rückzug

Klima-Veränderung ist ein schwer zugängliches Thema.

Aber auch Sau-Wichtig. Und daher finde ich es grandios was James Balog für eine Arbeit gemacht hat um den Gletscher-Rückzug zu dokumentieren. Mit knapp 30 Zeitraffer-Kammeras macht er über Jahre Hinweg jede Stunde ein Bild von vielen Gletschern und daraus dann einen Film.

Wow.