Warum wird Qt so selten verwendet?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
BlackJack

Eine ähnliche Diskussion läuft gerade in der englischsprachigen Newsgroup. Da hat jemand als Argument gegen die Qt-Lizenzpolitik gebracht, dass man keinen bereits vorhandenen und unter anderer Lizenz veröffentlichten Quelltext für Programme unter der kommerziellen Lizenz verwenden kann, wie man das mit BSD oder MIT Quelltexten ja eigentlich dürfte, zumindest von *den* Lizenzen her.

@burli: Auch nichts für ungut, aber das jemand seinen Lebensunterhalt mit Programmieren und Warten von Individualsoftware verdient und nicht mal eben 5000€ für ein GUI-Toolkit übrig hat, halte ich nicht für abwegig. Oder ich kenne zu viele Leute bei denen was falsch läuft. Und wenn es dann noch kostenlose Alternativen gibt, hat Qt halt verloren.

Was den Wert der Arbeit angeht: Da ist dann die Frage wieviel Wert eigentlich Arbeit hat, die man nur macht, weil man keine fertige, und vielleicht sogar kostenlose Lösung verwenden will. Den könnte man sogar negativ beziffern.

Auch wenn es mich zu einem gewissen Grad selbst betrifft, bin ich beim Wert von Software immer etwas kritisch und würde sagen, der tendiert tatsächlich gegen Null. Wirklichen Wert hat die Arbeit die man da reingesteckt hat. Da man das Ergebnis dann aber verdammt kostengünstig fast unbegrenzt vervielfältigen kann, sinkt der Wert einer Kopie, es wird aber trotzdem in der Regel der gleiche Preis pro Kopie verlangt, egal wieviele davon verkauft werden. Diese Art Geld zu drucken kann auf Dauer für eine Wirtschaft IMHO nicht gesund sein, weil's echtes Geld gegen virtuelle und beliebig kopierbare "Werte" ist.

Das trifft insbesondere auch auf die von Dir erwähnte Musik zu.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

BlackJack hat geschrieben:Auch wenn es mich zu einem gewissen Grad selbst betrifft, bin ich beim Wert von Software immer etwas kritisch und würde sagen, der tendiert tatsächlich gegen Null. Wirklichen Wert hat die Arbeit die man da reingesteckt hat. Da man das Ergebnis dann aber verdammt kostengünstig fast unbegrenzt vervielfältigen kann, sinkt der Wert einer Kopie, es wird aber trotzdem in der Regel der gleiche Preis pro Kopie verlangt, egal wieviele davon verkauft werden. Diese Art Geld zu drucken kann auf Dauer für eine Wirtschaft IMHO nicht gesund sein, weil's echtes Geld gegen virtuelle und beliebig kopierbare "Werte" ist.
Canonical ist ein schönes Gegenbeispiel. Nach 5 Jahren ist die Firma immer noch nicht in der Lage aus eigener Kraft schwarze Zahlen zu schreiben obwohl Ubuntu mittlerweile glaube ich die am weitesten verbreitete Distribution ist.

Das Argument, man könne Software ja ohne zusätzliche Kosten beliebig oft kopieren, ist ziemlich fadenscheinig. Bis es überhaupt erstmal soweit kommt eine Software an den Mann zu bringen hat man ja schon einiges an Zeit und Geld investiert. Und wenn sie dann mal fertig ist heißt das noch lange nicht das man es auch beliebig oft kopieren kann. Außerdem ist die Arbeit dann ja noch nicht abgeschlossen nachdem man die Software verkauft hat. Man muss vielleicht Fehler suchen und irgendwann wollen die Leute ja wieder eine neue Version haben.

Softwareprogrammierung ist genauso ein kontinuierlicher Job wie alles andere. Ein Friseur kauft sich ja auch nur einmal eine Schere und schneidet damit tausenden von Leuten die Haare. Trotzdem kann er das nicht kostenlos machen, egal wie vielen Leuten er mit der Schere die Haare schneiden kann.

