Connect the Dots

written by Martin Häcker on

"You can only connect the dots looking backwards, never looking forward." -- Steve Jobs

Sagt er hier.

Geiler Vortrag.

Piraten aller Länder, vereinigt euch!

written by Martin Häcker on

Über meinem Schreibtisch hängt schon seit zwei Jahren ein Zettel. Darauf habe ich damals geschrieben:

Eine Revolution: Computer Zwei Ideen: Grundeinkommen, Zinskatastrophe

Das würde ich heute anders formulieren: Zwei Revolutionen, eine Idee

  1. Die Computerrevolution
  2. Die Arbeitsrevolution

Die zweite ist sichtbarer und erzeugt (scheinbar) mehr Probleme, da sie immer mehr Menschen arbeitslos macht. Dabei ist sie mit er der ersten Verknüpft. Immer mehr Tätigkeiten können durch Computer- und Maschineneinsatz dem Menschen abgenommen werden und uns allen steht damit mehr Freizeit zur Verfügung (ok, abgesehen von den Informatikern, die das alles am Laufen halten müssen). Das bedeutet letztlich, das mit fortschreitender Technik immer weniger Arbeit notwendig und immer mehr Arbeit freiwillig wird. Und das muss sich in unserer Gesellschaftsordnung früher oder später wieder spiegeln. Durchdenkt man das, wird natürlich auch schnell klar, das Geld als Druckmittel um Arbeit zu erzwingen damit ein reichlich merkwürdiges Konzept ist, denn tatsächlich ist die Arbeit ja unsinnig oder zumindest unnötig. Lösungsansätze: Bedingungsloses Grundeinkommen (Wikipedia), Netzwerk Grundeinkommen, Deutsche Abteilung?

Die erste Revolution ist viel unsichtbarer - Computer durchdringen immer mehr Gebiete unseres Altags und algorithmisieren sie. Das bedeutet, das implizite Regelungen damit Explizit werden und wir uns plötzlich Gedanken über diese Details machen müssen.

Zum Beispiel: Heute sind Verkehrsregeln eine Konvention an die man sich hält. Sollten Autos irgendwann mit Autopiloten fahren, kann man nicht mehr einen Schwerverletzten auch über Rote Ampeln ins Krankenhaus fahren - ein Automat würde die Verkehrsregeln stur einhalten. Oder Verfahrensregeln in Verwaltungen. Wo heute etwas Charme vielleicht genügt unsinnige Regeln aufzuweichen, kann man sich einem Computer gegenüber noch so anstrengen. Man muss den Regeln doch genügen.

Das sind aber alles noch harmlose Beispiele. Wo früher die Komplettüberwachung alle Kommunikation völlig ausgeschlossen war, ist es heute Routine das alle Verkehrsdaten aufgezeichnet werden.

Daher ist es notwendig, das diejenigen die diese Probleme verstehen (Informatiker?) dieses Wissen und ihre Erfahrung in den politischen Prozess einbringen.

Das darf auf keinen Fall in den Strukturen einer bestehenden Partei versickern und ist auch überhaupt nicht geeignet in die Farbenlehre der bestehenden Parteien eingeordnet zu werden - denn die Probleme haben (erstmal) überhaupt nichts mit den bisherigen politischen Richtungen zu tun.

Ich bin daher der Meinung das die Gründung der Piratenpartei der richtige Schritt war.

Davon abstrahiert ist es aber Wichtig, das jeder der diese Probleme versteht mit seinen Mitteln an ihrer Lösung beteiligt - ich habe dafür mein Engagement im Berliner Landesverbands gewählt und kann es natürlich nur jedem ans Herz legen. :)

Wir treffen uns jeden Mittwoch 18:00 Uhr in der C-Base. (Rungestraße 20, 2. HH - 10179 Berlin)

Zur Zinskatastrophe sage ich später mehr.

Darf's ein neuer Lampenschirm sein?

written by Martin Häcker on

Ob Ikea wohl bald pleite geht?

So jedenfalls malt Freitag die Zukunft in der jeder Zuhause einen 3D-Drucker stehen hat, der fast beliebige Altagsgegenstände (inklusive Elektronik) herstellen kann.

Klingt gut nicht?

Naja, bis man sich klar wird, das die angestrebte Selbstreproduktion dieser Geräte natürlich bedeutet das sie ihre Einzelteile selbst herstellen können. Zusammenschrauben muss sie immer noch der Mensch der ehrfürchtig vor dem Gerät sitzt.

