Covid-19 Update (Nov 22)

Our staff is back to working on Goldenseal Pro, though no major progress to report yet.

Meanwhile, here’s a chart for new weekly Covid-19 infections in each region in the US:

The numbers are from Johns Hopkins University. I multiplied counts for the first few weeks by 5x, because testing was so sparse back then. There’s still lack of testing now, but not nearly as bad.

50 million people are predicted to travel for Thanksgiving, so the curves probably will get steeper.

Covid-19 is now worse than the first surge 7 months ago, but the US reaction is very different. Here’s a chart of restaurant activity from OpenTable. It covers the entire pandemic from Feb 18 until yesterday.

Between March 10 and March 20, every state dropped rapidly from normal to 0% or close. Starting in May, seatings inched back to 50% or 60% of usual in most places (Rhode Island went crazy with restaurant dining, while Hawaii and DC mostly stayed closed). Attendance has dropped off a little in the past month, but many people are still eating out like it’s 2019. Presumably they are doing other things that spread virus, also.

I don’t know what to say. It’s like watching two trains on the same track, headed towards each other. The Coronavirus train is much, much bigger.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in New York #5: Early Signs (Nov 13)

Here in Ithaca, we just set a record for active Covid-19 cases and people in hospital. Nationally, the US is also setting records. Things are getting worse in every state except Mississippi.

Globally, much of Europe is shutting down. Meanwhile, the US is chugging along about like normal. OpenTable shows restaurant seating declines in a few states, but most are about the same as a few months ago.

Back in March, I posted a link that talked about how fast Covid-19 will hit. It’s worth revisiting, since conditions probably will be like that again, and soon. Except, this time it’s starting from higher ground. Most of the US is headed towards conditions that are similar to New York City last March.

My parents are in a nursing home in Cattaraugus County NY. It’s rural, just south of Buffalo NY. I check their Health Department website weekly, to get an idea of how things are going there. It’s the only nearby county with a write-up on every case: gender, symptoms, how they caught it, why they were tested.

The odds of catching Covid-19 are growing rapidly. It may outstrip the number of test kits (already happening in the Dakotas). So, I decided to put all the Cattaraugus data into Excel (633 cases), then do math on them. The results may be useful for anyone trying to figure whether they have Covid-19 or not.

60% of Cattaraugus cases are female, 40% male. 20% are health care workers or employees in hospitals or group homes. 47% reported close contact with a Covid-19 carrier. They may not have known it at the time. 8% caught it while traveling elsewhere. 92% were local transmission.

34% had no symptoms when tested (they may have developed some later).

On average, the other 66% reported 3.21 symptoms each. The most common were fever (43%), coughs (43%), congestion (36%), body aches (33%), and headaches (31%). 21% had loss of taste and/or smell. That’s the only one that is different from a bad cold or the flu.

14% had shortness of breath: the most scary sign, since most deaths are caused by respiratory failure.

Victims also reported the usual stuff: fatigue, sore throat, chills, runny nose, nausea, diarrhea, sinusitis, weakness, dizziness, chest pains, stomach pains, vomiting. Sneezing was rare: only 3 mentioned it.

UPDATE NOV 22: Cattaraugus had 52 positive tests on Nov 17. Then 30+ most days after that. Not surprisingly, they stopped listing details for every case and just give a summary now. I revised the percentages slightly, with a few days more data.

If you want one more way to track the pandemic, Carnegie-Mellon now has a website with Covid-19 maps. It uses Google and FaceBook data to track doctor visits, mask usage and other indicators.

Back in March, people changed their behavior very quickly. It happened in just a week or two, even before Governors shut down states. I’m curious to see if it happens again.

Dennis Kolva
Programming Director
TurtleSoft.com

Goldenseal Pro Progress (Nov 2)

TurtleSoft is mostly done moving into the new office. It’s bigger, which was a bit of a gamble given the uncertain economy.