Hätte Microsoft nur einmal Windows 1.0 verkauft und würde seitdem nur kostenlose Updates verteilen würde das genauso wenig funktionieren, egal wieviele Kopien von Windows 1.0 verkauft wurden.

Es gibt nur zwei Möglichkeiten: entweder man verlangt für Software Geld oder man verlangt kein Geld. Aber, wenn man kein Geld verlangt kann man nur nebenbei programmieren weil man Essen, Strom usw ja nicht kostenlos bekommt.
BlackJack

Der letzte Satz zeigt ziemlich deutlich das wir aneinander vorbeireden. Man nimmt für *Software* Geld oder nicht, ist eben nicht die Entscheidung die ich da sehe, sondern ob man für die *Arbeit* Geld nimmt oder nicht. Ich habe auch nicht gesagt, dass Software prinzipiell nichts Wert ist, sondern das der Wert sinkt je mehr Kopien man davon an den Mann bringt, da IMHO der echte Wert nicht in der Software, sondern in der Zeit/Arbeit steckt. Wenn man mehr Arbeit reinsteckt, als man Geld durch Kopien reinholt, schreibt man natürlich rote Zahlen.

Da unterscheidet sich Software deutlich vom Frisiör und seiner Schere. Softwarefirmen machen genau dann richtig Asche wenn der Punkt für die Investitionen in das Produkt überschritten ist und der Gewinn aus der Differenz zwischen den geringen Kopierkosten und dem Kaufpreis für den Kunden besteht. Diese Grenze tritt beim Friseur nicht auf, der muss immer schön weiterackern für das Geld, das er bekommt. Er wird halt für die Arbeit bezahlt, und nicht für ein fast kostenlos vervielfältigbares Produkt.

Hätte Microsoft nur einmal Windows 1.0 verkauft und danach nur soviel Geld für Updates eingenommen wie die Entwicklung + x% gekostet hat, wären sie heute nicht so reich. Aber halt auch nicht arm.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

burli hat geschrieben:Es gibt nur zwei Möglichkeiten: entweder man verlangt für Software Geld oder man verlangt kein Geld. Aber, wenn man kein Geld verlangt kann man nur nebenbei programmieren weil man Essen, Strom usw ja nicht kostenlos bekommt.
burli hat geschrieben:Canonical ist ein schönes Gegenbeispiel. Nach 5 Jahren ist die Firma immer noch nicht in der Lage aus eigener Kraft schwarze Zahlen zu schreiben obwohl Ubuntu mittlerweile glaube ich die am weitesten verbreitete Distribution ist.
Canonical hat auch nicht vor Software zu verkaufen, ebensowenig wie Red Hat oder Novell es tun. Aber man sieht am Beispiel Red Hat dass sie Gewinn machen obwohl die Software die sie anbieten, RHEL sowohl in einer Community-Version wie Fedora als auch in quasi-identischer Form als CentOS und Scientific Linux verfügbar ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

Leonidas hat geschrieben:Canonical hat auch nicht vor Software zu verkaufen, ebensowenig wie Red Hat oder Novell es tun.
Also so weit ich weiß verkauft Novell ihre Software sehrwohl.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

BlackJack hat geschrieben:Der letzte Satz zeigt ziemlich deutlich das wir aneinander vorbeireden. Man nimmt für *Software* Geld oder nicht, ist eben nicht die Entscheidung die ich da sehe, sondern ob man für die *Arbeit* Geld nimmt oder nicht. Ich habe auch nicht gesagt, dass Software prinzipiell nichts Wert ist, sondern das der Wert sinkt je mehr Kopien man davon an den Mann bringt, da IMHO der echte Wert nicht in der Software, sondern in der Zeit/Arbeit steckt. Wenn man mehr Arbeit reinsteckt, als man Geld durch Kopien reinholt, schreibt man natürlich rote Zahlen.
Man kann es drehen und wenden wie man will, auch ein Programmierer braucht Geld. Es gibt verschiedene Geschäftsmodelle: man verkauft die Software, man verkauft Support, man finanziert sich über Werbung usw.

