staging.inyokaproject.org

Warum Open Source programmieren

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

TetraPak

Anmeldungsdatum:
8. Mai 2010

Beiträge: Zähle...

Hi, ich hoffe das ist das richtige Forum.

Ich werd ganz oft gefragt "Was findest du an Open Source eigentlich so toll?" Tja, dann sag ich das jeder Mensch auf der Erde mithelfen kann zu verbessern, es kostet nichts und ist dennoch gute Software" Ja, ist ja schön und gut... aber welche Motivation hat ein Programmierer, bei Open Source Projekten mitzumachen? Sicher, Spaß, zu viel Freizeit,... aber das sind keine richtigen Grüne aktiv in einer Firma zu arbeiten, die keine Einnahmen macht oder? Warum also sollte Apple (z.B.) sein iPhone OS Als Open Source System raus geben? Das sind so Fragen, auf die ich keine Antwort weiß und auch nichts im Internet finde. Vielleicht habt ihr ja n paar Ideen ☺

Gruß,

TetraPak

Bearbeitet von prometheus0815:

Überflüssige Zeilenumbrüche entfernt. Bitte überlasse diese unseren Webbrowsern, denn die wissen am besten, wie breit ihr Fenster gerade ist. Verwende mit einer Leerzeile erzeugte Absätze nur, um Deinen Beitrag inhaltlich zu gliedern.

fenris_kcf

Anmeldungsdatum:
27. August 2009

Beiträge: 249

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. 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.

Quelloffene Software kann verständlicherweise viel leichter auf Fehler, Macken, ungewollte "Features" und ähnliches geprüft werden. 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.

Man könnte genausogut die Frage stellen, warum manche Menschen das Verhaltens-Prinzip "Geben ist seeliger denn Nehmen" an den Tag legen, wo ihnen das doch nicht mehr Geld einbringt.

seaman

Anmeldungsdatum:
27. August 2008

Beiträge: 1612

Das empfinde ich auch als äußerst interessantes Thema.

Wenn ich programmieren könnte, würde ich (aus jetziger Sicht) mir ganz stark überlegen, unter welche Lizenz ich meine Software stelle und/oder ob ich sie nur teilweise zu OpenSource mache. Aber wenn ich wirklich programmieren könnte, würde ich vielleicht doch anders darüber denken. Ich weiß es nicht.

Ich finde es aber toll, dass es Menschen gibt, die in ihrer Freizeit (aus Spaß an der Freude?) programmieren und es dann frei zur Verfügung stellen.

Es gibt aber dennoch z.B. über Support Möglichkeiten, um mit seiner OpenSource-Software ein bisschen was zu verdienen. Hängt immer von der Software ab, ob sich ein kommerzieller Support lohnt. Es gibt ja genug Software und Betriebssysteme (z.B. Ubuntu und andere Linux-Distris), wo diese Konzept erfolgreich angewendet wird.

Aber um jetzt mal auf z.B. Windows oder das iPhone OS einzugehen. Mir würde spontan kein Grund einfallen, warum Microsoft oder Apple ihre System OpenSource machen sollten. Die wären doch schön blöd, oder?

Elinoy

Anmeldungsdatum:
2. Mai 2009

Beiträge: 345

Die Tatsache, dass man so kostenlos von der Arbeit Anderer profitieren kann

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

Freie Software entsteht oft, weil jemand ein Programm, aber kein passendes Programm hat. Dahinter steht also kein kommerzielles Interesse. Zudem sind solche Programme anfangs zu klein und zu trivial, um sie verkaufen zu können. Eine Veröffentlichung unter freier Lizenz bietet also keine Nachteile. Dafür aber kann man so schon früh die Entwicklungslast auf mehrere Schultern verteilen. Das gilt gerade für Bibliotheken und kleine Tools, die keine Chance hätte, wenn man dafür bezahlen müsste.

Ähnliches gilt oft auch für Firmen. Konzerne wie Google sehen Software nicht als Produkt, sondern als Plattform für eigene Dienstleistungen. Die Software selbst kann daher durchaus unter freier Lizenz veröffentlicht werden. So hätte Google für Chrome nie Geld verlangen können, denn kaum jemand ist heute noch bereit, für Webbrowser Geld zu zahlen. Durch die Veröffentlichung unter freier Lizenz aber kann Google von der Mitarbeit anderer profitieren. Den eigentlichen Zweck, nämlich Zugang zu den Google-Diensten im Netz zu erleichtern, erfüllt das Programm in jedem Fall.

Anders sieht es natürlich bei Firmen aus, für die Software noch immer Bestandteil des Produkts oder das Produkt selbst ist (e.g. Apple, Microsoft). Diese Firmen geben ihre Software natürlich nicht frei, da sie mit der Software und nicht mittels der Software Geld verdienen.

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17630

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.

losingYou

Avatar von losingYou

Anmeldungsdatum:
10. Oktober 2009

Beiträge: 372

