fenris kcf schrieb:
Nun, es gibt eben Menschen für die Geld nicht der einzige Antrieb im Leben ist. Tatsächlich bin ich der Meinung, dass quelloffene Programme oft sauberer programmiert sind, da nicht der Gewinnabwurf im Fokus ist, sondern der Nutzen für die Menschheit.
Ganz zwangsläufig ist 'der Nutzen für die Menschheit' für Software, die man verkaufen will, ebenfalls gegeben, sonst kauft's ja keiner. Was 'Nutzen f.d. Menschheit' im einzelnen ist mal außen vor gelassen - wenn man sich da über die erhebt, die meinen, es wäre für sie von Nutzen (selbst Antivirus, Klingeltöne, iMussolini, ...) wird es schwierig; wer soll das entscheiden, und wie? Selbst der Virus ist ja für den, der ihn in die Welt setzen will, nützlich.
oft sauberer will ich grundsätzlich bezweifeln, wenn damit gemeint ist 'häufiger als'. Wenn das nicht gemeint ist, dann ist es ja ohnehin kein taugliches Argument. Auch würde das Argument empfehlen, die Software nicht zu verkaufen - dann wird sie qualitativ besser.
Ich denke man muss schon zwischen Programmierung im geschäftlichen und im "natürlichen" bzw. privaten Bereich unterscheiden. Allerdings ist es auch nicht wahr, dass man mit OpenSource kein Geld verdienen kann - gibt genügend Gegenbeispiele.
Sprechen wir eigentlich von Open Source, oder von Free- (and open-source-) Software?
Quelloffene Software kann verständlicherweise viel leichter auf Fehler, Macken, ungewollte "Features" und ähnliches geprüft werden.
Es geht ja um die Produktion, nicht die Konsumtion der Software. Für den Hersteller gäbe es andere Wege, seine Software zu verbessern - eine bequeme Fehlerreport- und Feature-Request-Funktion, Belohnung für den, der zuerst einen Fehler meldet z.B.
Bei großen Projekten wird auch die Arbeit unterschätzt einen Fehler überhaupt zu suchen. Ich habe beispielsweise ganz gute Grundkenntnisse in C, aber keine mit Qt, gtk und wie die Frameworks alle heißen. Wenn ich in einem Gnome-Programm einen Fehler suchen müßte, dann fängt es an damit die Quellen zu suchen und zu installieren, um dann zu sehen, ob der Fehler im Programm, oder in einer verwendeten Bibliothek steckt. Damit müssen also weitere Quellen runtergeladen werden. Da kommen leicht 100te Dateien zusammen - wenn man da nicht die Bibliotheken ganz gut kennt, weil man regelmäßig selbst damit programmiert, und der Fehler nicht einen Abbruch erzeugt, der sich im Debugger leicht rückverfolgen läßt, dann dauert es Stunden oder gar Tage, um überhaupt die Stelle zu finden, an der der Fehler auftritt.
Wenn man dann das Framework nicht kennt sind die Chancen auch groß, dass man nur einen üblen Hack einpflegen kann, um das Verhalten zu ändern, weil man die intendierte Verwendung nicht kennt.
Außerdem wollen die Entwickler, daß man das Programm in der neuesten Version verwendet, was bei komplexen Abhängigkeiten auch wieder bedeutet, dass man stundenlange Vorbereitungszeit benötigt.
Leicht ist die Fehlersuche also nur für eine sehr, sehr kleine Expertengruppe, die in der Regel lieber an eigenen Projekten arbeitet, als an fremden. 😉
Außerdem hätte man bei entsprechender Lizenzierung die Möglichkeit und Freiheit, das System quasi beliebig anzupassen und zurechtzuschneiden. Wer mit Flavour A nicht so recht zufrieden ist, wechselt eben zu Flavour B und so kann das Prinzip der natürlichen Selektion, das für kontinuierliche Verbesserung sorgt, auch für die Software Einzug halten.
Die Frage bezog sich doch auf den Hersteller, nicht den Konsumenten der Software.
Ich finde die Frage aber unglücklich. Einer Firma wie Apple, die auch vom Verkauf von Software lebt, kann freie und offene Software empfohlen werden, wenn
die das Prinzip nicht kennen. Bei Apple eher unwahrscheinlich.
sie Vorteile nicht gesehen oder verstanden haben. Also Vorteile für sich, wohlgemerkt, nicht für den Konsumenten.
sie das Prinzip kennen, und richtig verstanden haben, aber anders bewerten als Du, also von einem anderen Wertesystem überzeugt werden müssten.
sie das Wertesystem eigentlich schon mit Dir teilen, aber vielleicht nicht erkannt haben, inwiefern das Wertesystem betroffen ist.
Ich denke, daß man in den Punkten 1 und 2 in einer offenen Diskussion weitgehend Einigkeit erzielen könnte, aber bei Punkt 3 und v.a. 4 nicht zusammenkommen wird.
Ein Programmierer, der von seiner Arbeit leben kann, die ihm Freude macht und Reputation verschafft - für den ist es nicht attraktiv, den Broterwerb aufzugeben.
Die Frage
Warum also sollte Apple (z.B.) sein iPhone OS Als Open Source System raus geben?
würde ich gar nicht stellen, denn sie unterstellt ja, dass Apple das soll - dass man weiß, dass man es empfehlen will, aber nicht weiß wieso. Ich meine man sollte überhaupt umgekehrt erst wissen wieso man etwas empfiehlt, bevor man es tut.
Alles andere ist Dogmatismus.