Next on the agenda is to finish interior work on my house in town, then sell it and buy another fixer-upper. Right now the local real estate market is still pretty good, and hopefully it will stay that way for a few more months.

Programming requires intense focus, which (for me at least) requires a calm environment. I was making good progress on Goldenseal Pro before the move, but still haven’t shifted back into programmer mode. It may take another week or two to really get settled in and productive again. Long nights and crappy weather also help.

The rate of progress this winter will depend on the pandemic, politics and the economy. Personally, I’m calmer when experiencing positive cash flow. Some of the ways to make that happen consume a lot of time.

The Goldenseal Pro project has dragged on much, much longer than ever expected. First there were a few subcontractors who tried it and failed. Then our staff took over, and failed with two different frameworks (Cocoa for Mac, MFC for Windows). QT is looking like it may be a winner, but that is not guaranteed. We will know better in a few months.

If it’s clear that we can’t finish Goldenseal Pro, I’ll fall back on the original retirement plan from before Turtlesoft started: buy, live in, rehab and sell fixer-upper houses on a 3 to 5 year cycle. Selling my current house in April +/- should provide enough extra cash to pay back folks who prepaid for Goldenseal Pro. That is a bit dependent on where the pandemic and the economy go. If there is a major financial crash, I’m pretty much screwed.

If QT works out, we probably will have something to ship by late 2021. Possibly earlier if sailing is very smooth. I’m sure the early releases will have some gaps and rough spots, but at least the core estimating and accounting functions are well-tested. They won’t be affected by the new interface code.

Meanwhile, please vote. Please wear a mask. Stay safe. Covid-19 is not a hoax:

Dennis Kolva
Programming Director
TurtleSoft.com

Health Departments & Politics (Oct 21)

I’ve been more than a bit obsessed with Covid-19 since it started. For a while it was almost a full-time gig. These days it’s calmed down to just a few hours a week: reading science papers, and spot-checking a few websites.

Among them are sites for Health Departments in some nearby counties. They vary. All have current numbers, but some break it down by towns; some give a brief description of each case; some have lists of places where infected people visited. Right after the Sturgis rally, Cattaraugus County (4 to the west) even mentioned that two cases were in people just returned from South Dakota. That’s a long motorcycle ride.

The sites are entertaining, in a geeky sort of way. I keep adding more counties, and now visit 15 of their sites. Reading between the lines, they paint a picture of what the pandemic must be like for staff in local Health Departments.

Pre-Covid, their biggest job was inspecting restaurants and other food services. Keep perishables below 45° or above 145°F, don’t put meat above salads in the fridge, control rodents and the like. They also administered WIC, and tried to keep people from catching STDs or growing too obese. Flu shots. Toxic algae blooms. Ticks and Lyme disease. Mosquitoes and West Nile. Opioids. Tobacco. Rabies.

Most of these departments are pretty small. They already had a lot on their plate. This year they’ve been in crisis mode for seven months already, and the battle has just started.

Contact tracing and quarantines are an important part of controlling a communicable disease like Covid-19. That’s mostly what they do now. I’m sure it is not an easy job. You’ve got to ask people where they’ve been, and who they were close to. Then persuade them to stay home for a couple weeks. Plenty of people resent authority or think it’s all a hoax. Even the best will be tempted to sneak out for a bit. You’ve got to deal with all that, and probably don’t have much enforcement power.

Normally I avoid talking about politics. As a business owner, I’m significantly less liberal than most folks here in Ithaca. As an Ithacan, I’m more liberal than most people using our software. It’s not worth arguing about.

Thing is, right now the US probably is headed into a major emergency. A once in a century situation. It’s right in the middle of an election for President, all of the House and 1/3 of Senators. Plus local races.

Both political parties got together in March, and signed the CARES act to support people and organizations affected by the pandemic. Since then, it’s been gridlock and antagonism.