'Cause it's fun? Lücken im Code können schneller behoben werden(viele Hände, schnelles Ende), als Neuling im programmieren wird man pro Skript/Programm um vieles an 'Erfahrung reicher etc., Einfach weil diese Menschen Spaß daran haben anderen etwas zu schenken ohne an sich selbst zu denken? Ich denke ja, die meisten OpenSource Projekte entstehen aus Problemen, und sind zuerst nur kleine Scripte, die dann aber immer besser und größer werden.

PS: Nicht hauen wenn was falsch war, hab den Text jetzt mindestens 3 mal(jedes mal wurde er kürzer^^) umgeschrieben, weil die Definition OpenSource, warum man Software unter OpenSource stellen sollte, schon schwer zusammenzufassen ist, außerdem bin ich immer abgeschweift ☹

lg, losingYou

PPS: Wirklich gute Frage, hab Sie mir noch nie gestellt, aber jetzt.... EDIT: Wenn du es aber genau wissen willst, frag doch mal einen OpenSource Entwickler warum er das macht.

DasIch

Avatar von DasIch

Anmeldungsdatum:
2. November 2005

Beiträge: 1130

Früher oder später fangen Programmierer mal an. Wenn man dass in der Freizeit tut reicht ein Tutorial alleine nicht aus, man fängt üblicherweise mit kleinen Open Source Projekten die sich andere ansehen und kritisieren so dass man sich verbessern kann. Wenn man keinen guten Grund hat fängt man dann nicht einfach damit an geschlossene Projekte zu machen.

Vegeta

Avatar von Vegeta

Anmeldungsdatum:
29. April 2006

Beiträge: 7943

DasIch schrieb:

Wenn man dass in der Freizeit tut reicht ein Tutorial alleine nicht aus, man fängt üblicherweise mit kleinen Open Source Projekten die sich andere ansehen und kritisieren so dass man sich verbessern kann.

Das mag auf Skripte wie man sie in "Shell und Programmieren" findet zutreffen, aber alles was darüber hinausgeht, dazu muss man sich nur mal bei "Projekte" hier im Forum anschauen oder generell mal mal SourceForge vorbeischauen, dann sieht man, dass da bestenfalls Kommentare von User kommen, mit Wünschen zu weiteren Funktionen, Bugs aber garantiert keine Hinweise wie man dieses oder jenes besser umsetzen kann oder gar Quellcode.

Wenn man keinen guten Grund hat fängt man dann nicht einfach damit an geschlossene Projekte zu machen.

Doch, man muss sich nur mal angucken was sich bei Windows tut. Dort ist die Philosophie eine ganz andere und die meisten Programme dort werden als Freeware veröffentlicht oder gleich als Shareware. Sollten irgendwann Firmen die professionelle Software herstellen auch mal Linux entdecken, kann man sich jetzt schon drauf einstellen, dass die definitiv wie unter Windows Closed Source sein werden.

Astorek

Anmeldungsdatum:
30. Januar 2008

Beiträge: 171

Es gibt ja auch den "Twist", den Quellcode unter einer OpenSource-Lizenz zu stellen, die restlichen Inhalte (Grafiken, Datenbanken etc.) aber weiterhin geschützt zu lassen und deren Verbreitung zu unterbinden. Zugegeben, ich habe keine Ahnung wie man mit dieser Geschäftsidee auch Geld direkt durch OpenSource bekommen könnte, aber zumindest in Richtung Community ist das eine nette Geste. Siehe ID-Software, deren Spiele (ohne Grafiken) nach einigen Jahren OSS wird und diese dann von der Community weiterentwickelt wird (schonmal Doom auf einem iPod gespielt? ;D )...

DasIch

Avatar von DasIch

Anmeldungsdatum:
2. November 2005

Beiträge: 1130

Vegeta schrieb:

Das mag auf Skripte wie man sie in "Shell und Programmieren" findet zutreffen, aber alles was darüber hinausgeht, dazu muss man sich nur mal bei "Projekte" hier im Forum anschauen oder generell mal mal SourceForge vorbeischauen, dann sieht man, dass da bestenfalls Kommentare von User kommen, mit Wünschen zu weiteren Funktionen, Bugs aber garantiert keine Hinweise wie man dieses oder jenes besser umsetzen kann oder gar Quellcode.

Üblicherweise arbeitet man an immer größeren Projekten oder steigt bei existierenden ein, was zwangsläufig immer zur Folge hat dass jemand über den Code schaut und sich den ansieht. Desweiteren sind die meisten Projekte qualitativ ziemlich schlecht, vorallem wenn sie sich nicht an andere Entwickler richten.

P.S.: Was haben eigentlich alle immer mit Sourceforge, dass benutzt keiner der halbwegs vernünftig ist. Üblicherweise nutzt man Bitbucket, Github oder Gitourious welche sich alle deutlich mehr auf den Code beziehen.

Vegeta

Avatar von Vegeta

Anmeldungsdatum:
29. April 2006

Beiträge: 7943

DasIch schrieb:

