[Interest] What you don't like about Qt
Jason H
jhihn at gmx.com
Fri Oct 14 17:53:14 CEST 2016
That's some brutal stuff. Comments interjected.
> Sent: Friday, October 14, 2016 at 9:40 AM
> From: "Roland Hughes" <roland at logikalsolutions.com>
> To: "Artem Sidyakin" <artem.sidyakin at qt.io>
> Cc: "interest at qt-project.org" <interest at qt-project.org>
> Subject: Re: [Interest] What you don't like about Qt
>
> On 09/23/2016 11:11 AM, Artem Sidyakin wrote:
> >> Digia
> > From the 1st of May it’s The Qt Company now :)
> Thank you for that information.
> >
> >> NOBODY will pay royalties, period
> > Participating in calls and meetings with customers, I see a different picture.
> Having been in IT over 30 years now working as a consultant for I don't
> even remember how many companies, both Fortune 50 and those with < 35
> people, I have never encountered one. I have encountered thousands which
> will spend "reasonable amounts" on toolkits which provide unlimited and
> unrestricted use, but not one which would pay per-item royalties.
>
> If one lives long enough you can see the same mistakes repeated at least
> 3 times. This per item royalty notion got floated during the
> mainframe/mid-range go-go days. Pretty much every company which floated
> the notion died a quick and horrible death.
>
> During the DOS and GUI-DOS (Windows 3.x and earlier were NOT operating
> systems they were launched via C:\win) a whole rash of companies tried
> this royalty thing. Developers had no problem paying huge (for the time)
> dollars getting commercial grade compilers and tools, but would not pay
> one red cent in royalties. I remember having spent big bucks on .RTLink
> like many of my clients and most of the Fortune 100. .RTLink decided
> none of us had paid enough so they tried to move to a royalty scheme. I
> stress the word "tried." Almost overnight the industry switched to
> Blinker. You know what? I did a Web search before writing this. Blinker
> is _still_ being sold. Yes, people still do DOS development, I turned
> down a contract for it less than a month ago. Various DOS flavors run an
> awful lot of expensive embedded devices. Stuff which starts at 1/4
> million dollars and goes up from there.
>
> http://www.grafxsoft.com/2blinker.htm
>
> Here is the only thing I could find on .RTLink after a 5 minute search
> with multiple search engines.
> http://corphist.computerhistory.org/corphist/documents/doc-43e9481924779.pdf
>
> The same story is true for pretty much every tool of the day which tried
> the royalty path.
> >> arthritic dog running in deep snow called QML
> >> script kiddies
> > I find the concept of dividing the application to front-end (QML) and back-end (C++) very convenient and helpful. That was a truly brilliant idea to implement such concept in Qt.
> > I used same approach being .NET/ASP.MVC developer back in my days. But I guess, I’m just a script-kiddy, so it explains.
> It was an ill thought out disaster prone to catastrophe leaving massive
> quantities of signals firing off into the mist and developers hoping
> they don't kill the neighbor's dog. I'm at a client which is suffering
> from just such a QML with Agile catastrophe. One developer (who is no
> longer here, possibly not employed as a programmer anywhere now) drank
> the QML Kool-aid and was making everything in the back end a property
> with NOTIFY signals even if it had absolutely NOTHING to do with user
> interaction.
You seem to confuse a bad developer, Agile, and QML. The fact is superfluous notify goes no where, so that's not the issue. I've used signals successfully on high availability HTTP[S] servers. I don't see how Agile is an issue. A lot of older people (which you clearly are) have contempt for Agile. I've forcibly been dragged into Agile. I see it as valid, but not without shortcomings. But blaming agile for this is not appropriate. It's akin to an ad hominem attack or a strawman argument.
> Various other developers have come along and tried to clean up this
> monstrosity which fails spasticly in the field. (Agile _always_ produces
> a catastrophe when used for any system of consequence.)
This isn't necessarily so. Below the layer of Agile, are standard software engineering practices. Agile is just a project management style, it does not dictate software engineering practices. It seems that the software engineering practices are to blame.
> Guess what? There is no text editor one can use or bag of dried chicken
> bones one can shake to identify NOTIFY signals which are unused. One
> developer made the mistake of trusting the IDE search. A lot of NOTIFY
> signals which were actually in use went away.
>
> Guess what? QML provides zero, count them zero methods of compile time
> verification for signal connections. The _only_ way of identifying these
> problems is to have a console connected to your embedded devices AND be
> watching real close. Despite all of the efforts to provide compile time
> diagnostics to the connect() statement, Qt went and added this rotted
> fish of an interface called QML which provides _nothing_ to assist
> making stable systems lives quite literally depend on.
That's just javascript. And it is a valid criticism. That's why Microsoft invented TypeScript, and that's also why Google and Microsoft are writing Angular 2 in TypeScript. Though the runtime connections are a problem. Things like that can be validated with a unit and functional testing.
> >> Just take a look at how badly QML runs on the Raspberry Pi with a quad core and Gig of RAM.
> >> http://www.logikalsolutions.com/wordpress/information-technology/raspberry-qt-part-12-qml-blows-big-stinky-chunks/
> > Yeah, this link was here before. Author was asked back then, how about benchmarking Qt Quick Controls 2? But I don’t remember his answer to that.
> > I have a stock RPi 3 on my desk and I use it in my development with QML. Cannot really complain about anything.
> Speaking as the author, his answer was the code was up on the site in a
> Zip file and those who wanted to try it on a Raspberry Pi using
> libraries not in the current Pi repos were welcome to run their own
> tests posting the results here. The resounding silence means they
> achieved the same sucky outcome.
"On the CPU level the performance is similar to a 300 MHz Pentium II of 1997–99." The fact that Qt runs -at-all- on this Armv6 with 256Mb RAM should be considered a triumph. You simply cannot get ferarri speed out of Ford pinto without it ending badly.
While it is ok to be critical of Qt, please try to do it in a constructive manner. And as Thaigo always says: "patches are accepted"
More information about the Interest
mailing list