Ugly Hacks (Feb 24)

In 1971, I dropped out of Cornell and built a very low-budget house. If you could call it that. It was pentagonal, with five trees as corner posts. 2x4s and plywood in between, with plastic for windows. Freshly-cut maple poles supporting plywood and 15# felt paper on the roof.

Then came a few years of ugly hacks to keep it livable, while building a better house next to it. The rafters sagged dangerously at the first heavy snow. Add a cross beam and post. Trees aren’t great for corner support because they sway in the wind. The tops had to go.  Soon, roll roofing to fix the leaks. Chipmunks, mice and squirrels kept living in the insulation, or they stole it. Many vain attempts to make walls rodent-proof. Etc.

The current Goldenseal accounting software also has some ugly hacks inside. In theory, one should thoroughly think out each problem, do the research, then come up with a robust solution. In practice, sometimes people just git ‘er done with the software equivalent of duct tape.

I mentioned refactoring recently. That’s what happens when you get tired of dealing with ugly hacks, and remodel the code to be clearer. Our staff has already refactored most of the really bad hack zones in the Goldenseal code.

But sometimes, the code isn’t important enough to deserve that much attention. So, more hacks join the pile. Getting screen and print layouts to look good is one of them.

For future use, we already rewrote layouts so they save data in text format. It’s easier to debug, and able to handle font names and file paths for images. That code is hack-free, and we can keep it that way.

Problem is, there are several hundred layouts in the old binary format. Modern fonts, buttons and fields are a little bit different, so fields and captions don’t line up very well. Nothing is terrible, but they aren’t great either. Our life will be easier if we can tweak them to look better before saving them into text. It’s temporary lipstick on a pig, and very hack-worthy. In a few years we can dump that code completely.

What makes it worse is that binary layouts are the last vestige of big-endian data. These days, every common OS is little-endian: it’s a technical detail for how bytes are ordered inside a 4-byte or 8-byte number. Pre-Intel Macs had bytes in a different order. The binary layouts can go either way, so there is rather hacky code to read them. It’s easy to get funky data because it’s backwards.

Meanwhile, I’m healthy and still testing negative. Still a Covid virgin.

Dennis Kolva
Programming Director
TurtleSoft.com

 

Covid-2023 (Feb 21)

Our staff is making gradual progress on the Custom Layouts overhaul. There still are details to work out.

The big news is that I may have caught Covid, after 3 years of avoiding it.

Four Ithaca dancers shared a hotel room at a big dance festival in Saratoga Springs last weekend. They required a negative test for entry. One roommate tested positive, and had to drive home on Friday. Sunday night I drove his car-mate to the Binghamton area since his car was gone. Monday morning he tested positive.

It was a four hour drive with no masks on. Guess I should have been more cautious. Tests are negative so far, but the next two days are likeliest for the virus to kick in. We’ll see.

I gave people Covid tests all weekend during my volunteer shifts. At least the process is second nature now.

Dennis Kolva
Programming Director
TurtleSoft.com

 

Covid-19: Super Spreading (June 3)

175 people attended a Biogen conference in Boston on Feb 26, 2020. One of them brought Covid-19 from Europe. Over 100 left with it. They spread the virus to most of Massachusetts and beyond. Eventually, that strain of the virus infected a few hundred thousand people.

The conference was a super-spreader. Early in the pandemic, there were others: Mardi Gras, a choir practice in Seattle, weddings, funerals.

10 days before Biogen, I was at the Dance Flurry in Saratoga Springs NY. It’s five thousand people dancing and having fun in crowded rooms. People mingle, talk, breathe hard. They come from all over the US and Canada, plus a few other countries. Contra dance is the perfect way to spread a virus.

The Flurry dodged a bullet. At the time there only were 15 confirmed cases in the US. However, testing was sparse back then. The actual number probably was in the hundreds or thousands. Pure luck that none of them attended. It would have turned the weekend into a super-super-spreader event. Big enough to totally change the trajectory of Covid-19. The pandemic might have roared into the US a week or two sooner, with everyone even less prepared.