Welches der Geschäftsmodelle man wählt hängt wohl von der Art der Software und von der Zielgruppe ab. Man kann an Privatkunden einfach keinen Support verkaufen.

Canonical, Novell und Red Hat verkaufen eben Support. Und zwar jedes Jahr auf's neue und nicht wirklich billig. Novell will für 3 Jahre 24/7 Support 3750€
Benutzeravatar
keppla
User
Beiträge: 483
Registriert: Montag 31. Oktober 2005, 00:12

burli hat geschrieben:Man kann es drehen und wenden wie man will, auch ein Programmierer braucht Geld. Es gibt verschiedene Geschäftsmodelle: man verkauft die Software, man verkauft Support, man finanziert sich über Werbung usw.
"usw." beinhaltet u.A. auch man finanziert sich über Dienstleistungen, was auch nichts oft großartig anderes als support ist, wenn die Software frei zur verfügung steht und der Kunde es "auch selbst machen könnte".
Beispiel wären die vielen kleinen 1€-Webspaces, die endlosen Emaillösungen, etc. Und das ist eine Form von Support, die man durchaus den Privatkunden verkauft.
Mal ganz ehrlich, selbst wenn eine Lizenz 5000€ kosten würde: wenn die 5000€ ein entscheidender Kostenfaktor ist macht man doch was falsch.
Sagen wir mal, wir nennen einen Faktor von >10% entscheident.
Dann wären 5000€ ab einer Höhe von 50.000€ Entwicklungskosten kein entscheidender Kostenfaktor mehr. Will heissen, das Projekt muss schon deutlich über 1/2 Mannjahr groß sein, oder die 5000€ müssen sich rentieren, indem sie Zeit im Wert von mehr als 5000€ sparen
Dass ein Framework gegenüber einem anderen, sagen wir, einen Monat arbeit spart, sollte man (zumindest mir) erstmal schlüssig darlegen, bevor ich es benutze, geschweige denn kaufe.
Und man kann sehr angenehm von kleineren (was ja eben nicht schlecht bezahlten heißen muss) Projekten leben, nicht jeder hat nur einen einzigen aber großen Kunden.
lunar

gerold hat geschrieben:Wenn du mit Qt ein Programm schreibst und dafür von irgendjemandem Geld haben möchtest (egal wie wenig), dann musst du einen riesen Patzen Geld an Trolltech zahlen.
Die GPL erlaubt die kommerzielle Verwertung eines Programms sehr wohl, folglich werden Lizenzkosten nur für proprietäre Programme fällig. Das mag für viele Entwickler äquivalent ist, ist aber nun mal nicht das gleiche.
gerold hat geschrieben:"Lieber neuer Arbeitgeber, wenn du möchtest, dass ich für dich programmiere, dann musst du erst die Qt-Lizenz bezahlen!"
"Lieber neuer Arbeitgeber, wenn du möchtest, dass ich für dich programmiere, musst du erst deine gesamte Software auf wxWidgets umstellen." funktioniert aber ebensowenig ;)
BlackJack hat geschrieben:Da hat jemand als Argument gegen die Qt-Lizenzpolitik gebracht, dass man keinen bereits vorhandenen und unter anderer Lizenz veröffentlichten Quelltext für Programme unter der kommerziellen Lizenz verwenden kann, wie man das mit BSD oder MIT Quelltexten ja eigentlich dürfte, zumindest von *den* Lizenzen her.
Trolltech/Qt Software erlaubt ja seit einiger Zeit auch andere Lizenzen für Qt4-Software, u.a. auch BSD und MIT. Man kann also nun auch MIT-Programme mit Qt4 schreiben, so dass dieses Argument eigentlich keines mehr ist. Außerdem bedeutet die Tatsache, dass wxWidgets und Gtk unter liberaleren Lizenzen verbreitet werden, ja nun nicht, dass jedes Projekt diesen Lizenzen folgt. Es gibt auch GPL-lizenzierten wxWidgets/Gtk-Code, denn man folglich nicht in proprietären Projekten verwerten kann.
BlackJack hat geschrieben:Und wenn es dann noch kostenlose Alternativen gibt, hat Qt halt verloren.
Allein die Lizenz-Kosten zu betrachten, ist kurzsichtig. Man muss auch die Vorteile gegeneinander abwiegen, um beurteilen zu können, ob eine Bibliothek nicht doch ihr Geld wert ist.

