What’s In A Name? (Nov 25)

Along with final testing and debugging, our staff is rebuilding the TurtleSoft website for the new accounting software. For a sneak peek, click here. It’s still rough, but improving daily.

The current TurtleSoft site has over 2,000 pages. Their HTML code is a mess. Our staff can update about 200 per week, so the prep stage won’t finish until January. At least it goes in parallel with other work.

We tried combining new and old support in the existing pages, but it was cluttered and confusing. So, the main TurtleSoft site will only cover the new 64-bit estimating/accounting app. Current instructions for 32-bit Goldenseal will be off in a sub-folder. Right now it’s the other way around.

While setting up the future site, we ran into a big problem: what to call the newly revised small business software?

Sticking with Goldenseal won’t work. Even with separate Answers, some users will end up in the wrong place and be confused. Some parts of the interface are different between 4.96 and 5.0, and nobody remembers exact version numbers.

Back in 2000, a marketing consultant told us we should have just one name for website, company and product. Finally heeding that advice, we’ve used TurtleSoft Pro for the past year. Pro would be the high-end version, along with TurtleSoft Estimating, TurtleSoft Checkbook, TurtleSoft Retail, etc. They’re good product names, but they fail on the website. It’s all because of English grammar.

The current site mentions Goldenseal more than 8,000 times. To swap names manually would take weeks. A simple find-and-replace takes a few minutes.

About half the time, the site says Goldenseal is, Goldenseal prints, etc. Name plus verb. The rest have other grammars. The new name needs to sound OK when swapped into all those phrases.

If we use plain TurtleSoft, instructions will become TurtleSoft is or TurtleSoft prints. It sounds like the company, not the app. Turns out there’s a good reason why most product names are not the business name. Sears never sold any Searses.

Using TurtleSoft apps fixes that problem, and makes it clear there are multiple sizes. But then the text becomes TurtleSoft apps is or TurtleSoft apps prints. Yep, English has different verbs for singular and plural.  There’s no easy text-replace to make it right.

TurtleSoft software is singular, but it still sucks. The site already says “software” 3,000 times. Adding another 8,000 makes it too repetitive. The site would need lots of pruning to sound good.

With Plan A and Plan B both out, the app needs a new name. Something that sounds OK after a text swap.

Plain old Turtle almost works. Turtle Pro, Turtle Estimating, and Turtle Payroll are decent product names. They keep the cuter half of our construction company roots. Problem is, instructions will say Turtle is and Turtle prints. It sounds like a pet, not an accounting app. Turtle apps and Turtle software have the same problems as previously mentioned.

The search is on for a singular noun that’s short, snappy and appropriate. Trade names are not easy. There are only so many letters and words. Most are already used.

Dennis Kolva
Programming Director
TurtleSoft.com

 

Custom Layouts (Nov 18)

I skipped something important in the Traveling Sales Rep post. Calculating the shortest path to visit a list of cities is a hard, NP-Hard problem. Finding a “good enough” answer is much easier.

For example, a PC would need 12,000 years to calculate the very shortest road trip to all lower-48 state capitals. But, 20 minutes run time with a simple AI is enough to find a pretty good US capitals loop. It’s the civic way to see the USA! 9 days drive time.

There probably is a shorter path that hits them all. Problem is, if you wait 12 millennia to calculate the perfect route, Providence RI may be under the ocean, and/or Montpelier VT may be under a glacier.

Meanwhile this week, TurtleSoft got a pleasant surprise from the new accounting software.

A while back we decided to postpone Custom Layouts. It’s not something that users need very often. However, the delay will cause problems for training videos, which we plan to make during final testing.

Screen layouts carried over from Goldenseal are the snag. In the new app, some of their fields and captions overlap. Others are off by a few pixels. It’s because Qt fields are not built exactly the same as the ones from CodeWarrior. Also, newer fonts are a bit wider. The screens are usable, but kinda ugly.

We added code to tweak the worst of the problems. That made the screens look good enough for a first user release. Not perfect, but we could tidy up later.

However, if the layouts are going to sit on the Internet for years to come, even being slightly ugly is a problem. Imperfections really irk some people. A two-minute video takes an hour of futzing, so we don’t want to re-shoot anything. That means it needs to look perfect from the start.

Rather than spend more time tweaking appearances with code, our staff took another stab at Custom Layouts. Surprise, surprise, the new version was closer to being done that we thought. After a couple days of debugging, it works! Now it can adjust data entry screens so they look great in the new accounting app, and in the videos.

Even better, the new layout format saves as text, rather than binary. It’s easier to debug and improve. Also, the text format can store new-style fonts, plus file paths to graphics or other documents. That’s two more things that can make it into the first release. Scratch them off the list of delayed features.

