Wenig drin

Der Einäugige 3/4 Blinde hat die CE-Catakäse angekündigt. Ich habe mir angeschaut was da drinnen ist und muß sagen „da ist arg wenig drinnen“ das einen Preis von 80 Euro rechtfertigen würde.

Aber bei der Preisgestaltung von Software staune ich ja sowieso regelmäßig über den Realitätsverlust dieser Branche. Wenn man die Historie googelt dann stellt man schnell fest daß es vor ca einem 1/4 Jahrhundert Ansätze gab die Software-Entwicklung zu automatisieren. Davon ist allerdings im Zuge des „OO-Wahns“ bei dem man fröhlich Bugs & Features so lange vererbt bis sich sich als schwere, kaum auszubügelnde Fehler erweisen nichts über geblieben.

Auch von alternativen Programmier-Sprachen ist wenig über geblieben und so bleibt Software Entwicklung bis heute eine teure Angelegenheit. Aber gleich so teuer ? Ich denke nicht ! Da wird einfach der Kunde als Melk-Kuh gesehen den man so lange melken kann bis der sich irgendwann entnervt von der ganzen Branche abwendet. Dann kann man es ja immer noch so wie die Musik-Industrie machen die erst die zahlenden Kunden mit Kopierschutz auf Audio-CD drangsaliert hat und sich jetzt beschwert daß die Verkäufe immer weniger werden.

Wenn ich die Anzahl meiner Kunden die glauben keinen fairen Gegenwert für ihr Geld zu bekommen weiter erhöhen will dann allerdings sind CE-Preise wie dieser sinnvoll.

Luna

18 Kommentare

Eingeordnet unter World of Warcraft