Allerdings verstehe ich – auch wenn ich Qt4 für das beste verfügbare Toolkit halte – dass die hohen Lizenzkosten für (Py)Qt4 abschreckend wirken und oft genug auch nicht durch die Vorteile von Qt4 gerechtfertigt sind. Bei Python sind die Vorteile von Qt4 nicht so immanent wie bei C++, wo schon Features wie syntaktischer Zucker für Iteratoren, semiautomatische Speicherverwaltung und plattformübergreifende Basisfunktionalität ihres gleichen suchen.

Python hat das alles schon. PyQt4 ist im Gegenteil zu Qt4 keine eierlegende, plattformunabhängige Wollmilchsau, sondern eben nur ein GUI-Toolkit, ein gutes zwar, aber eben nur eines unter vielen. Qt4 ist der Konkurrenz mitunter technologisch voraus, die Portabilität, die konsequente Umsetzung des MVC-Patterns, das Signal-Slot-Konzept, die umfangreiche Widget-Sammlung, die Zeichenengine, etc. suchen sicherlich ihresgleichen. Allerdings reicht das eben nicht unbedingt aus, um vierstellige Lizenzkosten zu rechtfertigen. Oftmals ist es nicht mal genug, um für Gnome-Anhänger ein "desktop-fremdes" Toolkit zu rechtfertigen. Auch wenn man Qt4 mag, kann man nicht umhin, dass zuzugeben.
farid
User
Beiträge: 95
Registriert: Mittwoch 8. Oktober 2008, 15:37

gerold hat geschrieben:Wenn du mit Qt ein Programm schreibst und dafür von irgendjemandem Geld haben möchtest (egal wie wenig), dann musst du einen riesen Patzen Geld an Trolltech zahlen.
Das Problem mit Qt ist eher die GPL.

Ich stand auch mal als Freelancer vor der Entscheidung, Qt oder wxWidgets fuer ein Kundenprojekt zu verwenden. Der Kunde (eine Verwaltung) sollte zwar den Sourcecode von mir bekommen als Teil des Auftrags, musste aber aus diversen operativen und rechtlichen Gruenden diesen Quellcode den Sachbearbeitern und Drittparteien NICHT aushaendigen.

Deren Referat fuer Rechtsfragen analysierte daraufhin die GPL und BSD-aehnliche Lizenzen und kam zu dem Schluss, dass sie keine GPL-lizensierte Software wollten... sogar da, wo sie die Software nur fuer interne Zwecke benoetigten und diese nicht verkaufen / publizieren wollten.

Da der Auftrag relativ klein war (so um die 10,000 Euro), kamen mir die Kosten der kommerziellen Trolltech-Lizenz um alles unter BSD-Lizenz zu releasen als richtig exorbitant hoch vor. Ergo hab' ich deren GUI in wxWidgets programmiert und alle waren zufrieden.

Haette ich jetzt staendig mit GUI-Auftraegen zu tun gehabt, dann haette ich privat eine Trolltech-Lizenz verschmerzen koennen, denn die Qt-API gefaellt mir schon ganz gut; aber fuer one-shot Auftraegen, war das einfach nicht zu rechtfertigen.

Ich glaube, viele Entwickler, die sich nicht fuer Qt entschieden hatten, waren in einer aehnlichen Situation.
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Ich glaube eins wurde vergessen zu erwähnen... Was spricht gegen QT4? Es wird nicht so unendlich... unendlich stark gehyped wie GTK. Eine QT Anwendung sieht man unter Windows gar nicht. Es wird nichts wirklich installiert, es sieht absolut nativ aus. Wenn man jemanden sagt: "Opera benutzt QT"... ja und? Interessiert die Leute nicht, ebenso wenig Anfänger. GTK haben auch schon viele Anfänger gehört... und viele die Open Source noch nicht so kennen. Sie kennen dann Linux... dann Gnome... dann automatisch GTK.