All those local Health Departments will make the difference between a moderately bad Fall/Winter season for Covid-19, and a runaway disaster (or lock-downs and economic damage). To keep everyone safe, they need more staff to trace contacts. More tests. More resources to support folks in quarantine so they don’t wander off and infect others. Problem is, the states and counties that pay them are facing bigger expenses, and reduced revenues. They can’t print money to make up the difference. They need help.

And of course, many individual people are in the same boat. Life got a lot more complicated and generally worse in March. It’s not turning any corners, anytime soon. It will take extremely competent leadership to manage the next phase of the pandemic, and recover from the economic damage. States and counties can only do so much. Covid-19 is exactly the kind of problem that needs full attention at the Federal level. It’s not happening now.

You might say this country needs to come together to fight a common enemy: the coronavirus that causes Covid-19. And maybe come together for other stuff also. Life was already headed downhill for many people, even before March 2020.

I miss the days when there were liberal Republicans and conservative Democrats. When politicians compromised and solved problems (at least some of the time). Voting in a politician is a lot like hiring an employee or subcontractor. In the end, competence and integrity are what counts.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19: Contact Tracing (Oct 12)

Our county had its first death from Covid-19 today. The number of active cases has gradually increased as well. Surprisingly, Cornell is not to blame. They’ve only reported 5 new cases in students and staff during the past week. The rest of the county had 30.

This is not just a local problem. Some parts of Upstate NY have even bigger increases. There currently are 226 active cases in Steuben County (2 to the west of here). 870 people are in quarantine (almost 1% of their population). It’s much worse now than in March/April. So far 60 people have died in Steuben, with 15 in the past week. Their population is similar to here.

New York State is actually doing better than most places in the US. Looking ahead, it makes me very concerned.

It’s possible to divide epidemics and pandemics into three levels of severity.

The best option is full containment. It’s what happened with SARS, MERS and Ebola (twice) in this century. There’s a local outbreak, but medical help rushes in to help the infected. Contact tracers find and quarantine everyone exposed to them. There’s public education, to help folks reduce their risk of infection. Eventually the disease stops spreading. Eventually it disappears.

With Covid-19, some countries have reached containment. China is the biggest example, but most of Eastern Asia is fully contained or close. However, until the disease is completely contained in the rest of the world, they all risk new outbreaks.

The next best option is just plain old containment. It still involves contact tracing and quarantines, to reduce the spread. Still public education to help slow things down. But for whatever reason, the growth rate stays about the same. People keep getting sick, but not at crisis levels. That’s where most of Europe is right now. Ditto for much of the US, especially New England. New York was there all summer, but it’s starting to lose it. Europe is starting to lose it too.

The worst option is out of control pandemic. Contact tracing doesn’t work then, because too many people are infected at once. You can’t keep track of everyone, nor quarantine them all. The disease pretty much runs its course exponentially. Eventually there is herd immunity, but it ain’t pretty getting there.

Influenza did that in 1918 to 1920. Plenty of other diseases did that in prior history. This year it happened for a few weeks in one Chinese province, then in Italy, Spain and New York City. Hospitals are overwhelmed. Almost everything becomes unsafe. Things can get very bad, even when a disease isn’t real deadly. It’s worse when every place is in trouble at the same time.

Steuben may be close to the edge now. They have 15 contact tracers, which means each of them is running daily checks on 18 sick people, plus 40 more who were exposed and in isolation. Things were fine there until Sept 23, then it went off a cliff.

Covid-19 has dominated lives for more than seven months. I think all of us are growing very, very fatigued. The problem is that Spring and Summer 2020 were just Covid 1.0. Best guess is that this pandemic will follow the 1918/9 curve. If so, we’re right at the leading edge of the second and bigger wave.

