www.lästr.de

08. Oktober 2007

Web 2.0 startup of the day: More and more, social software is becoming a direct mirror image of social interaction as we know it since kindergarten. The German startup www.lästr.de offers unique features in its ability to spread gossip about other users, and specifically exclude the subject from the board where he or she is being discussed. Special moderation features automatically recognize and downrate postings that are too balanced or fact-based, or indicate their sources. Karma points are distributed based on “dirt that sticks”: phrases and formulations that are copied most get the highest ranking.

Check it out!

Hype Dead Software

21. September 2007

When I first heard Ken Schwaber’s talk I thought wow, exactly, he’s right, we don’t have a chance, the end of the world is nigh.

When you have some central piece of software that many other projects rely upon, that central track is often pressed into delivering features earlier than is good for the software. As a result, you get software that

  • is fragile
  • has no good test harness
  • has few developers left
  • is hard to use and build

Ken Schwaber calls this “Design Dead” Software. Implying: throw away, don’t reuse any more, open source or sell.

…but couldn’t you say the same about any piece of code? Some simple facts: Overstaffing a project is not an economic idea. The power to change things in unforeseen ways implies the power to break things - the difference being made by the developer’s understanding of the consequences. The ability to understand code depends not just on the code, but on the newcomer’s background knowledge. What remains “magic” depends on your willingness to understand, which to a large degree is a social and personal thing. Something that is easy to use the way it was designed, or the way it is implicitly used by its fans, may be very hard to use in a different way or for a different purpose. A test harness appears especially bad if you don’t understand what it tests, or if it does not test the cases you consider relevant.

Which, to me, means that a “central” piece of software essentially poses a knowledge management problem. Personell turnover is inevitable in the long run (be it because of boredom or because of high pressure at the “center”), so there will be new people with fresh views coming in contact with the code - which, if not organized very carefully, causes the kind of friction described above. Also, stability is of high concern at the center, so it may be difficult to take new or current architectural ideas into account (there are limits to what refactoring can do). Which, again, might make it less attractive to work on (someone else’s baby). Old software is most probably “Hype Dead Software”.

Providing and maintaining a framework, platform, infrastructure appeals to software people because abstraction is their daily bread. But don’t fool yourself: it requires a long-term commitment, and in the end may be more about duty and reliability than about fun. And it’s an open question whether the problem you have abstracted and solved will actually be relevant, and will be considered relevant and valuable, long-term.

Brrrrrrrr

21. September 2007

Bitte vor Genuss schütteln.

Beschriftung auf einer Milchpackung der Marke denree.

Ohrwurm, Armwurm

21. September 2007

Wer kennt ihn nicht, den Ohrwurm: Ein Lied hat sich im Kopf eingenistet und läuft auf “Heavy Rotation” wie ein Hit im Radio - unwillkürlich geht der Geist den Song immer wieder durch, man hat das Gefühl, den Song fast zu hören.
Als ich letztens zur Arbeit marschierte, fiel mir auf, wie da so ein eigenartiges Gefühl von meiner einen Hand zur anderen und zurück wanderte. Der ganze Arm wurde abwechselnd total leicht, als wollte er hochschweben, und gehorchte dann wieder der Gravitation. Spooky. Was war da los? Am Tag vorher hatte ich mit dem Stock geübt, und mein Körper war wohl immernoch so begeistert davon, wie sich das Bewegungsmuster anfühlt.
Das ist toll. Ich mag es, wenn die Vorstellung so klar wird, dass sie direkt zum Abruf bereitsteht. Nur blöd, wenn der eine Song, die eine Bewegung so übermächtig wird, dass sie den Geist gefangennimmt und man willenlos gerade diese Prozedur weiter abspulen muss. Da hilft nur: Ganz ganz viele Prozeduren gleichzeitig präsent haben. Und dafür hilft nur: eine nach der anderen tief verinnerlichen. Immer weiter üben.

Das kannst Du nicht!

18. September 2007