Spannend finde ich das aber schon. Im Dunstkreis des CCC ist schon länger davon zu hören, das die (wieder) immer mehr zunehmenden Hardware-Hacker jetzt auch Rapid-Prototyping Maschinen selber bauen können. Und das für so etwa 200-3000 € - je nach Anspruch und Bastelkenntnis.

An den Durchbruch der Produktionsmittel Zuhause glaub ich zwar noch nicht - aber wenn man doch mal mit Aliens kommunizieren will, dann ist heute immer noch die Idee, Selbstreproduzierende Satelliten loszuschicken die beste. Die könnten dann nämlich mit möglichst viel lokalem Speicher die Kunde über unsere Kultur quasi in einem gigantischen "Turnschuhnetz" in fremde Sternensysteme bringen - und umgekehrt.

Da wäre eine erste sich selbst reproduzierende Maschine natürlich schon ein ganz guter Start...

Spannende Wikipedia-Artikel über die ich beim Schreiben gestolpert bin: Alternative Biochemien (engl), Exopolitik (engl), Pansperma (engl)

Schöne Podiumsdiskussion

written by Martin Häcker on

Gab es bei Heise zum Thema Filesharing.

Vertreten sind die Gegner und Befürworter von Filesharing.

Inklusive Jan Huwald - das freut mich natürlich als Pirat.

:)

Piraten aus "Mangel an Auswahl"

written by Martin Häcker on

Torrentfreak schrieb heute über eine Studie der Wiggin LLP Wiggin LLP.

In der graphisch anspruchsvollen Studie stellt die Firma fest (unklar ist mir noch, wer sie Bezahlt hat) das das eingeschränkte Angebot einer der wichtigsten Gründe ist wieso Leute zu Piraten werden.

Ahem.

Na gut, ich finde es ja richtig wenn sich die Entertainement Industrie endlich auf ihren Hosenboden setzt und alle Inhalte (ja, auch die Alten) im Netz verkauft.

ABER

Ich vermisse hier ein ganz wesentliches Argument: Filesharing machen zuallererst die Leute die Zeit haben, aber wenig Geld. Diese Leute (Jugendliche & Studenten z.B.) waren und sind aber ein ganz wesentlicher Markt für die Entertainment Branche.

Davon abgesehen bin ich als Pirat natürlich noch der festen Überzeugung, das unser Land mehr freie Kultur braucht und auch bekommen wird.

Dazu aber später mehr.

Sauberes Programmieren

written by Martin Häcker on

(zu Return to Innocence von Enigma)

Es ist wirklich erstaunlich wie viel schwieriger es ist saubere Programme zu schreiben wenn mehr Leute an der Konstruktion beteiligt sind.

Nehmen wir zum Beispiel drei Leute. Einer hat vorher viel C++ progirammiert. Ganz selbstverständlich ist für ihn das Paradigma geworden, das man Accessoren -getVar und Mutatoren -setVar:aValue nennt.

Und schon mischt sich im System der Namens-Salat. Und das ist noch keine große Sache. Von sich aus besteht keinerlei Einheitlichkeit, wie wer seine Variablen und Funktionen nennt. Wie z.B. heißt eine Klassenmethode zum erstellen eines Objekts? -classname:instanceVarName with:anotherInstanceVarname oder -intentionWithNamedThing:aTypeDescription withAnotherNamedThing:aTypeDescription

Wie geht man mit Prefixen um? Was will man mit Instanzvariablen tun? Wann verwendet man (sinnvollerweise Accessoren und wann direkten Zugriff auf Variablen?

Die Summe dieser kleinen Entscheidungen macht so viel von der (olfaktorischen?) Sauberheit eines Programms aus, das man sich (eigentlich) nicht leisten kann sie dem Zufall zu überlassen.

Aber der Overhead das alles vorher festzulegen oder auch nur zu kommunizieren ist gewaltig. Vor allem wenn man weder Refaktoring-Werkzeuge hat die einem die Änderungen erleichtern, noch Unit-Tests die einem die Änderungen absichern, noch Reviews / Pair-Programming die einen zu der Entscheidung helfen was geändert werden soll.

Was tun?

Erleichterung finde ich in der Tatsache, das tatsächlich viele kleinen Entscheidungen kaum oder keine Rolle spielen. Wo die Klammern gesetzt werden, oder wie weit eingerückt wird ist egal. Man überließt diese Unterschiede einfach.

Dazu kommt die Aussage aus dem Big Ball of Mud Paper: Ein Dreckball mag besser sein als gar keine Software.

Ist Sauberkeit also doch überschätzt?

Bliki-Software

written by Martin Häcker on

Nachdem ich ja schon vor ein [wiki:2008/02/18/23.03 paar Tagen] über das FullBlogPlugin gesprochen habe, hab ich es jetzt endlich mal ausprobiert.

Schick. Deutlich schicker als das was ich jetzt hab.

Ok, der Editor ist irgendwie überladener als was ich jetzt im TracBlogPlugin, und man hat immer Seitennahmen anstatt einem Datum plus einem Seitennahmen...

Mal schauen was mir noch so alles auffällt.

Muss ich nur noch herausfinden wie ich meine Posts migrieren kann. :)

