Qt5 is taking the project in some interesting directions regarding the UI aspects. I think it'll be a good thing overall but it's certainly proving a bit contenious amongst people who're comfortable with QWidget and don't like the idea of JavaScript being a first class citizen. As long as it's as fast I'm happy.
I think there's nothing to fear. The announcement states that in most cases you should be able to port your applications from Qt4 into Qt5 with little or no modifications.
On the other hand, I was an skeptic in regards to QML at first, but after using it I fell in love with it. It's logical and very easy to learn, and having similarities with web development means expanding the availabilty of programmers and designers who can work immediately in your project. Great stuff.
As c++ programmer,you have to use some(in most cases,a lot of) java script to accomplish your job, I guess that's why C++ programmers complain about it.
JS should be an option, without it QML can works fine, but in the real situation C++ is optional. It is hard to keep the balance.
I am hoping Qt will regain its status of a cross-platform toolkit of choice. Back in time it provided the solution for fragmented Desktop development. With Digia's involvement now it can solve the same problem but in mobile space. But even if this does not happen, there is still the whole field of desktop development which is not going away any time soon. Web is simply not capable enough to create truly big and complex applications.
> I am hoping Qt will regain its status of a cross-platform toolkit of choice.
Despite their recent focus on mobile, I wasn't under the impression that they had lost this status with respect to desktop development. Which toolkit do you think supplanted them...?
I was fond of Qt when I used it, but no one I talk to -- a small sample size to be sure -- speaks highly of c++. I have a feeling that Qt will eventually go by the wayside as web browsers replace what it means to be "cross-platform compatible."
How do you explain the rise of Objective C using that same logic? Will ObjectiveC go the wayside and be replaced by web browsers? I would rather make the argument that Qt will rise and fall on the platforms it works on. In the past this was the classic desktop, but with Nokia on the helm they refused to let resources go to making Qt on anything mobile, but their internal projects. So now with the classic desktop being replaced with both mobile and the web Qt feels out of place. If Digia does well and gets Qt working on iOS, Android, etc then suddenly it becomes much more interesting for tech news and not so "old". And if someone were to take Qt and build a successful platform on top of it then suddenly it becomes _really_ interesting. Platforms usually make and break languages and toolkits. Witness the rise of JavaScript which while being a neat language, no one would say should be the most important language out there like it is.
Disclaimer: I currently work on WebKit during my day job and used to work for Trolltech
Google native client is a promising tech for web to reach desktop performance. I developed a complex vector application (htp://www.torapp.info) and reached better performance than desktop equivalents.
I find it hard to believe, because even that it runs native code, there is a small penalty of a sandbox environment and it certainly cannot be faster than pure native code.
Just because desktop always wins in theory doesn't mean that you can't exceed the performance of existing native clients. I'm sure Illustrator leaves a ton of performance on the table simply by virtue of having a large legacy codebase. For instance, if it becomes practical to assume that all of your clients support GPGPU then Illustrator's existing CPU optimized code instantly goes from being a critical advantage to a heavy burden: they have to maintain that code and write new GPU code that somehow fits with the old code whereas you just have to write the GPGPU code. Witness pixelmator curb-stomping Photoshop in the performance department. Of course, that example is Desktop App vs Desktop App but the principle is the same.