All contra dances shut down in March 2020, along with many other group events. This year they are inching back slowly.

For the first few years of attending dance festivals, I’d always catch a generic cold/flu at them. Then it tapered off. Recently, I was down to just one cold every two years. Maybe being exposed to every possible virus has its benefits. Keep the immune system on its toes.

This summer I’ll attend an outdoor festival and a few smaller events. It will be strange, after more than two years of social distancing. Most likely I’ll catch Covid-19 at some point, as life grows more normal. With luck, masks plus the second booster will be enough to prevent extreme sickness and/or Long Covid.

As many people are finding out, catching this new virus doesn’t add much immunity. It’s easy to have it more than once. Ditto for any respiratory virus. I think that happens because they infect mucous membranes. Those are expendable cells that divide quickly, die young and slough off along with the slime they produce. It’s how your body keeps danger away from the more important bits. Your immune system doesn’t take upper respiratory cells very seriously because their turnover is so fast.

Vaccines are more effective because they inject into the body interior. Your immune system freaks right out when it spots foreign matter in muscle or bloodstream. A hefty bout of pneumonia is another way to ramp up the memory B-cells, but that’s a risky way to become immune. Better to learn it from the fake version.

Meanwhile, it’s tick season. Right now, Lyme Disease is a bigger worry than Covid. A vaccine for it came out in 1998, right when the anti-vax movement started. Sales crashed, and it was discontinued in 2002. I’m resentful about that, every time I find nymphs and/or bulls-eye rashes. It’s growing worse every year.

Dennis Kolva
Programming Director
TurtleSoft.com

 

Covid-19 in New York #9 (Dec 14)

The first cases of the Omicron variant just appeared in Ithaca. It only took 2 weeks to get here from South Africa.

Dec 18 Update: Omicron spreads crazy fast. In one week, local cases went from 466 to 2045 (about 2% of the population). 100% of recent PCR tests at Cornell were Omicron; 41% in the rest of the county. The peak in the chart below is more than twice as high now.

Cornell went to Code Red for the first time today: it’s their highest level of response. In-person exams and all social events are canceled.

There is also a global peak going on, but not as intense:

Oddly, Covid-19 has settled into a fairly regular sine wave, with peaks 3 times a year. I have no idea what would cause that.

This fall I have been visiting neighboring counties, looking for a house to buy and rehab. It’s a very different world there. They have have about 4x the number of Covid cases and deaths, but almost nobody cares. One realtor simply didn’t believe me when I said that 400 people had already died from Covid in her county, and 50 were in the hospital. Now it’s 446 and 77. Face masks are rare, inside or out.

That was Broome County. Their website has better charts than here. Mostly it’s younger people getting sick these days:

But older people have been dying:

The 1918 flu pandemic infected about 1/3 of all humans, over the course of 2 years. That one was most lethal for people in their 20s.

We’ll still have to see how this one proceeds. Not over yet. It’s jumping into white tail deer, mice, cats, other species. Then bouncing back as variants, or making new forms entirely inside people.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in New York #8 (Sep 13)

Back in April I really thought the Covid-19 pandemic would soon be over. Vaccines were rolling out. It looked like herd immunity was about to kick in. Time to move on to other things.

For a while, life was great around here. Active cases declined to single digits. Restaurants and bars filled up. People stopped wearing masks, even inside stores. There were parties and crowds. Everyone declared victory.

But the virus said nope. Active cases increased, then took off like a rocket. Last week the number of active cases hit an all-time high.

However, this surge is different. In the county, roughly 80% of adults are vaccinated. At Cornell it’s even better: 95% of students. Most of the Covid cases are happening in vaccinated folks, and they usually are less serious. Ten local residents are currently hospitalized: worse than anything before December 2020, but 1/3 of last January’s peak.

Tompkins County Covid Cases 2021

In the early days of the pandemic, Fox News kept saying this new disease was no worse than the flu. They were wrong. Lots of people found that out the hard way.