Das iTeam: Die Jungs mit der Maus

written by Martin Häcker on

Da gibt es eine grandiose englische Comedy-Serie The IT Crowd bei der man sich nur totlachen kann.

Nun, da dachte sich SAT 1 wohl, hey, das können wir doch alles wörtlich ins Deutsche übersetzten und dem deutschen Fernsehpublikum verkaufen.

Nun, überraschenderweise hat sich gezeigt, das der Wortwitz der die Serie ganz wesentlich trägt bei dieser Übersetzung fast vollständig verloren geht.

DOH.

Hier kann man sich selber überzeugen.

p.s.: Die Tiefe der Misere kann man ja schon am Titel erkennen. Der Wurde nämlich von "Die Jungs mit der Maus" in "Die Jungs an der Maus" geändert um auch noch die letzte Mehrdeutigkeit zu entfernen...

Armes deutsches Fernsehen.

if [ "z$?" != "z0" ] ; then ...

written by Martin Häcker on

Aus dem Buildscript imageFromFolder.sh des MOKit Releases.

Da ich so etwas schon oft gelesen habe, habe ich mich endlich mal dafür interessiert wieso zum Teufel so viele Programmierer das so machen. Könnte ja sein, hab ich mir gedacht, das es einfach so kranke sh implementierungen gibt, dass man das so machen muss damit das wirklich auf allen Systemen läuft.

Nun, ein guter Hacker im CCC den ich darauf mal ansprach antwortete darauf mit dem Klassiker: "Die machen das doch nur alle weil sie das Manual nie gelesen haben!" :-) Gut, les ich mal nach...

Ok, also das Beispiel mal etwas detaillierter betrachtet:

hdiutil create # and then a lot of parameters

if [ "z$?" != "z0" ] ; then
    echo "Error creating image ($?)."
    exit 1
fi

Das hätte man doch in jedem fall auch so machen können:

hdiutil create # and then a lot of parameters

if [ 0 -ne $? ] ; then
    echo "Error creating image ($?)."
    exit 1
fi

Und das fängt den Sinn des Tests auch gleich viel besser ein.

Dann hätte man natürlich auch noch eine der Kurzformen wählen können, sowas wie

hdiutil create mumble mumble \
    || echo "Error creating image ($?)." ; exit 1

Das ich persönlich fast noch etwas klarer finde - erst recht wenn man es in eine Funktion error_exit oder etwas ähnlichem verpackt

error_exit ( )
{
    local exit_value=$?
    echo $1 "($exit_value)"
    exit $exit_value
}

hdiutil create mumble mumble \
    || error_exit "Error creating image."

Überraschenderweise ist das nämlich gar kein Problem so etwas in der Shell zu machen. Macht sich nur offenbar kaum jemand die Mühe das "fine" manual mal zu lesen.

Oder zumindest so scheint es mir im Moment.

Habermas nach Aktuell?

written by Martin Häcker on

Habermas definiert die Privatsphäre aus der Oikos, der Lebensnotwendigkeit, die man braucht um sich die Überlebensfähigkeit zu sichern.

Was ist jetzt, wenn diese Sphäre wegfällt?

Schließlich sind immer mehr der überlebensnotwendigen Dinge in unserer Überflussgesellschaft einfach Verfügbar oder werden immer öffentlicher organisiert.

  • Arbeit findet nicht mehr auf dem eigenen Acker, sondern fremdbestimmt und öffentlich statt.
  • Heilung im Krankenhaus oder anderen öffentlichen Einrichtungen, denen man mühsam ein wenig eigenbestimmung der dabei entstehenden Daten abnötigt.
  • Fortpflanzung (oder zumindest Sex) wird immer mehr öffentlich zelebriert - die Schwulen machen es mit Community Plattformen vor.

Wenn die Ernährung, Heilung und Fortpflanzung nicht mehr Privat ist, dann bleibt für den Rest vielleicht nicht mehr ausreichend Grund übrig Privat zu sein.

Dazu kommt, das durch das Internet und passender Software das veröffentlichen so einfach wird, dass immer mehr öffentlich gemacht wird.

Ob sich das "Private" diesem Sog auf lange Sicht entziehen kann?

Strange thoughts that I have...