One big thing we have in 2020 that wasn’t common in 1918 is vaccines, plus the science to develop them rapidly. Vaccines are challenging. The immune system in general is not easy to understand. Luckily, Derek Lowe’s latest write-up on vaccine development sums up current progress. He is a writer for Science magazine, and all his posts about Covid-19 are great. UPDATE: the Chairman of Pfizer also just posted info about their vaccine development.

The short answer is that creating a safe & effective vaccine is a slow process. One probably won’t be ready in time to help with that middle bump (if it happens). But it may reduce the 3rd and 4th ones.

Dennis Kolva
Programming Director
TurtleSoft.com

Goldenseal Pro Progress (Oct 5)

Our staff has made some progress on Goldenseal Pro: text fields now fill in values, and popup fields get menus. QT is still working well, and I’m very optimistic that we’ll be successful with it.

However, our staff has mostly been busy with other things, the past couple weeks. The rest of October will be similar, before we get back on track.

First of all, TurtleSoft is moving to a less Covid-risky office. At the moment everything is boxes and disassembled shelving. The chaos will get worse before it gets better.

I also finished re-roofing my house last week. It was a big project that started in late May: removing 3 layers of ancient asphalt shingle from a 12:12 pitch, then installing new metal panels. I also added a couple of skylights in the attic. There’s still a small shed roof to finish on the rear, but that should only take a few days. It’s the first roofing project I’ve done with scaffolding rather than ladders, and the process was so much safer and more pleasant. Well worth the extra setup and take-down time.

Getting back into major construction work was satisfying. 20 to 25 hours a week of physical work seems like the sweet spot: enough to get very fit, but not enough for serious back and joint pains. So, I’m planning to finish some interior work over the next few months, then sell the place and buy another fixer-upper. Then repeat the process every five years or so.

For most of its lifetime, TurtleSoft has been a part-time operation. This really isn’t a change from how it’s always been here. Sometimes there are spurts, and sometimes gaps. Goldenseal Pro will be spurting again soon enough.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19: Droplets (Sep 25)

A couple weeks ago, Cornell University had over 80 active infections, and it was looking pretty dire. Then, the students got scared, and more careful. Last week there were 29 new cases. This week only 5. Someone was hospitalized for a few days last week, but it’s down to zero again. Still no local deaths.

Cornell has already run about 90,000 PCR tests since classes started. Students are tested twice weekly, and staff once. It’s probably not cheap. But, there’s a lot to be said for testing everyone: it nips outbreaks in the bud, and also acts as a reminder that the situation is serious. Having same-day turnaround also helps.

Meanwhile, I’m still doing research for a Coronavirus risk estimator. The consensus now seems to be that most infections happen through the air, so I’ve read a few dozen research publications about droplets and aerosols. The best is a 1934 paper by W. F. Wells. Here are a couple of its charts:

The first shows what happens to droplets that leave a person from talking, coughing or sneezing. Anything smaller than about 140 microns (.14 mm) evaporates, and turns into a floating aerosol. Anything bigger falls to the ground within a few seconds. What that means for Covid-19 is that there are three basic risks:

  1. if you are close enough to someone, you may inhale one of those bigger droplets while it’s still falling. That’s what the 6-foot rule is all about, and the advice to cough into your elbow.
  2. After the big droplets land, you can touch that surface, then transfer virus into your eyes, nose or mouth. It’s the reason for washing hands, and not touching your face.
  3. If you breathe air, you may inhale those small dried-up droplets, which gradually mix into the entire room volume. This is where HVAC comes in. The risk for any space depends on the number of infected people inside and what they are doing, minus air changes and filtration. It’s also why masks are so effective: they block droplets both coming and going.

The second chart from the Wells paper explains why respiratory diseases are more common in winter. People are indoors more, which is half the problem. Even worse, the air is heated and dry, so more droplets evaporate, float around, and end up in noses and lungs.