18 Antworten zu “Wenig drin

  1. Joe Scylla

    @Automatisierung
    Da kannst Du so oft du willst mit dem Fuß auf den Boden stampfen aber automatisierte Softwareentwicklung bleibt jedenfalls vorerst ein Thema für Forscher. Das heisst nicht, dass nicht viel Automatisierung bzw. softwareunterstützte Prozesse in die Softwareentwicklung Einzug gehalten haben.

    @OO-Wahn
    Wenn Du via OOP „fröhlich Bugs & Features so lange vererbt bis sich sich als schwere, kaum auszubügelnde Fehler erweisen“ hast du was falsch gemacht. OOP ist im Augenblick der Weg den man gehen sollte um komplexe Softwareprojekte zu realisieren. Und was neue Programmiersprachen daran ändern sollen erschließt sich mir nicht. Funktionale Programmiersprachen? Vieleicht aber noch nicht heute.

  2. Kai

    Von Programmierung hast du wenig bis gar keine Ahnung, oder?
    Denn dann solltest Du es lieber lassen darüber was zu schreiben, bevor du Un- und Halbwahrheiten verbreitest. Ich kann ja verstehen das einem manchmal was in den Fingern juckt, aber bevor man dann kompletten Blödsinn über etwas schreibt, das man nicht kennt und nur mal einzelne Brocken aufgeschnappt hat, die einem dann auch scheinbar gänzlich nichtssagend sind, dann lieber nichts schreiben.
    Glaub mir, Softwareentwicklung ist eine hochkomplexe Sache und wird auch immer komplexer, weil eben die modernen Möglichkeiten immer mehr hergeben. Und das ist auch (fast) völlig unabhängig von der eingesetzten Programmiersprache. Ohne diesen „OO-Wahn“, wie Du es nennst, wären Spiele wie MMO’s, Shooter, etc. gar nicht möglich und wir müßten uns heute noch mit Pac-Man begnügen.

    Kai

  3. Ich muß auch keine Ahnung vom Brötchen backen haben um zu erkennen wenn ein Idiot ne ganze Ladung Brötchen versemmelt hat. In der Regel reicht eine einfach Ergebniskontrolle um eine begründete Meinung zu etwas haben zu können.

    Fehlerhafte Software ist ein Mangel – und kein Ausdruck von Komplexität.

    Luna

  4. Habe ich das richtig verstanden, es gibt Software, die sich selbst prgrammiert?
    ___
    Fehlerhafte Software ist ein Mangel – und kein Ausdruck von Komplexität.

    – Wo gehobelt wird, da fallen Späne ^^. Ständige Kritik kann nur jemand anbringen, der auch selbst etwas vorzuweisen hat, immer nur an anderen rummäkeln wirkt (auf Dauer) abstoßend bis ermüdend. Natürlich kann ich der Meinung sein, dass mir etwas nicht gefällt, wenn man gleichzeitig auch die Leistung des Urhebers als solches anerkennt. Und das du dies chronisch nicht tust, stört vermutlich viele.

    Mich stören auch einige Bugs, wie bei den Greifenreitern auf der Insel; dennoch anerkenne ich die Leistung ein Spiel wie WoW zu erschaffen und fühle mich im Gesamtpaket damit wohl.

  5. Man muss da schon differenzieren. Computerspiele wie WoW sind die typischen Anwendungen für eine OO-Programmierung. Das hat nix mit wahn zu tun, sondern mit der Beschaffenheit des Spieles.
    Auf der anderen Seite bringt OO auch eine ganze Menge zusätzlichen Overhead mit, der recht schnell wächst. Bei einer Software, die seit über zehn Jahren entwickelt wird, ist da ziemlich viel drin, das kaum noch wartbar, aber ohne größere Probleme auch nicht zu beseitigen ist.
    Das gab und gibt es aber auch in der Flat-Programmierung, wie ich aus leidvoller Erfahrung weiß. Versuch mal alte Assembler-Module abzulösen, deren Programmierer sein zwanzig Jahren im Ruhestand sind.

    Allerdings sind das keine Probleme, die den Spieler zu interessieren haben. Bug ist Bug, und muss behoben werden. Wie – das ist Problem des Anbieters.

  6. Das hier … würde ich als differenzierten Kommentar bezeichnen.

    Mein grundsätzliches Problem mit Informatikern ist daß es von diesen Kommentaren so wenige gibt sondern daß man „in der Regel“ von oben herab mit der „Komplexität“ der Sache abgespeist wird.

    Das verleitet dann schon einmal dazu nach dem Baseball-Schläger zu greifen wenn man einen Informatiker im RL trifft 😉

    Luna

  7. Kai

    Naja, das grundlegende Problem an der Sache mit der Erklärung von Zusammenhängen in der Informatik, dem Programmieren, etc. ist ja das, das es eben in den meißten Fällen den Rahmen eines solchen Kommentares mehr als sprengen würde. Da kann es sich dann evtl für den, dem man diesen Kommentar schreibt nach „von oben herab“ anhören. Glaub mir, das soll es aber nicht sein :-).

    Meiner Erfahrung nach ist oft eins der größten Probleme an großen Softwareprojekten die lange Lebensdauer und die damit entstandenen Stückelungen, wenn es was Neues zu implementieren gibt. Oft ist ein Softwareprojekt von der ursprünglichen Planung gar nicht darauf ausgelegt das es dieses oder jenes neue Feature implemntiert werden soll. Also muß man dann in teilweisen schon Jahre alten Code eingreifen, hier Lösungen finden, wie denn das neue Feature implementiert werden kann. Nun kommt dann noch erschwerend hinzu, das oft schon viele Verschiedene Leute hier herumprogrammiert haben und jeder Programmierer hat seinen eigenen Stil, der irgendwo einzigartig ist und manchmal auch unnötig komliziert ist. Nach vielen Jahren entwickelt eine solche Software dann eine art „Eigenleben“. soll heißen, keiner, wirklich keiner, kann genau sagen welche Auswirkungen es hat, wenn jetzt hier eingegriffen wird um z.B. etwas zusätzlich zu implementieren. Das geht sogar soweit, das es fast unmöglich wird einen gröberen Bug zu beheben ohne einen neuen auszulösen. Genau diese Problematik meinte ich mit Komplex. Software wächst mit der Zeit und je weiter sie wächst umso undurchschaubarer werden die Gesamtzusammenhänge und internen Abläufe. Klar das für den Kunden das keine Entschuldigung für Fehler sein soll und kann, zumindest nciht für Massenmarktsoftware. Bei Individualsoftware schon eher, da hier im Regelfall der Kunde selber für solche Chaotischen Zustände gesorgt hat, indem er zuwenig in die Wartung investiert hat und irgendwann ist es dann nicht mehr wartbar (alles schon erlebt).
    Ich hoffe, ich konnte ein wenig verständlich machen, warum ich es verstehe, wenn die behebung von Bugs manchmal etwas länger dauert. Klar, behoben gehören Bugs immer, doch es gibt Fehler, da ist die behebung aufgrund der oben beschriebenen komplexität nur sehr schwer möglich. Eine Software sind eben keine Brötchen die mal eben verbrannt sind und man anhand des oberflächlichen Ergebnisses sich ein Urteil erlauben kann (zumindest nicht oft).
    Also entschuldige bitte meinen obigen Kommentar, wenn ich dir auf die Füße getreten sein sollte, aber Du bist mir mit einigen Aussagen in Deinem Artikel auch kurzfristig ein wenig auf die Füsse getreten :-), war nur eine kurze impulsive Reaktion darauf.

    lg

    Kai

  8. Das von oben herab finde ich „typisch“ für Informatiker und sollte nicht auf jemanden speziellen gemünzt sein 🙂

    Ich selber bin es einfach nur noch Leid die immer gleichen Ausreden zu hören warum Software nicht funktioniert. Ich will nur noch DAS sie funktioniert, fehlerfrei und zwar ohne Ausnahme …

    Luna

  9. Kai

    Das von oben herab finde ich „typisch“ für Informatiker und sollte nicht auf jemanden speziellen gemünzt sein

    Das hab ich auch nicht (ganz) direkt auf mich bezogen. Wollte nur kurz erklären, warum es sich oft so anhört.

    Und Ausreden sollen es ja gar nicht sein, auch wenn es sich für dich so anhören mag. Es war nur der versuch einer Erklärung, warum die ganze Thematik der Softwareentwicklung/wartung eben so ist, wie sie ist. Natürlich wäre es schön und auch begrüßenswert, wenn es einfacher wäre. Würde mir u.a. sehr häufig massive Kopfschmerzen und fluchen ersparen. Und ganz klar, ich will auch das Software funktioniert, wer will das nicht aber leider gibt es keine fehlerfreie Software und wird es in meinen Augen und und meiner beruflichen Erfahrung nach auch nie wirklich geben – leider. Fehlerfrei mit Ausnahme – Ja; Fehlerfrei ohne Ausnahme – Nein.

    Kai

  10. Was mir fehlt ist die „Entwicklung“. Autos so wie sie heute sind die sind ja auch nicht wie ein Apfel vom Baum der Erkenntnis gefallen. Es gibt eine Entwicklung bei den Autos und mittelfristig eine Verbesserung bei Sicherheit, Spritverbrauch, etc.

    Bei Software habe ich den Eindruck daß die Qualität von Jahr zu Jahr abnimmt und die Fehler von Jahr zu Jahr zunehmen.

    Luna

  11. Kai

    Das ist ja genau das, was ich weiter oben versucht habe zu beschreiben. nimm ein altes Auto her, einen VW Käfer. Nun bastel solange daran herum, bis du einen aktuellen Golf hast. Und meinst Du, das dieser Golf dann perfekt währe? Ich wage mal zu behaupten – Nein. Und genau da ist das Problem. Welche Firma ist bereit eine Software jedes zweite Jahr von Grund auf neu entwicklen zu lassen? Ich persönlich kenne keine. Soetwas passiert nur alle 10 Jahre einmal, wenn die alte Software nicht mehr erweiterungsfähig ist und den aktuellen Bedürfnissen nicht mehr entspricht. Gutes Beispiel Windows. Das erste Win95 über Win98 bis hin zur Ablöse durch Windows XP hatten alle die gleiche Basis, es wurde solange daran „herumgebastelt“ bis die aktuellen Möglichkeiten erschöpft waren. Dann erst erst wurde von Grund auf eine neue Basis mit Windows XP geschaffen (wobei da ja die Grundbasis Windows2000 war/ist). Auf diese Weise werden immer alte Fehldesigns in der software in das nächste Projekt mitübernommen und neue Fehldesigns/Fehler kommen hinzu, daher dann der Eindruck die Qualität nimmt ab. sicher, man kann auch immer alle, wirklich alles neu machen, doch dann wäre Software unbezahlbar, und man würde vermutlich auf eine neue Version, ein neues Addon, ein neues Programm jedesmal fünf oder mehr Jahre warten. Dann würde ein neues Addon für ein Spiel nicht €40 kosten, sondern vermutlich €400.

    Kai

  12. An sich beschreibst Du das was ich auch sage – da wird mit cut & paste OO Code weiter verwurstet und damit nicht nur jeder Fehler sondern auch jedes „Feature“ so lange bis es zu einem schweren Bug wird.

    Dann muß man aber halt auch Strukturen ändern wenn sich etwas bessern soll oder es wird noch in 100 Jahren so weiter geschlampt. Wenn ich mit Handarbeit keine kostengünstigen Autos herstellen kann dann muß ich eben auf Massenproduktion umstellen. Sobald ich das getan habe kann ich auch schauen an welcher Stelle ich Roboter einsetzen kann um die Kosten zu senken oder um die Qualität zu steigern. Ist ja nicht so daß jeder Mensch Mμ-genau schweißen kann 🙂

    Luna

  13. Die Überschrift passt nicht ganz, nun weiß ich weder was drin ist noch was bisher drin war und wie viel diese gekostet haben sondern nur das du dich an irgend welchen Bugs störst^

  14. saela

    Nun ja, es gibt ja Alternativen. Man muss nur ggf. sich damit zufrieden geben, 5 Jahre hinter dem technisch Machbaren zu sein. Aber mal ehrlich – ist ein gutes Spiel mit angestaubter Technik ein schlechtes Spiel?
    Also, während wir uns noch ein wenig Jenen ausliefern, die mit ihrem Eigentumsrecht begründen, dass wir an unserem Eigentum nur eingeschränkte Eigentumsrechte haben, halten wir doch ein Auge auf jene codierenden Menschenkonglomerate, die uns schon in einigen Jahren zweckdienliche Alternativen liefern werden.
    Ich rede von Open Source.
    Bezweifelt noch irgendjemand das Open Source gute Software herausbringen kann?
    Was ist denn mit Firefox, Open Office und Linux?

    Nein, sofern die Gesellschaft dies unterstützt, wird es in Zukunft Open Source Alternativen für Software wie WoW geben. Und Communities die Server betreiben.
    Der Dammbruch hat schon begonnen. Mit der Freigabe des Quellcodes von „Ryzom“ (früher mal ein sehr beliebtes MMORPG) hat die Open Source Gemeinde die erste Engine für derartige Spiele in ihren Klauen 🙂
    Eigenentwicklungen gibt es für Weltraumsimulationen (a`la Elite) u.ä..
    Nachgecodete Spieleclone sind z.T. heute schon viel stärker als ihre Originale (Open TTD, oder FreeCiv).
    Moddergemeinden erweitern den Funktionsumfang von propietärer Software mit teilweisen Glanzleistungen (wie der Xtended Mod für X3).

    Wenn du die 80 Euro übrig hast, nur zu. Aber dabei nicht vergessen Alternativen zu forden, zu fördern und zu bewerben 🙂

    Wie wir an Real ID gesehen haben, ist mit der schönen Anarchie des Netzes bald Schluß. Aus jedem Chaos bildet sich eine Ordnung.
    Wir haben es als Nutzer selbst in der Hand, ob wir eine Ordnung wünschen die uns in goldene Netzplastikkäfige sperrt (inklusive Einfluss darauf was wir spielen, erfahren, wissen, denken, leben), oder eine freie Ordnung der Kooperation und des Austauschs fördern.

  15. Ich versuche mal einen möglichst ungiftigen Text zu verfassen.

    Software ist komplex oder zumindest umfangreich. Umfangreich ist sie und muss sie sein um die vielen Funktionen die die Nutzer so möchten umzusetzen.
    Das führt dazu dass du nach einer Weile einen riesigen Berg an Code hast an dem dann ein einzelner wohl nicht mehr durchblicken kann. Und Software besteht halt nicht aus 100 oder 1000 Zeilen Code, sondern aus 100.000 oder Millionen oder noch mehr. Und das schreibt ja nicht einer allein, da sind viele viele Leute dran beteiligt, mit ihrem eigenen Spezialgebieten, und Mitarbeiter wechseln die Firmen, gehn in Rente etc. Da fehlt dann halt irgendwann das Know How, bzw. speziell das Wissen oder die Kenntnis eines bestimmten Teils.

    Stell dir mal vor du machst einen Tippfehler in nem Blogpost, sowas kommt vor, oder einen Grammatikfehler, weil du es vielleicht nicht besser wusstest. Dieser führt dazu dass der ganze Post nicht mehr lesbar ist. Oder dass alle Blogposts nicht mehr lesbar wären. Wegen dem einen Fehler.

    Bei einem Text oder einem Buch nicht vorstellbar. Bei Software schon. Eine viel erzählte Anekdote der Informatik ist der Absturz einer Rakete der USA. Da wurde ein Punkt mit einem Komma vertauscht und die Rakete ist halt mal explodiert. Der Code hat syntaktisch noch Sinn gemacht aber etwas völlig anderes bewirkt, dumm gelaufen.

    Ein Mensch der in einem Satz einen Fehler findet kann diesen außerdem noch durch was sinnvolles ersetzen. Computer folgen stur der Programmierung, wenn da Stuss steht wird er halt ausgeführt.

    OO hat genau den gegenteiligen Effekt zu dem was du sagst. Sicher wenn eine Oberklasse fehlerhaft ist zieht sich der Fehler durch alle erbenden Klasse. Die Oberklasse wird aber viel viel schlanker wodurch sie auch einfacher wartbar ist. OO bringt quasi nur Vorteile. Habe letztens mal den Src von RtCW angeschaut, rein prozedural, das ist furchtbar, da blickt kein Mensch durch.

    Autovergleich: Ich behaupte mal dass die rein Montage eines Autos wesentlich simpler ist als die Programmierung einer umfangreichen Software. Sicher braucht man auch da entsprechende fertigkeiten, aber es ist halt doch nur verbinde Metallteil A mit Metallteil B mit Schraube S. Blinkerbirnchen falsch rum eingesteckt und der Kotflügel fällt ab? Nicht möglich, bei Software so in der Art halt schon.
    Ich spreche gezielt nicht von der Entwicklung bzw. dem Konzept, dort braucht es beiderseits Spezialisten.

    Achja, neue Autos sind zu 90% so gut durch viele viele kleine Mikrocontroller mit viel viel viel Software 😉

    Ein weiterer wichtiger Punkt der zusätzlich dazu kommt ist das Software nicht auf einer Hardware läuft, sondern auf vielen verschiedenen. Da kommen unzählige Kombinationen zusammen wo eben auch was schief gehen kann. Dazu schlecht eingestellte Betriebssysteme uvm.

    Zum Schluß: Ich will nicht Bugs in Software verteidigen, aber man kann sie nicht ausschließen, es geht einfach nicht. Aber man kann versuchen sie zu minimieren.

  16. Kai

    Dann muß man aber halt auch Strukturen ändern wenn sich etwas bessern soll oder es wird noch in 100 Jahren so weiter geschlampt.

    und

    sofern die Gesellschaft dies unterstützt, wird es in Zukunft Open Source Alternativen

    Exakt…. doch jetzt das große ABER….. – nur vorweg, ich heiße das nicht gut – …. damit läßt sich kein Geld verdienen und keine Firma der Welt wird sich auf Open Source bei großen Projekten einlassen. Klar alle wollen und nehmen sich von dem großen Kuchen Opens Source etwas raus, aber hergeben will dann keiner mehr etwas davon. Ich kann aus eigener Erfahrung berichten, das bei Projekten > 10 Mio Euro Firmen zu geizig waren für €150 Softwarelizenzen zu kaufen, die das Projekt hätten retten können. Und diese Lizenzen basierten auf Open Source, bzw. GNU. Also waren wir Entwickler gezwungen irgendwas neu zu erfinden, was es längst erprobt gab. Tja, was soll ich sagen, das Resultat ist dahingestrickte Software, die ein Vermögen gekostet hat und letztendlich den Endkunden (meißt die Fachabteilungewn) nicht in dem Maße zufrieden stellt wie wir Softwareentwickler es gerne gesehen hätten. Und die Schmach fällt aufgrund von Geiz wieder auf uns zurück *kopfschüttel*. Aber so ist das Leben in großen Projekten, das kann man nicht ändern, da immer ein Ahnungsloser und nicht zu überzeugender verborter Vorstand leider das letzte Wort hat; auch wenn es bei 10 Mio Euro nur um €150 geht, die man als Entwickler gerne hätte um das Maximum aus seinem Wissen, seinem Können zum Wohle des Kunden herauszuholen. Taj, das ist das Los eines Entwicklers.

    lg

    Kai

  17. Kai

    An sich beschreibst Du das was ich auch sage – da wird mit cut & paste OO Code weiter verwurstet und damit nicht nur jeder Fehler sondern auch jedes „Feature“ so lange bis es zu einem schweren Bug wird.

    Im Endeffekt hast Du recht, ja Fehler werden sehr häufig mitübernommen. Doch das ganze auf die Informatriker, Programmierer zu wälzen ist in diesem Falle unfair. Klar, wir schleppen diesen ganzen Ballast mit, doch uns ist immer und ständig bewusst das es so ist. Daher spreche ich ja auch so offen darüber. Leider ist keine Firma der Welt bereit für gute Programmierleistungen und neue innovative Lösungen das zu bezahlen, was es Wert ist. Da geht es immer nur darum den günstigsten Weg und die billigste und schnellste Alternative zu finden, auch wenn diese mit Bugs behaftet ist (die kann man dann ja später fixen, Hauptsache das Programm funktioniert im Grunde wie es soll – egal, die Druck Funktion patchen wir dann später rein). Leider sind uns Entwicklern hier die Hände gebunden…. Ein gewisses Mitspracherecht haben wir zwar, aber wir können keine Entscheidungen beeinfllussen (zumindest nicht in dem Maße, wie es für ein Projekt sicher besser wäre). Tja, so ist das Leben, um das zu ändern mußt Du am Management ansetzten, aber sicher nicht bei den Programmierern.

    lg

    Kai

  18. Kai wenn das Verhalten von Programmierern immer so wäre wie Deines hier … wäre meine Reaktion gegenüber ihnen auch deutlich entspannter 🙂

    Aber um so mehr habe ich dann doch Recht. Es gibt einen strukturellen Mangel der das Ergebnis beeinträchtigt. Und da muß so lange mit dem Finger in der Wunde gestochert werden bis etwas passiert.

    Aber ob da die Kais dieser Welt darin stochern oder die Lunas das ist egal glaube ich …

    Luna