It took 2 or 3 programmer-years to build Custom Layouts for Goldenseal. Half that time was for the many bells and whistles it has. I’m sure we won’t get all of those into the first version of TurtleSoft Pro, but we can add the more useful ones.

Dennis Kolva
Programming Director
TurtleSoft.com

 

The Traveling Sales Rep Problem (Nov 11)

One of the classic problems in computer theory is easy to describe. Take a list of cities, and find the shortest route to visit them all.

It’s easy to calculate for a short tour, but hard when it gets bigger. In fact, the problem is NP-Hard. That means the math quickly gets out of hand as the numbers increase. A PC with a clever algorithm can calculate the path for 10 cities in an instant. For 20 cities, it might need a few minutes. 30 cities will run for a week. 40 cities, half a century. 68 cities, more than the age of the universe.

A supercomputer will do the math faster, but it only adds a few extra cities before hitting the wall.

Fortunately, at TurtleSoft we rarely face NP-Hard problems. Our code mostly does basic math, and moves stuff between the screen and the hard drive. The fanciest data in our accounting software is some binary trees in the record index. Even those are the simplest possible trees.

Meanwhile, the end game for the new accounting software is well underway. We recorded a couple videos. A few dozen more bugs are fixed.  100+ web pages are modernized.

It would be nice if we could just check things off from a list, and know how far along we are. Ideally, calculate % completion and report it here. Goldenseal does that for construction work.

Alas, this project is not that simple. The final stage is a diffuse task: web pages, data classes, testing, deep dives into old code. Everything is interconnected. It’s a cross between the traveling sales rep and a scavenger hunt. Maybe not NP-Hard, but still hard to grasp.

The TurtleSoft website probably is the best tool to organize final testing. The Answers button has everything in alphabetic order, at least.

Problem is, the site has evolved over the years. The current version is a mess of different styles and origins. Some pages were pasted in from the old FileMaker tech database. Some came from printed manuals (MS Word was renowned for making terrible HTML). Some pages were written fresh for the site, but each author had their own style. Website programming itself changed over the past couple decades. People figured out better ways to do things. Tools like DreamWeaver also improved.

Right now our staff is doing some testing and debugging, but mostly we’re fixing up the new website. Some things can be done with search-and-replace. Some need to be hacked at by hand. I think it will help organize the project better.

Dennis Kolva
Programming Director
TurtleSoft.com

 

 

 

New TurtleSoft Website (Nov 4)

Along with final testing and video production for our new accounting software, there’s one more thing to throw into the mix: a new website.

Our first site was a few pages of text in the mid ’90s. It grew to dozens of pages in 2000, after the release of Goldenseal. That version had screen shots and better layouts. Later, we added an Answers button with links to many hundreds of support pages.

The current site looks old. It’s hard to maintain. So, this week we started work on a modern website. The code is simpler, and it looks good on phone, tablet, laptop or whatever.

We already own a second website, updated in 2016. After copying SmartKnives and making some tweaks, Turtlesoft already looks pretty decent. It now uses frameworks that didn’t even exist when we built the current site (jQuery, Foundation, a couple others). We paste in our text and graphics, and they make it look good.

As we test and record videos for each part of the new accounting software, we’ll also update their support pages. As a bonus, reading those helps our staff to remember exactly how things work, for testing and the videos.

Setup for this final phase has been a game of musical computers. The new accounting app runs on Mac 10.14 Mojave or newer. For website coding, DreamWeaver for desktop is stuck at Mac 10.12 Sierra. Anything newer needs Adobe Creative Cloud and a monthly fee. There’s no way to run both apps on the same computer.

The current KVM setups may be enough, but the process may need two monitors per desk, side-by-side. On top of all that, newer Minis don’t have an audio jack. A USB microphone is on the way so we can record voice-overs while running the new app.

Progress can be annoying. Too much good stuff gets lost at each transition.

Our staff probably will be in a cycle of test->debug->video shoot->web page through the entire fall/winter season. Maybe into spring. We could have rushed to release an app in 2022, but this way it will be tested better, and fully supported at the launch.

Also, jumping between three tasks is a better use of human resources.  C++ programming is like building or defusing IEDs: exciting, but risky. If you’re careless, something blows up. Software testing is a 1,000 page book of Where’s Waldos, and you’ve got to find them all. Website HTML is like cooking: you can be creative, but mostly it’s just mindless chopping, stirring and dish washing. Each type of work is an antidote for the others.

Some time during the testing process, the app will be far enough along to release an alpha or beta version. We’ll figure out when to do that, TBA.

Dennis Kolva
Programming Director
TurtleSoft.com