Und unter Python hat sich wxPython ganz gut verbreitet... weil... *nachdenk* Sogar ich benutz es irgendwie. Irgendwas hat mich an PyQT3 damals abeschreckt... Ich weiß nicht mehr was.

Wenn ich was in C++ machen müsst... Würd ich 100% QT nehmen. Gar keine Frage.
BlackJack

@Lunar: Ich glaube Du hast das Argument nicht ganz verstanden: Die kommerzielle, ClosedSource-Variante von Qt verbietet, dass der Quelltext vorher schon unter einer freien Lizenz entwickelt wurde. Damit wollen sie wohl verhindern, dass eine Firma 20 Mitarbeiter eine Software ein Jahr lang unter der BSD-Lizenz entwickeln lässt, was ja nicht erzwingt, dass man das Produkt auch öffentlich macht, und dann wenn's fertig ist, *eine* kommerzielle Qt-Lizenz kauft und *ein* Entwickler das Projekt "umstellt", sprich die Lizenztexte austauscht. Man kann also in Programme, die unter der kommerziellen Qt-Lizenz stehen, weder schon vorhandene MIT/BSD/Sonstwas-Quellen einfliessen lassen, noch zum Beispiel von Entwicklern von GPL-Code das Recht kaufen deren Code in eine ClosedSource-Anwendung zu integrieren.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

farid hat geschrieben:Da der Auftrag relativ klein war (so um die 10,000 Euro), kamen mir die Kosten der kommerziellen Trolltech-Lizenz um alles unter BSD-Lizenz zu releasen als richtig exorbitant hoch vor.
Verstehe ich das richtig? Die Software die du geschrieben hast, hätte BSD sein dürfen? Dann wäre das inzwischen mit Qt4 kein Problem gewesen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Ich habe mich vor ca drei Jahren einmal mit Qt-Lizenzen beschäftigt und meine auch noch etwas wie ca 2000€ pro Entwickler im Kopf zu haben. Das ganze ging dann deutlich nach unten bei einer größeren Anzahl an Lizenzen.

Ich kann zwar zum Qt-Support nichts sagen, aber generell erkauft man sich den natürlich auch. Je nach Auffassung und auch ggf. Arbeitsweise kann das natürlich ausschlaggebend sein.

Für den Hobbyentwickler ist die Frage aber doch eh müßig: Man pickt sich eben das angenehmeste Toolkit für sich heraus ;-) Da ich Qt von früher und von C++ noch kenne, habe ich meine kleineren GUIs auch immer in Qt zusammengebastelt; Vorteil war halt auch, dass ich den Designer noch ganz gut kannte. Ohne solche Erfahrung hätte ich mich sicherlich erst einmal bei den drei vier großen Toolkits umgesehen.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

2000€ pro Entwickler? Das ist natürlich schon nicht schlecht. Aber ich gehe mal davon aus das sich das nur auf die Entwickler bezieht die auch wirklich an der GUI arbeiten bzw mit Qt zu tun haben. Vielleicht ist es ja mittlerweile auch anders.

Sei's drum, ich hab nicht vor kommerzielle Software zu entwickeln. Entweder wird es OpenSource oder nur für mich intern
Benutzeravatar
str1442
User
Beiträge: 520
Registriert: Samstag 31. Mai 2008, 21:13