When working with droplets and aerosols, it’s easiest to do everything in microns (symbol µm, aka micrometers). A micron is one thousandth of a millimeter. It’s about the size of the biggest tobacco smoke particles, a medium-sized bacteria, or the smallest pollen grains. PM2.5 pollution is 2.5 microns and smaller (the most dangerous size because it gets into your lungs easily). N95 masks filter 95% at 1/3 micron size. They hit 99% for both smaller and larger particles. 3M says that’s because the bigger particles are heavy, and ram into a fiber. Smaller ones are extremely light, so the fibers suck them in by electrostatic attraction. 1/3 micron is the sour spot in between. A coronavirus is about 1/10 of a micron.

A few researchers have measured the amount of Coronavirus in mucus and saliva: results range from 12 million to 36 billion virions per cc. It’s simple math to translate that to the amount of virus in droplets of different sizes. As it turns out, a one-micron exhaled particle only has a 2% chance of containing a virus, even at the maximum rate. The bigger droplets that dry up and then float are worse. The maximum size that evaporates in humid air (97 microns) will contain somewhere between 3 and 17,000 virions. The maximum in dry air (172 microns) has 16 to 96,000.

As those droplets lose water, they shrink down to roughly 10 microns diameter (about average pollen size). They become a tiny glob of mucus proteins and passengers, light enough to float for hours, easy to inhale. By the math, those are probably the most dangerous.

Dennis Kolva
Programming Director
TurtleSoft.com

Goldenseal Pro Progress (Sept 14)

Our staff is gradually getting Goldenseal Pro to run, using the QT framework. Right now the app launches, opens files, and fills in a list of accounts and transaction types on the left side of the main window. Next step is to get it to load layouts into tabs on the right. That’s the most important part of the interface for Goldenseal Pro.

Back when we attempted to use Apple’s Cocoa framework, it took two or three months to get this far. So far, progress seems faster with QT, despite spending fewer hours per week. Some of speed increase is because we can reuse previous programming, or at least the logic behind it. Some is because we don’t have to futz with two different programming languages.

We currently are working mostly on Macs, but the same code also runs on Windows. Most likely we will alternate between them.

People warned us that QT is bloated, and they weren’t kidding. I found a list of all the QT classes: there are 1,718 of them. In comparison, Apple’s Cocoa has 654 classes, and Microsoft’s MFC has 475. I put all the QT stuff into a spreadsheet and narrowed it down to things that we might actually use. That gets it to a couple hundred.

In the past few years we used both Cocoa and MFC to build Goldenseal Pro, and failed completely. Not the first time we’ve had to toss months or years of work. Since 1987, our staff has tried about 20 different frameworks for building desktop apps. Only three resulted in actual apps: Microsoft Excel (MacNail), Apple HyperCard (BidMagic), and Metrowerks PowerPlant (the current Goldenseal). All three of them were productive right from the start. So far, QT feels the same way. Despite the bloat, it works. It’s not painful to use. Success is not guaranteed, but I’m more optimistic that we will finish this time.

The real test will be breakdown tables. If necessary we can use the work-arounds already developed for Cocoa, but it would be better if we can have something closer to the current interface. It probably will be 2 or 3 months until we get that far.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in New York #4 (Sept 5)

There are two colleges here in Ithaca. Both planned to have classes on campus. Ithaca College (the smaller one) changed their mind a few weeks ago. They will be online-only for the Fall semester. Cornell went ahead with their reopening plans, and classes started on Wednesday. The Vet School laboratories are testing all undergraduates twice a week, which sounds great in theory.

Three weeks ago, there were 7 active cases of Covid-19 in the county. A week ago there were 19. Yesterday, there were 70. Most cases happened because students had parties without masks or social distancing. Who could possibly have suspected that might happen? /s

Maybe everyone will get scared, and change their behavior. More likely, there will be enough cases to trigger an automatic shut-down, per NYS regulations. We’ll see.

Meanwhile in the rest of the US, the State Rt tracker shows wavy curves for every single state. Today the majority of states are positive. Sometimes the majority are negative. It seems to vary on a few-week cycle. Back in April I compared state responses to skidding on icy roads. Because of the feedback delay, it’s easy to lose control and end up in a ditch.

