Our staff is still working on the human interface for the new accounting/estimating software. It requires lots of testing to get it right. That means running the software many, many times. Small bugs and design flaws sure get annoying if you hit them 10 or 20 times an hour. Those are often the first to be fixed.
The file that we use for our own accounting is password protected. After many hundreds of test runs, the sign-on dialog is now extremely smooth. It’s one click easier than the Goldenseal sign-on.
Data entry screens for Sales and Material Purchases also work well, and look good. We use those the most, so they get the most tweaking.
A lot of formatting details in Qt are handled with style sheets. They are a lot like website coding with css and html. Web programming is less fun than C++. There is no compiler, no debugger, and no error messages to tell you about mistakes. Get a tiny punctuation mark wrong, and it just won’t work. Often it takes trial-and-error to fix problems. Futzing with style sheets is one reason why we test so many times per hour. Add a comma and try again.
Our staff just finished the basic appearance for breakdown tables. Having them in a separate window is a big improvement. Right now we are working on more fancy stuff in tables. For example, when you fill in a Cost Area, it needs to change what shows in the Item column. To make that work, we need to connect the Qt table to our existing code, or else rewrite it entirely in Qt.
Breakdown tables are one of the most complicated parts of our current accounting software. They are in a few dozen files with a few thousand lines of code. Much of it is obsolete. Anything to do with clicks, fields or screen display is now handled by the Qt table. So we started off by clearing out tons of old code.
Removing obsolete code is a gradual process. First we turn it into comments: green text that is easy to ignore. If still unused in a year or two, we move the text to the bottom of the file. A few years after that, it’s safe to delete it entirely. Often we add a note about what’s gone, just in case there’s a reason to retrieve code from archives.
Over the past couple weeks, about half of the table code moved to step 1, or from step 1 to 2. Some really old stuff from OS 9 is now totally gone.
There’s a saying that carpenters never finish work on their own house. The programmer version is that code is never completely done. There’s always something that can be deleted, or replaced, or improved.
Dennis Kolva
Programming Director
TurtleSoft.com