However, vaccines tame Covid-19 into a less serious respiratory infection. I couldn’t find local data for flu cases, hospitalizations or deaths to compare, but that’s kinda the point. Influenza is a normal part of winter, and rarely a crisis.

After 18 months of pandemic, Covid-19 is still worse than the flu, but it’s getting closer to being ordinary around here. So far this new surge has not affected daily life by much. Shops are open. Restaurants are busy. The hospital is not overwhelmed.

Sadly, Ithaca is not typical of the US.

Vaccination rates are lower in most areas. Sometimes a lot lower. In general, vaccinations seem to map pretty closely to wealth and education levels, plus Native Americans. I’m not sure what’s going on in Virginia and Georgia: maybe politics, or local culture, or just a data glitch. Texas is going la-la-la it’s not a problem if we don’t report it.

If you zoom in, our county is that dark blue dot in the middle of light and lighter blue Upstate NY. People took the pandemic very seriously around here, and they still do. Almost everyone is wearing masks in stores again. Some even outdoors. That’s not the case one or two counties over.

It has paid off. We’re a dark blue dot in the death map, too. Most nearby counties have been 3x to 4x worse. People in the dark red areas were over 20x more likely to die.

The way each region responds to the pandemic really is a matter of life and death. I suspect it’s going to be another tough winter. Delta is bad, but Mu sounds badder. Most likely Covid-19 will use up the entire Greek alphabet before it’s over.

BTW here’s a website that does a great job of calculating Coronavirus risk for you. Plug in a location, an activity and the details, and you can see the odds that it will make you sick.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in New York #7 (Apr 14)

This chart shows the local experience with Covid-19 over the past 13 months. Blue is number of active cases, yellow is number in hospital, red is cumulative deaths. The last two are 10x to make them more visible.

There was a bump after every major holiday. Even Halloween. The most recent was mostly Cornell students after Spring Break.

That first blue bump in March/April 2020 now seems downright puny. Of course, NYC and a few other places had a terrible time then. The spare capacity here saved lives. Local medical staff took a bus down to help. Some patients transferred here.

I got the J&J vaccine more than a month ago, but haven’t changed behavior much. The chart explains why. Almost 30% of local residents are fully vaccinated, and over 50% have taken one jab. But active cases and hospitalizations are still worse than anything before November. It’s not over yet.

In the rest of the US, the situation is similar. New confirmed cases are off the winter peak, but still higher than last summer. Most regions are showing a small fourth surge.

Deaths have fallen off faster, probably because older people were vaccinated first. It’s already better than last summer. These days, Covid-19 is mostly a young people disease.

BTW the green bump is because Ohio changed the way they classified Covid deaths, and suddenly added 5,000.

Covid-19 probably is winding down. Unless something dramatic happens, this will be my last post on the subject. It has been an interesting ride. I sure hope we are better prepared for the next one.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19: Mutations (Mar 8)

Life is not easy when you’re a coronavirus. If you can even call it a life.

You’re tiny. Too small to see in a microscope. Rock bottom on the food chain. You can’t move, and you’re delicious. Rich in protein, plus tasty fat and sugar. Happily snarfed up by bacteria or dust mites. Easily killed by UV, or just about anything else.

You only have one trick: sneak into the right vertebrate’s cells, and you’ll reproduce like crazy. But even that’s just temporary. In days or weeks, their immune system will learn how to stomp you. Eventually, the entire species will be resistant. The only way to survive long-term is to mutate, and change enough to infect again. Or better, jump to a new species and start over with fresh victims.

We are already seeing that with Covid-19. New versions keep popping up. Some reinfect people who survived earlier versions. Some are jumping to minks, cats, other species.

This is yet another reason why it’s a whole lot better to nip contagious diseases before they become pandemics. Fewer infected people means fewer mutations, and lower risk that the disease recurs for decades. SARS and MERS both were caught in time. Now SARS is gone forever. MERS is gone if you don’t hang out with camels.

