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

abgdf hat geschrieben:Auf Windows extra Qt zu installieren, ist aber auch nicht optimal.
Muss man nicht, py2exe existiert, ich hab das selbst schon genutzt, um PyQt4-Software für Windows zu verpacken (samt NSIS-Installer). Es ist zwar nicht unbedingt trivial, aber der Aufwand ist ja einmalig, und verglichen mit der Zeit ...
Wenn man also so rein wirtschaftlich denkt, müßte man wohl am besten direkt für die WinAPI entwickeln.
... die man im Vergleich dazu in ein Plain-WinAPI-Programm investieren müsste, wohl geradezu nicht existent. Und wenn man dann dazu noch die Kosten der zusätzlichen Zeit für ein WinAPI Programm addiert, dann hat sich sogar die Qt-Lizenz amortisiert.

Zumal man das Packen mit py2exe mit neueren Wine-Versionen sogar unter Linux durchführen kann.
So seh' ich das, komme in den meisten Fällen aber auch sehr gut unter Windows mit Tkinter zurecht
Ohne jemandem nahetreten zu wollen, aber Tkinter kann sich nicht mal ansatzweise mit Qt4 messen. Für einfache GUIs mag das egal sein, aber für jede auch nur geringfügig komplexe GUI-Anwendung ist Qt4 weit überlegen. Tkinter kann ja noch nicht mal Systray-Icons ...

Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht.
abgdf

Ohne jemandem nahetreten zu wollen, aber Tkinter kann sich nicht mal ansatzweise mit Qt4 messen. Für einfache GUIs mag das egal sein, aber für jede auch nur geringfügig komplexe GUI-Anwendung ist Qt4 weit überlegen.
Bestreite ich ja gar nicht. Ich sagte nur, für mich reicht's. Das deshalb, weil ich bisher nur kleinere GUIs gebraucht habe. Tkinter sieht unter Windows auch gar nicht mehr so schlecht aus:

http://anygui.sourceforge.net/screenshots.php
Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht.
Naja, zumindest in der Hinsicht eben doch, daß man mit allen einfache GUIs bauen kann.

Gruß
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

abgdf hat geschrieben:Naja, zumindest in der Hinsicht eben doch, daß man mit allen einfache GUIs bauen kann.
Nur vom Aussehen in der Umsetzung wirds mit Tkinter schnell "schwierig".
BlackJack

Bei einfachen GUIs nicht.
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo Forumfreunde
Ganz ehrlich, Wx oder Gtk kann man mit Qt4 vergleichen, aber Tkinter nicht, in keiner Hinsicht
Ohne euch nahe zu treten. Stimmt Tkinter ist nichts für Drag & Drop Programmierer.

@Lunar Was meinst du mit 'sysicons'. Gehe ich richtig in der Annahme dies sind die Programm-Start-Icons rechts unten in der Taskleiste?

Nebenbei. Mit Tkinter können durchaus grössere Anwendungen realisiert werden, wenn jemand die Übersicht bei 600+ Programmzeilen noch nicht verliert.

Gruss wuf :wink:
Take it easy Mates!
Antworten