Das ist genau die Art von Hintergründigkeit, die ich auf der documenta vermisst habe. Mir wurde vorgeführt und vorgehalten, aber involviert gefühlt habe ich mich selten - die Situation des Betrachters wurde nicht betrachtet, stattdessen etablierte Problemfelder angemahnt und nicht weitergedacht (Umweltverschmutzung, Armut, Minderheiten, Feminismus, Gentechnik,…).

Fantastische Ausnahmen: Der (30 Jahre alte, aber immer noch wundersame) Forest Floor von Trisha Brown, Graciela Carnevale’s Einschließungs-Trick (ebenfalls ein daueraktuelles Kind der 68er), der Phantom Truck (der den Zuschauer erst verblendet und dann in der Dunkelheit aussetzt), Saâdane Afif’s von Geisterhand betriebene E-Gitarren (aus welcher Richtung kommt der nächste Akkord?), und vielleicht noch Dierk Schmidt’s Geschichtsstunde von der Berliner Afrika-Konferenz bis hin zur aktuellen Bundestagsdebatte. Der Rest? Nicht Moderne oder Klassik, sondern ganz viel Pop.

ReloadablePropertiesFactoryBean: Beware of Caching

31. August 2007

As Glenn pointed out, reloading properties is futile if the servlet engine returns an unchanged copy of the property file from its resource cache.

We need to find the real file anyway to check its last modification date, so overriding “loadProperties” to read from the file system absolutely makes sense.

Here’s an updated version, which correctly handles reloading of properties also from a ServletContextResource.

Download

Auch ein Geschäftsmodell…

30. August 2007

24,99 EUR für eine CD mit vier JPG-Files, und eine Javascript-Funktion “Rechtsklick_verhindern”, damit man sich nicht einmal die kleinen Teaser runterladen kann? Da muss ich mir aber nochmal überlegen, ob ich das wirklich unterstützen kann.

Brechreiz

28. August 2007

Der Brechzeiz hilft Dir, Dinge wieder von Dir zu geben, bevor sie Dir schaden können, die Du unbedacht oder arglos tief in Dein Innerstes aufgenommen hast.
Schwächere Formen des Brechreizes sind: Weinen; Lachen; Lästern; Nacherzählen; Argumentieren; Analysieren.
Was Du verstanden hast, kann Dir nicht schaden.

Glossary of Courage

24. August 2007

Programming is all about confronting the unknown.

FDD - Fear Driven Development

AOP - Angst Oriented Programming

DSL - Dread Specific Language

MDA - Mental Disorder Architecture

RAD - Reckless Application Development

XP - Jesus Christ!

E2.0 - Escapism 2.0

Thanks for the inspiring discussion, mabuse.

Ki in die Beine schicken!

20. August 2007

Vier Wochen lang habe ich jetzt das Aikido-Training geschwänzt… Und bin auch noch stolz drauf: auf einen Durchschnitt von über 35km/h auf 100km bei meinem ersten Radrennen, mit einer Zeit unter drei Stunden (2:48:30) und einer Platzierung oberhalb des Altersklassen-Durchschnitts. Das war natürlich nur möglich, weil meine Teamkollegen mich so kräftig gezogen haben - wir sind tatsächlich bis zur Köhlbrandbrücke zusammengeblieben. Für die Aussicht oben habe ich mir dann etwas mehr Zeit genommen…

Ich kann mir gut vorstellen, dass der Zustand “Fahrradrennen” süchtig macht. Wenn alle um Dich herum über 40 km/h auf ebener Erde fahren, findest Du’s irgendwann total normal - Dank Windschatten und passender Ausrüstung kann das geradezu gemütlich sein. Das Gefühl, in einer Rotte gleichgesinnter ungestört von Ampeln und Autos über breite und gut asphaltierte Straßen zu sausen, ist kaum zu beschreiben. Es geht auf jeden Fall schnell, und ist dann viel zu schnell vorbei.

Wir fahren!

Sobald ich mich ein bisschen erholt hab geht’s aber zurück ins Dojo - um mal die unwichtigsten Gründe zu nennen: mein geliebtes Aikido tut was für den ganzen Körper und nicht nur für die Beine, die Stürze sind kontrollierter, und man kann trotz Hamburger Schmuddelwetter regelmäßig trainieren.