It’s way too late for Covid-19 to ever be contained. The question is, what happens next?

For the short term, vaccinations are starting to kick in. They will help slow down the spread. Life will probably be close to normal this summer.

Unfortunately, Covid-19 will keep making new mutants. Most likely, there will be reinfections and outbreaks for years or decades. It’s established too deeply, now.

The only good news is that co-evolution is likely to happen. A virus spreads faster when their carrier is out and about, not deathly ill. If they kill the host, they also die. That means mutations and natural selection gradually make a disease less serious (but faster-spreading).

Warts are the ideal end point, from the viral point of view. Common colds are almost as good: infect everyone, rarely deadly. There already are four coronavirus strains like that (229E, NL63, OC43 and HKU1). Covid will eventually settle down to be the fifth.

Sadly, the process of becoming less deadly takes years, and it’s not 100% reliable. Folks probably will need an annual Covid booster to go along with the flu shot, at least for a while. Face masks may be a long-term reality.

In 2009, the US launched the PREDICT program. It set up a global network of labs and researchers to act as an early-warning system for pandemics. It cost about $20 million a year. Funding for that and other international health programs was cut in mid-2019. That was a 5 or 6 trillion dollar mistake just for the USA.

In this century, there have been 3 serious Coronavirus outbreaks: an average of one every 7 years. Fatality rates of 34% (MERS), 10% (SARS) and about 1% (Covid). Toss in Zika and a couple of Ebolas, and it’s one outbreak every four years. That’s not even counting influenza and other random diseases.

Humans are a densely packed and mobile species. Pandemics are nature’s way to fix that sort of overpopulation.

We probably should do more stuff like PREDICT, not less. Along with the sickness, dying and inconvenience, pandemics are very expensive.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19: Vaccines (Feb 15)

From 2008 until 2013, I went back to Cornell part-time to finish up a BA in Molecular Biology. It’s an interesting field that didn’t even exist during my first shot of college. Mol Bio kinda squoze into the gap between Biochemistry and Genetics, with big help from the Human Genome Project.

Molecular biology is the reason you can get vaccinated for Covid-19 now. Previously, it took a minimum of 4 years to develop and test a vaccine. What sped things up is mastery over the big molecules of life: DNA, RNA and proteins.

Derek Lowe is a molecular biologist who blogs for Science magazine. He’s an expert on diseases and vaccines, but he writes for mere mortals. If you want to make intelligent decisions about Covid-19 vaccines, here are links to some of his recent posts. They are way better than anything you’ll ever see on Twitter or Facebook.

B Cells, Infection & Vaccination
Pfizer/Moderna Vaccines
J&J and Novamax Vaccines
Oxford/AstraZeneca Vaccine
Vaccine Production Myths
Why Lower Efficacy Isn’t That Bad (Vox)

I’ll try to summarize vaccine results so far, in very over-simplified form.

The first Covid-19 vaccines approved in the US were RNA vaccines from Pfizer and Moderna. Both require two jabs, with about 94% efficacy at preventing infection. They use mRNA that includes the code for Spike protein. It’s stuffed into a tiny sphere of fats, cholesterol and probably some proteins. Composition and size similar to a Coronavirus, or like LDL “bad cholesterol” plus RNA. When injected, the nanoparticles are absorbed by muscle, lymph and liver cells. Inside them, the mRNA hooks up with a ribosome, which uses its sequence to build Spike proteins. Some Spikes leave the cell, float around, and trigger the immune system. Later, a real Coronavirus comes along, but immune cells recognize its spiky bits and send in the killers. Protected!

The Oxford/AstraZeneca, Johnson & Johnson/Janssen and Sputnik vaccines use a different approach. Instead of nanoparticles, they deliver via a modified Adenovirus (a mild virus that causes sore throats, pink eye etc). The DNA code for Spike is spliced into its genome. After injection, the virus infects some human cells. Its DNA sneaks into their nucleus and is transcribed into mRNA. That exits the nucleus, then follows the same path as the RNA vaccines: ribosome to Spike to export to immune response.

