Subject: General Tech | June 7, 2017 - 09:10 PM | Scott Michaud
Tagged: Qt, vulkan
During our recent interview, the Khronos Group mentioned that one reason to merge into Vulkan was because, at first, the OpenCL working group wasn’t sure whether they wanted an explicit, low-level API, or an easy-to-use one that hides the complexity. Vulkan taught them to take a very low-level position, because there can always be another layer above them that hides complexity to everything downstream of it. This is important for them, because the only layers below them are owned by OS and hardware vendors.
This post is about Qt, though. Qt is a UI middleware, written in C++, that has become very popular as of late. The big revamp of AMD’s control panel with Crimson Edition was a result of switching from .NET to Qt, which greatly sped up launch time. They announced their intent to support the Vulkan API on the very day that it launched.
First and foremost, their last bulletpoint claims that these stances can change as the middleware evolves, particularly with Qt Quick, Qt 3D, Qt Canvas 3D, QPainter, and similar classes. This is a discussion of their support for Qt 5.10 specifically. As it stands, though, Qt intends to focus on cross-platform, window management, and “function resolving for the core API”. The application is expected to manage the rest of the Vulkan API itself (or, of course, use another helper for the other parts).
This makes sense for Qt’s position. Their lowest level classes should do as little as possible outside of what their developers expect, allowing higher-level libraries the most leeway to fill in the gaps. Qt does have higher-level classes, though, and I’m curious what others, especially developers, believe Qt should do with those to take advantage of Vulkan. Especially when we start getting into WYSIWYG editors, like Qt 3D Studio, there is room to do more.
Obviously, the first release isn’t the place to do it, but I’m curious none-the-less.
Subject: Editorial | February 23, 2017 - 12:16 PM | Alex Lustenberg
Tagged: podcast, vulkan, ryzen, qualcomm, Qt, mesh, g213, eero, corsair, bulldog
PC Perspective Podcast #438 - 02/23/17
Join us for Vulkan one year later, Logitech G213 Keyboard, eero home mesh networking, Ryzen Pre Orders, and more!
The URL for the podcast is: http://pcper.com/podcast - Share with your friends!
- iTunes - Subscribe to the podcast directly through the iTunes Store (audio only)
- Google Play - Subscribe to our audio podcast directly through Google Play!
- RSS - Subscribe through your regular RSS reader (audio only)
- MP3 - Direct download link to the MP3 file
Hosts: Allyn Malventano, Ken Addison, Josh Walrath, Jermey Hellstrom
Program length: 0:58:01
Subject: General Tech | February 20, 2017 - 04:46 PM | Scott Michaud
Tagged: vulkan, Qt, nvidia
NVIDIA has just donated their entire DRIVE Design Studio to The Qt Company, who will form it into Qt 3D Studio. This product will be a visual editor for 3D user interfaces, where layers of 2D and 3D objects can be created, animated, and integrated into C++ applications. It will take them a little while to clean it up for public consumption, but it will eventually be available under the commercial / open-source dual-license that users of Qt are accustomed to.
If you’re not familiar with the Qt Framework, then, basically, think of a cross-platform, open-source alternative to the .NET framework, although it is based in unmanaged C++. (It also competes with GTK+. This isn’t a major point, but I would like it to be clear that it’s not a two-person race between one proprietary and one open-source player.) When AMD updated their graphics drivers to Crimson Edition, and flaunted huge speed-ups, it was mostly because they switched the control panel's UI framework from .NET to Qt.
As an aside, The Qt Company joined the Khronos Group on the day that Vulkan launched, which was almost exactly a year ago, and they are actively working on integrating the API in their framework. Combined with today’s announcement, it’s not hard to imagine how much easier it will be, some day, to create efficient and beautiful UIs.
Update: Speaking of which, The Qt Company is apparently planning to release Vulkan support with Qt 5.10.
Subject: General Tech | February 24, 2016 - 04:41 PM | Scott Michaud
Tagged: microsoft, xamarin, Qt, .net, mono
Microsoft has purchased Xamarin, who currently maintain the Mono project.
This requires a little background. The .NET Framework was announced in 2000, and it quickly became one of the most popular structures to write native applications, especially simple ones. Apart from ASP.NET, which is designed for servers, support extended back to Windows 98, but it really defined applications throughout the Windows XP era. If you ever downloaded utilities that were mostly checkboxes and text elements, they were probably developed in .NET and programmed in C#.
Today, Qt and Web are very popular choice for new applications, but .NET is keeping up.
The Mono project brought the .NET framework, along with its managed languages such as C#, to Linux, Mac, and also Windows because why not. Android and iOS versions exist from Xamarin, under the name Xamarin.iOS and Xamarin.Android, but those are proprietary. Now that Microsoft has purchased Xamarin, it would seem like they now control the .NET-derived implementations on Android and iOS. The Mono project itself, as it exists for Linux, Mac, and Windows, are under open licenses, so (apart from Microsoft's patents that were around since day one) the framework could always be forked if the community dislikes the way it is developing. To visualize the scenario, think of when LibreOffice split from OpenOffice a little while after Oracle purchased Sun.
If they do split, however, it would likely be without iOS and Android components.
Subject: Editorial, General Tech, Mobile | August 9, 2012 - 07:08 PM | Scott Michaud
Tagged: Qt, nokia, Digia
Ars Technica reports 125 employees at Nokia will move to Digia in a deal to relocate the open toolkit, Qt, away from the cellphone manufacturer. The deal reassures developers of software -- especially open sourced software -- their toolkit will continue to be maintained. Qt is available for Windows, Mac, Linux, Symbian and MeeGo with other platforms such as Android and iOS planned for support.
I have a special place in my heart for Qt because of a couple of programming projects I have worked on. Finding a good cross-platform interface framework is more difficult than you would think. One project required developing a text-style editor for both Windows and Linux. Qt provided classes for dockable windows and panels, Webkit browser support, and just about anything else I could need.
It really was a cute framework – literally, that is how you pronounce it.
I was one of the first to get a little tenseness in my gut when Nokia started to partner with Microsoft and their Windows Phone platforms. Nokia was slowly distancing themselves from the framework they owned at the time. The Linux and other open source communities were getting quite involved with Qt due to how closely it is tied with KDE. Microsoft is embracing open source communities more than they have been but I would hesitate to trust them that much.
GTK+ is basically the viable alternative to Qt.
So developer framework choice could very well have been between The Gimp and a gimp.
There has been no word on the finances of the transaction.
It is still yet to be seen whether Digia will be a good owner of the framework. Certainly the most recent analogy was the purchase of Java along with the rest of Sun and its assets to Oracle. That certainly did not end up as the best of situations for the end-users of the platform.
Thankfully the framework is published under the GPL along with their commercial license. Should GPL-compatible applications require the framework they would be able to fork from whatever the latest supported GPL release would be and continue on from that point.
Software which uses Qt in a way which is not GPL-compatible still has a few worries going forth. Digia appears to be have some level of trust by the community. We will need to stay tuned to see.