Sei's drum, ich hab nicht vor kommerzielle Software zu entwickeln. Entweder wird es OpenSource oder nur für mich intern
Das schließt sich nicht aus. OpenSource kann auch kommerziell verkauft werden. Grade die GPL erlaubt es, Software gegen Geld zu verkaufen. Genau genommen bedeutet das, man bezahl einmal für den Code, und hat dann alle GPL Privilegien. Auch Vervielfältigung und Weiterverteilung. Im Grunde ist es also möglich, die Software nur einmal zu kaufen, und dann nach sonstwohin weiterzuverteilen, aber die Möglichkeit des Geld Verdienens besteht. Dieser hypothetische Fall dürfte auch eher unwahrscheinlich sein, grade bei Softwareunternehmen.
Benutzeravatar
name
User
Beiträge: 254
Registriert: Dienstag 5. September 2006, 16:35
Wohnort: Wien
Kontaktdaten:

str1442 hat geschrieben:
Sei's drum, ich hab nicht vor kommerzielle Software zu entwickeln. Entweder wird es OpenSource oder nur für mich intern
Das schließt sich nicht aus. OpenSource kann auch kommerziell verkauft werden. Grade die GPL erlaubt es, Software gegen Geld zu verkaufen. Genau genommen bedeutet das, man bezahl einmal für den Code, und hat dann alle GPL Privilegien. Auch Vervielfältigung und Weiterverteilung. Im Grunde ist es also möglich, die Software nur einmal zu kaufen, und dann nach sonstwohin weiterzuverteilen, aber die Möglichkeit des Geld Verdienens besteht. Dieser hypothetische Fall dürfte auch eher unwahrscheinlich sein, grade bei Softwareunternehmen.
Womit man mit Qt wieder kein Problem kriegt, wenn mans innerhalb der Richtlinien der GPL vertreibt.
Ohloh | Mein Blog | Jabber: segfaulthunter@swissjabber.eu | asynchia – asynchrone Netzwerkbibliothek

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.
lunar

Genau genommen könnte man sogar Qt selbst weiter verkaufen.

@BlackJack:
Interessant, das wüsste ich nicht. Das ist natürlich ein echter Nachteil, wenn man proprietäre Software entwickelt.
burli
User
Beiträge: 1156
Registriert: Dienstag 9. März 2004, 18:22

Naja, ich hab noch keine Gründe gehört wieso ich ein anderes Toolkit verwenden sollte. Sollte ich wirklich mal in die Verlegenheit kommen schau ich mir lieber mal die Lizenzen an und kauf zur Not eine.

Im Moment toppt Qt einfach vor allen mit den bereits von lunar genannten Features. Zusätzlich fehlt mir bei wx einfach die Möglichkeit, Dock Widgets übereinander zu legen.
farid
User
Beiträge: 95
Registriert: Mittwoch 8. Oktober 2008, 15:37

Leonidas hat geschrieben:Verstehe ich das richtig? Die Software die du geschrieben hast, hätte BSD sein dürfen? Dann wäre das inzwischen mit Qt4 kein Problem gewesen.
Ja, richtig. Aber das war noch zu Qt3 Zeiten... ;)
abgdf

Hi,

wenn man kommerzielle Software entwickeln wollte, müßte man sich wegen der Marktgegebenheiten wohl auf Windows konzentrieren. Denn vor allem Windows-Benutzer sind gewohnt, für Software zu bezahlen.
Auf Windows extra Qt zu installieren, ist aber auch nicht optimal.
Wenn man also so rein wirtschaftlich denkt, müßte man wohl am besten direkt für die WinAPI entwickeln. Das kann man mit "Pythonwin" mit Python (oder vielleicht mit IronPython und dem .NET-Framework ? (weiß nicht)) auch recht gut machen. Dann muß man auch keine zusätzlichen Lizenzgebühren für ein Toolkit bezahlen.
So seh' ich das, komme in den meisten Fällen aber auch sehr gut unter Windows mit Tkinter zurecht (obwohl ich Qt/PyQt unter Linux auch probiert habe und von dem Umfang auch sehr beeindruckt bin).

Was ich sagen will ist, wenn man verkaufen will, muß man die Lage anders betrachten, als wenn man frei von Finanzzwängen programmieren kann. Meistens macht marktorientiert programmieren leider weniger Spaß. Auf die WinAPI hat eigentlich kaum jemand Lust ...

Viele Grüße
Antworten