Goldenseal Pro- Saving & Posting (Sept 25)

At heart, Goldenseal is a database program. It shows you screens to enter different types of company info, which it then saves to your hard drive. After that, Goldenseal helps you to use all that hard-earned data. You can look up past records, print business forms, view reports, reconcile bank statements, run special operations like Pay Bills and Write Payroll, etc.

Business data is more complicated than your usual address book database, because it is very interrelated. For example, when you enter a material purchase, it needs to link with a vendor account (for Accounts Payable), a project account (for job costing and T&M billing), and a bank account (when you pay for it, now or later). It may also link to Cost Items and Assembles, to update their prices for future estimates.

When you save a new record, we also update all the related records. That process is called posting. It happens during the “thunk” sound you hear, after a save. During posting, we first open and revise all the linked items. Then we write everything to disk at the same time, to reduce the risk they get out of sync.

Goldenseal currently posts and saves whenever you close a window, print it, or move to a different record. You also can force a save when you hit the Enter key, or choose Save Record from the Edit menu. Before the save happens, we check to make sure everything makes sense. If important data is missing, you’ll see a warning message. That prevents half-finished records that won’t post properly.

When you switch from one window to another, we don’t post or save. That way, if you are in the middle of an estimate and the phone rings, you can just leave it unfinished, and go look at something else. It can stay that way until you switch estimates, close that window, or quit/exit.

Goldenseal Pro uses a single-window interface, with each type of record in a tab, rather than a separate window. The saving and posting process is exactly the same. We probably can mark the tabs that have unfinished records.

We are currently working on the code that saves data from new or changed records. We wrote that part of Goldenseal almost 20 years ago, so half the battle is remembering how the current version does it. At the moment we are stepping through the code, simultaneously and slowly, on an old Mac, a new Mac and a Windows machine. It could easily take another week or two to fully understand the old system, so we can write new ones.

Fortunately, the existing database ‘back end’ and the posting process still work fine, and won’t need any changes.

Dennis Kolva
Programming Director

Goldenseal Pro- Windows Interface (Sept 14)

Our main programming season runs September to June, so it’s ramping up now. First thing on the agenda is the user interface for Windows.

Last January, we built a single-window version for Windows that we really liked. It has a ribbon at the top, an outline view on the left, and a main data entry area on the right. No menu bar at all: everything happens by clicking in the ribbon. We were very excited about the improvement. It condensed the current 200+ menu commands into a much simpler layout. Much more understandable, and easier to use.

Then we switched over to Macintosh, and spent a couple months developing a similar window layout. The first attempt was almost identical. Then we removed most of the clutter from the top, and found that it worked the same, but looked even better.

So we went back to Windows, planning to revise it to look the same as the Mac version. We spent a couple months futzing with toolbars, tear-off windows, and different styles of ribbons. Unfortunately, every attempt failed miserably. Many would crash with mystery error messages. The rest just plain didn’t work.

Software design is hard. There are many ways to fail at it, and over the years we have failed many, many times. Often in new and creative ways.  Throwing things out and starting over is a normal part of the software design process. So is giving up for a while, then coming back later. Sometimes inspiration strikes during the gap.

So, in May we decided to work on other things, and postponed the Windows ribbon problem until September.

Well, now it’s September. We still haven’t discovered how to make the Windows and Mac versions look the same, and still work well. There may be an answer lurking in some hidden nook or cranny of the MFC library, but our time is finite, and it’s time to stop looking. They will just be different.

Goldenseal Pro for Windows will have a ribbon at the top, similar to Microsoft Excel or Word. It will be easier for us to program it that way, and Windows users will already be familiar with the appearance. On Mac, Goldenseal will have a simpler, cleaner, more elegant design. That’s what Mac users expect.

The bottom 90% of the Goldenseal Pro window will look the same on both platforms. The top 10% of the window will be different, even though it does the same stuff. Windows will have tabs and labels for each of the ribbon sections, and the Mac won’t.

For most users, this is probably the ideal solution. However, anyone who switches platforms will find there are slightly different instructions for Mac vs Windows. It will be a slight nuisance for those users, and a much bigger nuisance for our tech writing staff. They will be explaining everything twice.

Now that we’ve settled on the basic appearance, it’s just a matter of getting many small things to work, one by one. At the moment, it feels as if the current Goldenseal code is a living and breathing organism, and MFC is a giant and rather clunky mechanical robot. “All” we need to do is hook up electrodes in the right places, so they can work together.

We will post screen shots and pre-release apps, once progress gets further along.

Dennis Kolva
Programming Director




Switching Website to https (Sept 7)

Over the next few days, we will be switching the entire TurtleSoft website over to https. Using https instead of http means there is encryption on all Internet traffic to and from our website’s server. When the process is completed, you will probably see a green padlock next to the page link at the top of your browser. Otherwise, the change has no visible effect. 

Using encryption gives you a little bit more privacy and security. For that reason, https is gradually becoming the standard for all websites (even ones like ours, that don’t process credit card numbers or other sensitive data).

Once we make the switch, some page links may become unavailable for a short while.

Meanwhile, our main programming season has begun again, and we are currently working on the Windows interface code. More about that later.

FRIDAY 9/8 UPDATE:  All pages on now use https. Please let us know if you find any bad links.

Dennis Kolva
Programming Director