Qt’s commitment to C++?
-
I see you are quite dedicated to your role and sensitive on the topic of censorship. Entirely out of respect for you I will no longer raise the issue of comments mysteriously disappearing and just as mysterious reappearing after the issuing of a certain statement. Lets just say it was an amazing coincidence, caused by a possible technical glitch, hopefully this will not put you in the awkward position that provokes you into issuing such warnings ;)
-
It is not only me who is is sensitive on that topic.
This site, as every other on qt.nokia.com, is free for everyone and every opinion. There are only very rare cases where posts or comments are actually deleted. This includes mostly SPAM and obviously insulting messages. From this point on I can only speak for this site: while we kill the former silently, we always leave a comment when moderating the latter, usually after consulting at least one fellow moderator or site admin. If a thread goes out of control it is closed, but not deleted.
-
OK, let me put it this way:
I wasn't like posts were offensive, I try my best to keep it on point, and if I use some "qualifiers" that can be interpreted offensively, it is never in a demeaning context, but justified. That explains why my comments were not actually deleted, they just did not appear, both posted from home or my work IP, while comments of other users kept on popping up. And it wasn't until I pointed out this "issue" when all those comments magically appeared in an instant. So pardon me if this looks suspicious, and sadly it doesn't end there...
I honestly don't mean to nag, but after yesterday I stated I will no longer raise that issue of disappearing comments, my comments mysteriously stopped appearing AGAIN, while comments from other users keep on going on. Is this purely coincidental? I am willing to assume even an amazingly improbable coincidence once or twice, but this keeps on repeating and IT WILL NOT BE MY FAULT if I start calling things as I see them, it will be well justified.
I know my comments are INCONVENIENT, and for about a year I kept away from doing or saying anything, waiting for an indication someone will address the issues at hand, but there was no indication whatsoever that anyone at Qt is concerned with an up-to-date GUI API for C++ despite the many requests from developers, and I REALLY HATE to be that guy, but someone had to do it. For my time in this forum I did my best to be polite and as helpful to everyone as I could, and I really hate to have to be the "persona non grata" but looking at the responses from the community it does seem to appear I have a point and am not a vocal minority. I never wanted to provoke this wave of complaining, I spent lots of time hoping someone at Qt will take on that issue, but since no one did, well, "a man has to do what a man has to do", and forcing things is really the last resort. Apparently Nokia has no problems renaming blind and deaf to individual requests from developers, hence my actions aiming to combine all those requests so that Qt managers finally notice we are not talking a few dinosaurs' last stand against this devolutionary form of "evolution", we are talking ABOUT A LOT OF PEOPLE, and hopefully pay attention to what the developer base wants instead of pushing people to adopt fancy and useless new tools we can easily do without.
I brings me no joy to do what I do. To be honest, I think this sucks, and the reason I don't blame myself is things would have never come to this if the managers behind Qt listened to what developers want. Someone had to do it, and it is not that important if it is me or someone else, perhaps it would have been better if it was someone with a milder and softer personality, but if we're all silent there is nothing to put Qt back in the tracks of C++ dedication, not as a low level language to extend QML but as a fully fledged programming language with access to modern APIs and the option of keeping applications simple and native.
Keep this in mind, my actions are merely a reaction to the direction Qt is being pushed since the acquisitions. To quote a smart man who lived a long time ago:
bq. To every action there is always an equal and opposite reaction
If the vector of my reaction is inconvenient to Qt managers, it is entirely their own fault for directing Qt in this direction and ignoring developer's requests for so long. And if it sounds a bit too intense - let's just say I speak for all of those too polite to do it and for all of those who were too quiet to provoke any attention.
And just to keep it on the bright side ;)
!http://i39.tinypic.com/dbhyqo.jpg(guiapi)! -
-
I sense severe unhappiness, temp. :(
While I obviously have very little influence on Qt development, I can at least assure you that we're not censoring comments. I just approved yours. ;)
Let me explain. We run quite a picky spam checker (Akismet) on all our comment fields, and we do it for a good reason: we don't want to force anyone to register just to be able to comment, and we would simply be overrun by spammers if we didn't check for anything. In addition to the picky checker, we also have a blacklist of unacceptable words. If either kicks in, the comment is held in the moderation queue.
In your case, you were probably just unlucky.
The comment that I just approved had two links. If you add two or more to your, we suspect that something is fishy and you're trying to improve your Google page rank. :P Maybe you have also ticked of the blacklist alarm, and the blog author was less concerned about language and just approved it. I sometimes just take out the problematic words before I approve an otherwise valid comment.
And then sometimes, people miss the fact that their blog has unapproved comments, which means that it may take a bit before someone happens to take a look and approves pending comments.
I hope this explains things a bit, we're really not seeing you as persona non grata. And I appreciate your generally friendly tone. :)
-
Thanks for your polite input, I appreciate it, and the links triggering a spam filter sounds reasonable, so I retract my statement. The previous instance I don't recall containing links, but it is understandable if people are not in a hurry to approve the comments I've extensively been bombarding with, so .. like whatever.
Severe unhappiness is a bit too strong thou, just not being happy with the decision to freeze the C++ GUI API and focus exclusively on QML for future and up-to-date looking interfaces. I honestly like the paradigm behind Qt Quick, the idea of less constrained and easier to build customize components, not to mention the improved graphics back end, separate threads for animation and blitting, it is all a deffinite shift in the right direction, the only thing wrong with it is being locked exclussively to QML.
And I do get the motivation of QML, I do realize not all people know about program structure, not familiar with the C++ programming paradigm, parameters, constructors, parenthood hierarchy and what not, those people can save a lot of effort using a declarative frontend, with the interpreted doing all that work for them. But keeping in mind Qt has been a long time C++ framework, I am sure I speak for the majority of developers who aren't new to Qt, we do know how to do all this stuff by hand, we don't need QML, interpreters, JS, virtual machines and glue code. QML is simple only when it comes to trivial applications or people that are just making their first steps into programming, if you have experience in C++ and aim at lots of functionality that is beyond the "out of the box" set, keeping it all native C++ is a lot simpler, and adding all the overheads of QML we don't really need just makes it harder. And surely, QML is not that hard to learn, neither is JS (I myself know most of it), glue code and objects could become your second nature, performance and memory footprint overhead people could live with even thou it is a waste, but all those DO STACK UP, and for people like me make Qt "less cute" and more tedious to work with.
And I know old timers look at me as an isolated case, but that "poll":http://qt-project.org/forums/viewthread/16465/ mlong posted here in the lounge, although too early to be conclusive, shows that for every person, perfectly happy with QML there are two who would like to see the option to do things the native way, which is nothing that should be ignored lightheadedly, considering most of the people who visit the lounge are far from neutral and subjected to the unavoidable, even if denied bias of being long time dedicated community members. And not only this, but I have personally annoyed some of those people, which could easily cause them to vote not with their minds, but just for the sake of being against "my" initiative. There are also many people that are vocal in the labs and blog comment area that may not visit the lounge or have a forum registration at all. In short, I am not a member of a minority, too small for the management team behind Qt to bother with, there are plenty of people who call for nativity (as well as other important things like support for major mobile platforms, which I find just as important), and even those that are silent can easily benefit from it.
-
I agree with Temp.
Carl and Frank are sitting behind their desk at work when Frank calls Carl to look at his new creation.
"Carl, look at the cool program I've made!"
"What does it do?", asks Carl.
"Ohh, it is a very comprehensive CAD tool!", replies Frank.
"Cool, let me see it", carl says with a lot of expectations.
... The program starts ...
"Ah, I see you still need to implement some features", carl says after looking at the GUI.
"Yeah, but look at all those animations. Aren't these cool? Look, when I click on this button, a new window slides and fades from the right corner. Argghhhh... that's sooo cool", replied Frank.
"Ohh, yes, that is indeed nice", said the amazed Carl.
... But Carl wondered ...
"Can you draw some lines already?", carl Asked?
"No, not yet, but watch when I click the tool button for drawing a line...", Frank replied.
... Some nice graphics appeared ...
"So..., you've just made some dynamic and animated movie that appears to do something, but it actually doesn't?", asked Carl, who was a little disappointed by now.
"Can you open Autocad files already?", carl tried again.
"Autocad? What is that? Ohh, yes, the tool that uses a command line to draw... How stupid is that. My tool actually does some cool animation tricks when you want to draw something. That will up the productivity", Frank said.
... But Carl was interested in how Frank made the tool ...
"Which API did you use to build the tool?", Carl asked.
"I used QML, which comes with Qt. It's so cool and easy to use.", Frank replied.
"Ohh, I've heard of Qt before. It's from Nokia isn't it? What can it do?", Carl asked.
"Well, it has those old classes for cross platform C++ development, but nobody uses them anymore. But they also have this flashy new API for developing fluid and animated GUI's. It's the max!", Frank said.
"So,", Carl wondered, "are you saying that those old classes aren't maintained anymore? They sound interesting and I remember that's what made Qt big.", carld wondered.
"Yeah, no, they are still maintained, but by the public. But who cares.", Frank said.
"Ohh, that's really a shame. So Nokia spends millions of dollars on having animated icons, and because of that they don't have enough people to maintain the rest of the code? That's really awfull for all the people depending on that old code and who've invested in it. That sure sounds like a well meant f*ck y**!, carl said.
"I don't care, look at those flying icons on my screen!!!!", Frank said while Carl went away in disbelief.
... Some time later Carl sits at his table and sees todays news paper. He notices the following headline:
"Nokia is looking at a net loss of EUR 929 million..."
"That explains a lot" Carl thinks! -
This means, the guy did not understand requirements. If you have requirements to make "old style" apps with QWidget, you can and should do. That is what I do when I work with Qt. I have not used QML in any project up to now and in our domain, we will not switch to QML the next years. And bugs are fixed.
If you create shiny mobile apps that need animation you can do that using QML and it works fine.
And if yoiu need such things on the desktop you also can do it. So what the hell is the problem here? The trolls invented an additional way to do things which can be used if needed.
-
Why does it has to be a compromise, either get functionality at the expense of outdated GUI, or get stylish GUI at the expense of making it harder to implement functionality, the whole point is we need both.
What sucks about the current "toy app" trend is most of those apps are close to useless that is why they rely on eye candy full on, cause simple people are easy to impress.
And just because eye candy is a money milking marketing strategy does not mean it cannot be incorporated into software whose use goes beyond displaying online service content.
The reason I went on this "crusade" is for quite a while I tried doing modern design with QWidget, and not only is it awkward and backwards, but performance lacks too. QWidget is built on literally a 20 century concept, and it doesn't fit. And it sucks there is not 21 century, more custom, more fluid, more dynamic and interactive C++ GUI API.
Kudos to the trolls for inventing the concept of Qt Quick, and I know it must be a nice feeling to have many people using a language you invented (QML) but it is quite foolish to turn your back on Qt's primary programming language for like 2 decades. They could easily have invented Qt Quick to be natively open to C++ and plug QML in as an option, which would save the efforts of having to add C++ frontend support later, when annoyed and disappointed developers call for it. A smart programme will always make a new API open to native use and plugin additional languages support, and the only logical reason I see behind the decision to provide the benefits of a new GUI API exclusively through QML is using innovation to extort developers into adopting yet another limited usage, inferior in terms of performance and efficiency, leading to even more fragmentation of the developer base language, like we don't have enough of those already.
I cannot shake the felling QML is a little late to the game too, I mean, with HTML5 and all, surely, Qt Quick may have better performance out of the box and the potential to extend it with C++, but HTML5 with JS is quite powerful and has a lot of advantages compared to QML, our company is already developing fluid, dynamic websites with animations and interactive features, and all you need is a browser, even without HTML5 support those are totally doable in HTML and JS. Not to mention HTML is an open standard with quite a lot of users, more than QML is likely to ever enjoy. QML would have been amazing... 5 years ago, but for what QML offers there already many good solutions enjoying amazingly good adoption rate. That is why I feel Qt Quick needs to exploit the advantage of offering native binary performance and efficiency and the power of being free to use C++ without having to base your designs on QML's limitations and write extra code to interface native code to QML.