Of the 3 DNA vaccines, Sputnik (2 jabs) has excellent results, but probably won’t be available in the US. J&J (1 jab) is mediocre at preventing infection, though it’s OK at blocking serious disease and death. Oxford (2 jabs) is somewhere in between. The lower efficacy may be because some people are already immune to Adenovirus: so they kill it prematurely. Sputnik uses two different virus forms, which may explain its better performance. J&J and AstraZeneca are testing variations that may also be more effective.

Novamax takes a third approach. It cuts to the chase, and injects Covid-19 Spike protein directly. The Spikes are manufactured by moth (!) cells. How cool is that? To produce the vaccine, the DNA sequence for Spike is spliced into a virus genome. That infects the moth cells, which then produce Spike via the same path as the DNA vaccines. The protein is purified, then attached to a fatty nanoparticle. To the immune system, it looks a lot like a Coronavirus. Trials in the UK showed 89% efficacy (2 jabs). US Phase 3 trials started in December.

The DNA and protein vaccines have a big advantage: both molecules are more stable than RNA. They only need fridge temperatures for distribution instead of freezers (Moderna) or dry ice (Pfizer).

As an old dude, I’m eligible to be vaccinated now. The original plan was to wait for J&J vaccine data before deciding. That quickly became moot, since there’s a huge backlog. It will be a while until I can get any vaccine regardless. By health and habits I’m low-risk, so it won’t be too bad to live the pandemic lifestyle for a few more months.

New York vaccinated nursing homes and health care staff first. Now the priority is essential workers and teachers. That approach is already having an impact. There were 20+ daily cases in the local hospital for the month after Christmas, but it’s down to 3 or fewer. Surrounding counties are also doing much better.

At the moment I probably would pick Novamax, if its US trials are similar to the UK results. I probably already have Adenovirus immunity, and it makes sense to save mRNA vaccines for the next pandemic. However, the decision is barely more than a guess. There may not even be a choice of vaccines.

The big picture for humans: the success of all these vaccines is extremely good news. They’re fast, and will be even faster to release in the future. Minor DNA/RNA/protein tweaks to keep up with mutations will only take days, and won’t need such a long approval process. All three of the methods will help fight other diseases. And that’s not even counting newer techniques like CRISPR that are gradually being developed.

Looking back ten years from now, Covid-19 may seem like a wonderful disaster that launched huge medical advances.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in New York #6 (Jan 12)

In July, the local Internet provider asked me to do some in-home wiring for a few of their clients. Most of the folks were good about masking and social distancing, but one couple wasn’t. They didn’t wear masks, and got physically close to me even after I asked them not to. I left early, and decided not to go back there. Someone else finished the work.

Soon after that, the couple tested positive for Covid-19. Not surprising, considering their behavior. The second installer had to quarantine. Luckily, I was outside the exposure time window. Phew.

Lately, it feels like there are more bullets to dodge. Cases have turned up in Home Depot, Walmart, most supermarkets, the Post Office, public transport. Since March I’ve kept a spreadsheet of public places where I’ve been, and when. There have been a few near misses, but nothing close enough to need a quarantine. Yet.

New York just entered phase 1B of their vaccination program. As an over-65 I’m qualified to get a vaccine as of today. Theoretically, I’d prefer to wait a bit. For one thing, the Moderna and Pfizer vaccines are well-tested and probably fine, but they are a new technology. I’d rather let other people be the guinea pigs, just in case there are long-term, subtle effects.

Also, they were the quickest to release. It’s possible there will be a future, more dangerous pandemic. If so, it would suck if my immune system had learned how to zap their mRNA carriers. Waiting a couple of months for Johnson & Johnson or AstraZeneca is kinda like saving the big guns for when they are really needed.

A traditional killed-virus vaccine would be best of all, since that approach is extremely well-tested. However those take years to develop. That’s a long time to be living in a bubble. Plus, any vaccines that haven’t started trials yet will have a hard time finding test subjects who weren’t vaccinated or infected. They may never get out the door.

