Heise des tages

Was tickt denn da?

„Tickende Zeitbombe“: Windows noch immer verbreitet

Zumindest so ähnlich lautet die schlachtzeile…

Sagt mal, ihr da hinten an der FUD-front an der karl-wiechert-allee: was zahlt euch meikrosoft für eure ständigen aufforderungen „hej leute, heute ist euer windohs XP viel unsicherer als vor einem jahr, kauft unbedingt und schnell ein anderes windohs oder, wenn ihr das nicht könnt, bezahlt sauteure sonderverträge mit meikrosoft“?

Mann oh mann oh mann, inzwischen müssen sogar die von jedem häckkindbot lustig ausgedachten angaben im User-agent des brausers für den schrillen tatütata-alarmton herhalten. Gemessen von irgendeiner klitsche ohne seriöses geschäftsmodell, die träcking-wanzen zum einbau in webseits als „statistik-dienstleistung“ anbietet und den fragwürdigen wert dann mit zwei nachkommastellen angibt, damit er weniger fragwürdig aussieht. Was kommt als nächstes? Tarotkarten? Gläserrücken? Das ouija-brett? 😦

Wenn ihr da bei heise in konkurrenz zur kompjuterbild treten wollt, seid ihr auf einen guten weg.

Worüber ihr stattdessen mal schreiben könntet: wenn es bei einigen meiner bekannten, die wirklich verdammt viel geld für soundkarten ausgegeben haben, auch treiber für windohs sieben gäbe, dann hätten diese bekannten schon längst auf windohs sieben gewexelt. Die sind nicht bei XP, weil sie XP so toll finden. Aber solange die hersteller hochpreisiger hardwäjhr auf diese weise „zwangsneukäufe“ (und gleichzeitig einen krassen preisverfall für noch gar nicht so alte karten) verursachen, solange wird manch ein mensch sich mit uralter softwäjhr durchschlagen müssen.

Stattdessen werdet ihr in ein paar jahren vermutlich titeln: „tickende zeitbombe: windohs sieben noch immer verbreitet“ — und schön euer jornalistenkaufschmiergeld von meikrosoft dafür kassieren.

Objektorientierte programmierung…

Erstmal ein kleiner aufwärmer, der achtzig prozent der leser zum schließen des brausertabs bringt — die restlichen zwanzig prozent können sich ja fragen, was daran falsch ist:

class ID
{
  private:
  static unsigned int nextId = 1;
  unsigned int myId;

  public:
  ID () : myId(nextId++) { }
  unsigned int getID () { return myId; }
};

Ich bin leider auf dem sprung und kann deshalb nicht mal eben schnell einen anreißer dieses „kleinen“ englischen textchens mit dem titel „objektorientierte programmierung ist eine teure katastrofe, die aufhören muss“ ins deutsche übertragen.

Anmerkung: das eingangs zitierte kwelltext-schnippselchen habe ich vor ein paar jahren mal wirklich in einer sehr ähnlichen form (in einem namespace und mit etwas mehr kram) gesehen. Seitdem bin ich der meinung, dass „multithreading“ eine erfindung des teufels sein muss. Die durch das handliche postinkrement so harmlos aussehende anweisung nextId++ ist nicht zwangsläufig eine einzelne CPU-instrukzjon, sondern kann (und in diesem kontext: wird fast überall) bedeuten, dass für den folgenden schreibvorgang ein wert aus dem RAM in ein register eingelesen, dann im register inkrementiert, dann als instanzvariable ins RAM geschrieben und wieder ins RAM zurückgeschrieben wird, und zwischendurch kann ein anderer thread seine scheibe rechenzeit bekommen und nochmal die gleiche ID generieren. Und wenn man dann ahnand dieser IDs objekte identifiziert: viel spaß mit dem debugger, um so einen (natürlich sehr tief im ganzen kram versteckten) scheißfehler zu finden! Und ja, ich weiß natürlich, dass mitmensch java-progger da einfach synchronized in seine funkzjonsdefinizjon reinschreibt und sich dabei für so überlegen hält, dass er gar nicht mehr merkt, wie sein gehäcksel schleicht und resorßen wegmümmelt, aber das war halt postinkrementiertes C…