Üblicherweise arbeitet man an immer größeren Projekten oder steigt bei existierenden ein, was zwangsläufig immer zur Folge hat dass jemand über den Code schaut und sich den ansieht. Desweiteren sind die meisten Projekte qualitativ ziemlich schlecht, vorallem wenn sie sich nicht an andere Entwickler richten.

Von wem sprichst du überhaupt? 😀
Fakt ist, dass die Beteiligung bei Open-Source-Projekten extrem mies ist, das weiß ich von anderen Autoren aber auch aus eigener Erfahrung. Viele Projekte sterben deswegen auch sofort, wenn der Entwickler das Interesse verliert und das selbst bei bekannten oder beliebten Programmen. EasyTAG ist so ein Beispiel, die letzte Final gab es vor 3 Jahren und das obwohl es für GNOME keine brauchbare Alternative gibt. VLC hat zum Beispiel nicht genug Freiwillige die sich ums Packaging für Windows und Mac OS kümmern und neuere Versionen kommen daher für diese OS zeitlich versetzt oder gar nicht und das obwohl VLC ja nun wirklich ein bekanntes Projekt ist. BFilter fällt mir spontan auch noch ein, wo laut Autor niemand in mehreren Jahren was beigetragen hat. Das Schicksal von Proximodo ist sogar noch bitterer, weil es sogar eine Community gab und trotzdem niemand irgendwie bei diesem Open-Source-Projekt beim Programmieren geholfen hat oder es nach Jahren mal forken würde. Die Liste kann man schier endlos fortsetzen.

P.S.: Was haben eigentlich alle immer mit Sourceforge, dass benutzt keiner der halbwegs vernünftig ist. Üblicherweise nutzt man Bitbucket, Github oder Gitourious welche sich alle deutlich mehr auf den Code beziehen.

SourceForge ist sehr beliebt, im Grunde ist es aber auch egal wo die Projekte gehostet werden. Es ändert nichts an der Tatsache, dass sich kaum Leute irgendwie einbringen und Code Review, was bei Open Source ja gerne als Argument der Sicherheit genannt wird, ein Mythos ist.

DasIch

Avatar von DasIch

Anmeldungsdatum:
2. November 2005

Beiträge: 1130

Das sind alles größere Projekte die sich an normale User wenden. Desweiteren gibt es einige wenige Projekte bei denen es tatsächlich wenig zu tun gibt wie z.B. EasyTag. Solange da kein Bug ist oder irgendein neues Format eingeführt wird gibt es keinen Grund etwas daran zu tun. Der gleiche Effekt tritt bei cdrtools ein, da ist dass letzte Release auch noch deutlich länger her. Solche Spezialfälle eignen sich schlecht als Beispiel.

Windows und Mac OS Support ist ebenfalls überall ein Problem.

Projekte die in sich nicht interessant sind finden natürlich ebenfalls wenig Aufmerksamkeit unter Programmierern.

Vegeta

Avatar von Vegeta

Anmeldungsdatum:
29. April 2006

Beiträge: 7943

DasIch schrieb:

Das sind alles größere Projekte die sich an normale User wenden. ... Solche Spezialfälle eignen sich schlecht als Beispiel.

Welche Programme wenden sich denn nicht an "normale" User und ziehen die Programmierer an? Oder anders welche Beispiele (außer wirklich große Projekte) gibt es überhaupt, wo sich Programmierer aktiv beteiligen und dem Initiator des Projektes aktiv unterstützen? Mir fällt da im Moment nur eines ein und das ist Avidemux.

Desweiteren gibt es einige wenige Projekte bei denen es tatsächlich wenig zu tun gibt wie z.B. EasyTag. Solange da kein Bug ist oder irgendein neues Format eingeführt wird gibt es keinen Grund etwas daran zu tun. Der gleiche Effekt tritt bei cdrtools ein, da ist dass letzte Release auch noch deutlich länger her.

Nun, mir würde bei EasyTAG noch eine ganze Menge einfallen, was man daran verbessern kann. Im Vergleich zum Windows-Freewareprogramm Mp3tag sieht EasyTAG leider sehr blass aus - sieht man auch an den häufigen Anfragen hier im Forum.

Windows und Mac OS Support ist ebenfalls überall ein Problem.

Dabei brauchts dabei noch nicht mal Programmierkenntnisse.

Projekte die in sich nicht interessant sind finden natürlich ebenfalls wenig Aufmerksamkeit unter Programmierern.

Ja oder anders, noch weniger als der Rest. 😉

DasIch

Avatar von DasIch

Anmeldungsdatum:
2. November 2005

Beiträge: 1130

Vegeta schrieb:

Welche Programme wenden sich denn nicht an "normale" User und ziehen die Programmierer an?

Alles was man zum Programmieren braucht: Dokumentationstools, Editoren, Compiler/Interpreter, Rahmenwerke und Bibliotheken.

Sowie Projekte die mit neuen Techniken zu tun haben oder ähnliches.

Antworten |