Luckily, that isn’t happening with Covid-19. Most states seem to be converging on a Rt value close to 1. That’s probably the ideal growth rate, as long as the case count is low: the best balance between health and economic activity. I guess it also applies to ice and snow: most drivers in the North eventually figure out how to slow down the feedback cycle and stay on the road.

Globally, infections are also at a steady state, with about a million new infections every 4 days. Much of Europe is starting to see early stages of exponential growth, again. It’s going to be a long haul.

I’m still working on an Excel spreadsheet that calculates Covid-19 risk. There are many studies with useful info, but nothing that translates directly into hourly risk. It will require some assumptions and guesswork to get it calculating accurately.

Covid-19 risk is mostly a matter of HVAC. The amount of virus you inhale is equal to the number of people nearby, times the % that are infected, then divided by the volume of air and the number of air changes per hour.

At least a dozen case studies have been published: cruise ships, a Seattle choir practice, a Maine wedding, church events. I have been using Google maps and other sources to estimate building sizes. Air changes is totally a guess.

The biggest uncertainty was expressed best by Dr. Gregory House: “everybody lies”. Folks don’t want to miss work, or they really need a pack of cigs, so they get into public space even though they are shedding virus into the air. Odds are good that they don’t wear a mask. They avoid testing and don’t get into the official data, so the math is more difficult. Everyone’s lives are more difficult.

Dennis Kolva
Programming Director
TurtleSoft.com

Goldenseal Pro: QT Creator (Aug 24)

In the movies, programmers type hundreds of code lines at a furious pace. Then they hit a button, and it saves the world/hacks into the FBI/some other dramatic theme.

There may be non-movie programmers who can program like that, but I’m not one of them. I’ve never met anyone who can do it in real life, either. We mortals spend 10% of our time writing a few lines of code (slowly). Then 90% figuring out why it doesn’t work. To help with that, we use an IDE (Integrated Development Environment). It’s a text editor that also runs the software, with tools for debugging.

A productive day of programming might have 100 cycles of write/run/debug. Multiply that by 100s or 1000s of programmer-days, and it’s almost like being married to the IDE. It’s as big a choice as which programming language to use.

For Macintosh, almost everyone uses Xcode: free software from Apple. For Windows, the main IDE is Visual Studio: free software from Microsoft. Both are OK but not great. I think a competitive environment would produce better quality IDEs, but nobody can compete against big-company and free.

QT comes with its own IDE: QT Creator. This past couple weeks, our staff has been migrating Goldenseal Pro into it. I have been cautiously skeptical about QT Creator, mostly because QT itself is a confused mishmash. There is a free, open source project, and also a company making a living from a commercial version. It’s an odd combination that could end up better then having huge corporate overlords, or it could be worse. Still too early to tell which it is.

Running code in an IDE is a three step process. First there’s a compiler, which checks everything for errors, and gives warnings for code that is suspicious but not deadly. If no fatal errors turn up in the compile step, the IDE then links everything into an app, and runs it. For step three you use the app, and see if it works right. If not, the debugger will step through the code bit by bit, so you can see if it’s working as expected. A fix might take minutes, or days.

Today we just finished getting Goldenseal Pro to compile. It meant eliminating about a thousand errors, mostly caused by old, obsolete code. Some could simply be tossed. Some could be rewritten immediately, with minor changes. The rest is just bypassed for now, until we see whether it’s needed or not.

The next step is pretty quick: fixing link errors probably won’t take more than a day or two. Then we start the long process of getting it all to run properly. For MFC my first guess was a year for that. It’s also a reasonable guess for the QT version.

Overall, QT Creator has its quirks, but it seems to function OK. I think our staff will get used to it.

Dennis Kolva
Programming Director
TurtleSoft.com