← Back to context

Comment by havblue

2 years ago

What are your opinions about QT? Do you use the open source version or the paid version? (I like it myself but mostly because I like their wysiwyg and the debugger support is intuitive relative to other ides)

Overall, I love Qt. I started studying QML 2 weeks ago to implement a Kanban view based on the underlined Markdown styled todo items in the text editor, and it's been really great so far. Property bindings, signals & slots, integration with C++, it all makes so much sense, much more than other declarative languages/frameworks (looking at you, React) imo.

Qt has been around for years, the documentation is extensive and the community is large and supportive. With QML I faced many problems, especially half-assed examples/documentation, Qt Creator's intellisense doesn't work well with QML sometimes, etc... But the tradeoff is worth it. I'm getting things done in a much faster pace with QML.

A problem that is common both in Qt and other cross-platform frameworks is that you end up writing some custom code for each operating system to make the look and feel more native. But I think it's getting better with awesome open-source projects taking care of beautiful native window decorations[1].

[1] https://github.com/wangwenx190/framelesshelper

  • I was able to build things with Qt and Qt3D I wasn't sure would even be possible before starting (a very narrow-scoped robotics automation planner/simulator). It was remarkably easy to get moving with.

    Ironically the first version was mocked in Unity, thinking the tooling and ecosystem would make the MVP easy to build. It wasn't terrible, but it wasn't particularly easy either. The end result was extremely heavyweight and gave terrible performance. Qt on the other hand yielded fairly snappy and lightweight results, and the development experience wasn't bad at all.

    I wonder why more people don't use it, but then, that's my only exposure. Maybe it's not so great for other things, and I suppose there's the whole matter of having to pay for certain tooling and support. Us developers are sometimes super-hesitant to pay for the tools we use, haha.