We use Qt to build our new accounting software: it’s a GUI framework for Mac, Windows and Linux.
Qt has two different flavors. Right now we use open source, because it’s free. Open source means that anyone can download the Qt source code and do almost anything with it. At some point we’ll pay an annual fee for the commercial version, to get better support and fewer license restrictions.
The Qt Company currently has a market cap of two billion dollars. So far they’re successful at having both open source and commercial versions, though their history has been rocky at times. For a few years Qt was owned by Nokia: part of a failed plan to stave off the iPhone.
These days, open source software is extremely common. Apple, Microsoft, Google, Meta and Amazon all use it. Nearly all websites run atop many, many layers of open source code. The tech ecosystem has grown far too complex for anyone to build anything completely from scratch. And open source is a safer way to run code made by strangers: you can see its insides.
Should TurtleSoft go open source for our new accounting software? Maybe.
The extreme version is to just put it out there for anyone to build and use. Free accounting software, what’s not to like? It would definitely get some attention. On the other hand, it will be difficult for us to ever be paid for the development time we’ve put into the new app, so far. On the third hand, that ship probably has sailed. We took too long to upgrade.
There’s a security argument against full open source. Problem is, anyone could run the app in the debugger, and open any accounting file: even if it’s password protected. All it takes is a breakpoint in the sign-on dialog code. The password is encrypted in the database, but the code has to decrypt it to compare with what you typed. That breakpoint is how we rescue users who forget their password.
Of course, there aren’t many people with the chops to do that level of hacking. And you still can protect your data by keeping the company file on an encrypted drive. The OS has more security tools than we do. Ultimately, we’d be the same as all other open source code: black hats use it to break things, white hats try to prevent that.
A lesser version of open source is to allow limited access: vetting who gets access. If any current Goldenseal users want to see the new code, you can give it a whirl now. We use SourceTree and Bitbucket for source control, and it’s easy to add read-only access.
To build and run the new accounting app, you’d need to download the project, download/install open source Qt, and install Xcode (on Mac) or Visual Studio (Windows). It may work fine after that, or there may be frustrating error messages to deal with. Welcome to the programmer’s life.
Open source projects can allow contributors to add features or fix bugs. Qt does that, but the approval process is quite complex. TurtleSoft could do it more easily, at least for a while.
Dennis Kolva
Programming Director
TurtleSoft.com