Over the past few weeks, our staff has been learning the QT framework. It’s still too early to tell for sure if it will work for the new Goldenseal Pro accounting software, but at least it hasn’t been a disaster like Microsoft’s WinUI 2.4.
In 2015 we hired a contractor to build Goldenseal Pro with QT. He started with the C++ source code for the current Goldenseal, and gradually added QT interface code. With hindsight, that approach probably was a mistake. The project became too complicated, and I think he was soon overwhelmed. We paid him for the first draw, but the project stalled out soon after that.
What we will do instead is ignore our current code, and build the new interface completely in QT. If and when that looks good and works well, then it’s time to link in our existing code.
With that approach, we’ll waste less time if QT turns out to be a total dud. And we’ll have a better idea of its limitations, before we design the links between our code and the GUI human interface. I suspect that if we had done that with Apple’s Cocoa framework, we would have discovered its fatal flaws six months or a year more quickly.
QT does some weird stuff with the C++ language: that is one reason we decided not to continue with it, back in 2015. But since then we’ve dealt with even worse stuff in Apple’s Cocoa framework, and Microsoft’s MFC. Now the programming quirks in QT seem downright tame. We can get used to them. Five years of upgrades also helps.
I’m cautiously excited about the prospects of actually getting QT to work. It creates versions for both Mac and Windows, which is a big improvement from where we were ten months ago.
Of course, it will take at least another month or two before we’ve mastered QT enough to actually start using it. There are a couple more books to work through first.
There was a spell in the 1990s when TurtleSoft seriously considered selling out to a bigger competitor, and moving on to something new. One possibility was Timberline Software (the biggest construction software at the time). Discussions with them went in circles, and ended up nowhere. A couple years later I talked with one of their ex-salesmen at a trade show. He described them like this: “Timberline grew too fast. It created a vacuum in the middle, which sucked in layers upon layers of assholes.”
I suspect that same history may apply to Apple and Microsoft. They were young and feisty underdogs in the late 1980s. Our first products used their tools, which were productive and sometimes even fun to use. Now both companies are fat and arrogant monopolies, with too many layers in the middle.
QT is much smaller. We’ll soon find out if that helps.