Meanwhile, active cases have spiked locally, similar to the rest of the US. Covid-19 got into one of the local nursing homes right after Thanksgiving, and the number of county deaths jumped quickly from 1 to 17. That seems to be how the disease works in other places, also.

Since Christmas, the number hospitalized here has varied from 20 to 32. That’s much worse than the Spring ’20 surge, which maxed at 16 and was only over 5 for a few days. Here’s the chart to date:

Thick blue is active cases divided by 10. Red is the number in hospital, which lags by a few weeks. There was a spike of active cases in early March, but tests were scarce then so it’s not in this chart.

Most surrounding counties are having a worse time than here. Cattaraugus only updates their website once or twice a week now, ever since new cases jumped from a few a day to a few dozen. They used to be much more chatty. Chautauqua (next door to them) has 111 hospital beds, and 131 patients. Steuben has 774 active cases, 2,214 residents in quarantine (2% of their population), and only 15 contact tracers. They’ve had 153 Covid deaths so far in a population about the same as here.

The Rt tracker website is a good predictor for future disease impact. As of today 15 states are below 1.0 and reducing their active cases. 36 are above it, and still getting worse. Now that the holidays are over, there’s more hope it will improve.

One (tiny) good impact of Covid-19 is that many people put up extra Christmas lights this year. Walking around at night has become very entertaining. Winter is a bit less bleak.

Now we just need to survive Jan 20.

Dennis Kolva
Programming Director
TurtleSoft.com

Covid-19 in Charts (Dec 26)

This chart shows new confirmed Covid-19 cases in each part of the US. A couple months ago things got bad in the Dakotas and surrounding states. Then it improved there, but got worse everywhere else. There was a sudden reverse last week. New cases declined in every region. It may be good news, but more likely it’s because health departments ended the week early.

This one shows weekly restaurant seatings from OpenTable, comparing this year to 2019. After the April/May shutdown, it rose gradually to about 60% of last year. Now it has declined back to about 35%. There’s a big spread between states: New York is at 12%, California 6%. Texas and Florida are still near 60%. I don’t know why everyone decided to eat out during Labor Day week.

Last July I divided the largest countries into 5 groups, and made charts for their cumulative confirmed Covid counts. Here are updated global CCCCCCs. All numbers are cases per 100,000 people.

First are the countries that were doing it right back then. Almost all of them are still doing it right. They have very few cases, and economies that are close to normal. The only exception is Tunisia. It’s starting to catch up with Europe.

Next are countries that were just starting to increase in July. Most of them halted the growth, but Jordan, Morocco and Greece are acting like Europe. Some of the poorer countries may have low counts from lack of testing, rather than lack of disease.

The third group is countries in Europe, plus Canada. They had serious early outbreaks, but contained the disease over the summer. Sadly, things got much worse once the weather cooled. Canada and Germany aren’t too bad, but the rest are doing almost as badly as the US.

The fourth group is countries that were just starting to have serious problems in July. They are a mixed bag now. Some are doing OK, but the ones in Europe and South America have growth rates similar to their neighbors.

The last group I called the “basket cases”, with outbreaks that were bad and getting worse. Those in the Southern Hemisphere slowed down as their summer hit. Those with disease-friendly politics became even more baskety. Portugal started zooming recently, similar to the rest of Europe.

The countries with the most per-capita Covid cases now are #1. Czechia, #2. Belgium, and #3. USA.

About 45% of the world population is in places where Covid-19 is no big deal: China, all of East Asia and Southeast Asia, Australia, New Zealand. A few island nations and isolated countries. When a disease is contained, it’s possible to keep it that way. Though it’s much harder when neighboring countries don’t have it under control.

About 5.5% of people in the US have been infected so far. Keep in mind that it takes roughly 80% to reach ‘herd immunity’. Take the pain of the past 10 months and multiply it by 15 to get there naturally. It’s why we need vaccines.

Dennis Kolva
Programming Director
TurtleSoft.com