Pandemic Journal, Day 711

I sat down this afternoon to define more shim devices in Indigo to let me use the abandoned HomeBridge plugin for Indigo to expose the real devices to Apple HomeKit (and therefore to the Home app). And then I thought about what I was doing and realized that relying on abandoned software was not a good long-term strategy.

Instead, I decided to buy a Raspberry Pi and put real HomeBridge on it to see if getting rid of the indirection through Indigo will work for me. Buying the RPi wasn’t as simple as I’d’ve liked – the chip shortage has made most models unavailable. Strangely, the only one that’s easy to find is the Raspberry Pi 400, which is a Raspberry Pi 4 built into a keyboard. I ordered one from Central Computers in Santa Clara and they have it ready for me to pick up tomorrow.

I spent the next few hours going through the automations I’d set up in Indigo so I can move them into HomeKit when I get HomeBridge set up.

Making life easy is hard sometimes.

Pandemic Journal, Day 710

It was another hectic day, starting with the Silver Tongued Cats meeting this morning. Our Toastmaster had selected “F. E. A R.” as the theme of the meeting, and she opened with a few possible expansions of the acronym, such as “Future Events Aren’t Real” or “Frustration, Ego, Anxiety, Resentment”.

I was the Inspiration Master for the day. I wanted to play off the theme and come up with something that was Toastmasters-oriented. After a bit of thought, I arrived at “Fair Evaluations Are Rewarding” – an effective Toastmasters evaluation gives the speaker praise and encouragement for strong elements in the speech but still offers suggestions for getting better. It sufficed.

I also put together the minutes from the Ritual Committee meeting I led last night. In the process, I found (thanks to Codegena.com) a solution for a technical problem we identified during the meeting – being able to automatically embed the most recent video from our YouTube channel on a web page without having to edit the page every time. It looks like this:

and it should change every time we livestream on YouTube.

It wasn't the most exciting day, but that's OK!

Pandemic Journal, Day 709

It’s been a very busy day today – a trip to the gym, a funeral, a volksmarch, and a committee meeting, along with the usual cooking and eating.

Well, not quite the usual cooking – one of our trivia friends (and a fellow IBM Almaden retiree) took a trip to Greece last year and liked the Early Harvest (“agoureleo”) olive oil he found there so much that he had a little sent back to his house. 40 liters, in two convenient 20 liter boxes. He invited us over to taste the oil – it’s very buttery at first, but then there’s a good bit of pepper and bitterness at the end. It’s quite distinctive. He gave us a bottle of the oil to take home with us, and I used it tonight in One Pot Tomato-Basil Pasta. The recipe only calls for one tablespoon of olive oil, so I can’t say that I really tasted the difference, but we enjoyed the meal!

Pandemic Journal, Day 708

The drought broke today – there were raindrops on the bag holding the morning newspaper and I had to use my wipers for almost a full minute this morning. I’ll bet we got at least 0.001 inches of rain!

Today’s mail brought a Chase debit card to replace one which is expiring soon; when I called to activate it, I was greeted by a recording telling me that I had been “specially selected” to receive a special offer on medical alert devices. This seemed weird, but banks have been known to do weird things in the pursuit of money. A few seconds later, I was connected to a person breathlessly telling me about the great opportunity I had to get their medical alert device – I tried saying “no” twice and then just hung up the phone.

It turns out that I had put an extra “9” in the number. I called the correct number and activated the card with no further ado.

I don’t actually carry the debit card with me – I add it to the wallet on my Apple Watch and use that at the ATM. I hoped that getting a new card wouldn’t cause problems at the ATM, but I didn’t want to rely on hope, so I visited my local branch and tried my luck. The ATM told me that my card had been deactivated and I should use my new card, which, of course, I didn’t have with me. I deleted the card from my watch and phone – and then realized I couldn’t put the new one in, because I didn’t have it with me. When I got home, I logged into the Chase app and was able to add the card to the watch and the phone – no need to enter any information; being logged in was sufficient. I’ll find out if it really works the next time I visit a Chase ATM!

Pandemic Journal, Day 707

I spent much of today trying to integrate my Indigo system and Apple’s HomeKit. I’m much of the way there, but there’s still a lot of work to be done.

So far, I’ve:

  • Installed “HomeKit Bridge” on Indigo
  • Discovered that there’s no way to change the “ownership” of a HomeKit “home” to a different Apple ID
  • Rebuilt my HomeKit “home” on a new Apple ID – it was simple but tedious
  • Discovered places where HomeKit Bridge and Indigo don’t play well together – in particular, I can’t expose the door/window open/closed information from my alarm in Indigo to HomeKit
  • Discovered the Indigo “Masquerade” plugin, which is a shim to solve the previous problem
  • Started creating shim devices for all the door and window sensors – it’s tedious, so I’ll have to do more tomorrow.

The UI that Apple provides in its “Home” app is much better than the one in Indigo, so it’s going to be worth the trouble of wiring this all together, even though I expect to still use Indigo to do most of the automation.

Pandemic Journal, Day 706

This afternoon, we went to Silver Mountain Winery for a pick-up party – it was almost like a pre-pandemic event. We shared a table with another couple, we were able to go to the bar to get wines to taste (instead of having a set of 4 pre-filled glasses delivered to the table), and they provided a cheese and fruit platter for each table. But because of the pandemic, each couple got their own knife. :-)

The winery is in Santa Cruz County and the event was outside, so there were no mask requirements; we still wore ours when we went in to pick up our wine, though.

They had some of our favorite wines on sale at $12.45 per bottle, too – their 2012 Alloy and 2012 Tondre’s Grapefield Pinot Noir. We had to buy a case of each to get that price, but we were willing to make that sacrifice!

Pandemic Journal, Day 705

We missed the first few minutes of Torah Study this morning because the Mac had gone to sleep, even though I had set the “don’t sleep” option in the Energy Saver preference page and had Amphetamine running. This has been happening for a few days, and I was getting irritated.

Fortunately, Rabbi Gottlieb hadn’t actually started the discussion yet, so we got to participate in the whole session, which was centered on the discussion of Shabbat in Exodus 31:12-17. What does it mean to be Shabbat-observant today? We, of course, didn’t come to a conclusion, but there was general agreement that doing things other than one’s normal work was appropriate.

As soon as Torah Study was over, I used the remote control to turn off the TV and the receiver – and I noticed that the Mac had gone to sleep. I turned it back on and started looking at the logs; it looked like something had pressed the power switch right after Torah Study, which was physically impossible.

And then it hit me. Last week, I decided to program the remote control (a Logitech Harmony) to put the Zoom commands to turn the mike and the camera on and off on buttons. To do that, I had to add the Mac to the “Use Computer” activity so that the remote could send Bluetooth keystrokes. And when I added the Mac, I had to specify what would happen to the Mac’s power when I started and stopped the activity. I had taken the default, which was to turn power on when the activity started and turn it off when it ended. And how did the remote turn off the Mac? It sent the Bluetooth command to turn off power, which actually puts the Mac to sleep.

I had found the guilty party; it was me. I changed the activity to leave the Mac’s power alone, and all was well.

We celebrated by taking a walk and discovered that our neighbor’s tulips are already beginning to bloom!

Pandemic Journal, Day 704

I made pretzels again today – this time, things went smoothly. I let the butter soften for a long time and distributed the dry ingredients a bit more carefully before putting in the water, and was very cautious in adding a little extra water to incorporate the remaining flour. I hardly had to clean up any flour dust, and the dough hooks came out almost clean. The dough wasn’t too sticky when it came time to roll it, either. Practice makes better, right?

Our long-delayed volksmarching award booklets arrived today; I’d sent them in for processing just before the first of the year, so I expected them to be delayed by the holidays. Then the AVA had some issues with their postage provider which were only resolved last week – so the booklets went into the mail on Monday and arrived today. I couldn’t really say that the delay was critical, though; they’ve been ready to send in since 2002!

And Diane’s new iPad mini came in; we’d ordered it on January 10 and been given a delivery window of February 15-22. The first indication of progress came yesterday, when they sent a shipping notice and UPS tracking number showing expected delivery today. I guess they bulk-shipped the units from China to California before sending out notifications (unlike previous purchases, which I followed every step of the way from Shanghai to here).

We had a few glitches in getting the new iPad set up as a clone of her old one, but it’s done now; once Diane’s sure the migration was successful, I’m going to turn the old iPad into a hub for HomeKit. Not tonight, though!

Pandemic Journal, Day 703

We got an update from our travel agent telling us about changes for the flights for our Alaska cruise this summer. The return flight from Vancouver had been changed – instead of a nonstop to San Jose, it was now a nonstop into San Francisco. Flying into San Jose would require a change of planes in Seattle (or worse) and would add a couple of hours to the trip – so we’ll fly to San Francisco and be happy.

The news was worse on the outbound flight – instead of leaving San Jose at 4pm and getting into Fairbanks at midnight with a couple of hours layover in Seattle, we were now going to leave at 8pm and arrive at nearly 2am, with only 42 minutes to make our connection. I was not amused.

I found a flight which leaves San Jose at 3pm and arrives in Fairbanks at 11:20pm, nearly the same schedule we’d originally had. But the flight numbers are different, so they have to reissue the tickets. Go figure.

And our travel agent for a 3-week river trip we’re taking next summer in Europe said that he had to move our group from AmaWaterways to UniWorld – details to follow. He promises that the price will be slightly lower and the itinerary will be better. I hope so!

Yesterday’s adventure in booking train travel also meant that I had to update my Tripit/calendar integration program to understand “rail objects” in the Tripit data stream – the hardest part was looking at my code and figuring out what it did again. After that, it was easy to adapt the code that handled airline travel to take care of trains. Most of the changes needed were because the field names in the Tripit data are different for planes and trains; I probably could have made the code smart enough to handle both, but it was easier to make a copy of the airplane code and change it.

At least there are flowers to enjoy!

Pandemic Journal, Day 702

I decided to finish booking the rest of the travel for our next trip, which meant figuring out how to get from New York to Baltimore. Since we were going downtown-to-downtown, Amtrak seemed like a good idea.

I saw a “Deals” tab on the Amtrak site and clicked it, not expecting to find much. I was wrong – they were offering a two-for-one sale for Valentine’s Day, ending today. I grabbed it; the fare on the Acela train was less than taxi fares to and from the airports at each end, and it should be more convenient.

This afternoon, we went to Oakridge Mall for the first time since the beginning of the pandemic; Diane likes Levi’s and hoped to find them at Macy’s. The mall was rather empty – lots of vacant storefronts and not many shoppers; it wasn’t quite as deserted as the last days of Vallco but it was startling.

Macy’s had the jeans she wanted, at 30% off; finding a functioning fitting room was a challenge, but we eventually succeeded, and she bought them. When I got home, I decided to see if she’d gotten a good deal; I’m not sure. Every store I checked (Kohl’s, Dillards, JC Penney, and even Levi.com) had a 30% off sale on those jeans!

Pandemic Journal, Day 701

We’ve been accumulating travel points for many years (we joined AAdvantage in 1981, just a few months after its initiation). In the olden days, we could sometimes redeem airline points for as much as 10 cents each for trans-Atlantic business class flights, so we’d hang onto them until we had enough for a big redemption.

The airlines caught on, and they’ve been steadily reducing the value of a point and removing the chances for big payouts. So have hotels. But it’s still generally been useful to save the points for a big trip.

Of late, though, we’ve been directing our spending towards cards that pay back in cash or that offer bonuses for specific purchases or redemptions. Getting $20 back from the Apple Card isn’t as exciting as getting a trans-Atlantic business class ticket “free”, but times change.

Today, we burned a lot of points for an upcoming multi-city East Coast trip. Our transcontinental flights were paid for by Chase Ultimate Reward points (worth 1.5 cents each); I bought a $79 flight from Richmond to New York with 7500 American points; but the big expense was our hotel in New York. I have status and lots of points with Marriot, and they have many hotels to choose from. I wanted to get the freebies (especially breakfast) that are included with my status, which ruled out quite a few of the hotels; in the end, we looked seriously at the Times Square Edition, the JW Marriott Essex House, and the St. Regis New York.

The Edition looked, umm, interesting. And the location was attractive. But when we read about the bespoke fragrance that they pump through the hotel, we decided to skip it.

I’d heard about the Essex House since I was a kid – I remember hearing announcements on TV shows that “guests of this show stay at the Essex House”, and I actually booked a room there. And then I found that there was a $35/night “amenity fee” and read some reviews that said that the hotel was a bit on the tired side.

The St. Regis is an old-fashioned luxury hotel. Each floor has a butler; as a Titanium member, we’ll get our free breakfast served in our room (I think we also can eat in the restaurant if we prefer); the location is great; the reviews are mostly outstanding. And there’s no “amenity fee”. So I changed our reservation to the St. Regis.

It’s nice planning travel again! And we still have lots of points to use, too!

Pandemic Journal, Day 699

We followed our usual Sunday morning routine with a trip to the Farmers’ Market and a walk through Downtown Los Gatos. Lunch was the halibut we’d bought at the market.

After lunch, we saw City Lights’s production of Agatha Christie’s The Hollow. The Christie Estate does not permit recording or live-streaming of her plays, so the only way to see it was in person; the theater was nearly full (not bad for a performance that overlapped the Super Bowl), and the audience was engaged. I was right in guessing who the murderer was, though I did have second thoughts a few times. Recommended!

Pandemic Journal, Day 698

We made up for our failure of yesterday by going to Burrell School Winery this afternoon to pick up our wine. It was a gorgeous day, so the place was busy; we sat outside and enjoyed the wine and the view.

It’s still early in the season, so the vines are bare; the roses are still dormant, too. That’ll change by our next visit, I’m sure.

Pandemic Journal, Day 697

Once more, I find myself at the end of a quiet day. We had hoped to go to a winery and pick up our allocation, but they didn’t answer the phone when I called, so we may have to go on a day when they’re actually open.

The weather was spectacular; we took a couple of extra walks to enjoy it. Rain would be nice, though!

Pandemic Journal, Day 696

I was the Toastmaster of the Day at the Silver Tongued Cats today, and I’d selected “Messages of Love” as my theme. “Messages” because today was the anniversary of the very first singing telegram, and “Love” because Monday is coming. My comments throughout the meeting were related to the theme. I introduced our Inspiration Master with a quotation from Ella Fitzgerald:

Just don’t give up what you’re trying to do. Where there is love and inspiration, I don’t think you can go wrong.

I even introduced Table Topics with a photo of the only candy which is its own message of love, Conversation Hearts.

Of course I talked about flowers and jewelry, too, so I wanted to close the meeting on a musical note. I began by mentioning a few of the Knot’s 100 best love songs, and then I planned to play the ultimate love song.

I wanted to be able to start the song without any delay, so I’d downloaded it and queued it up so that it would only take one keystroke to start it. It worked perfectly and the song started playing…from the beginning. The 43 seconds until the music got to the part I wanted seemed like an eternity, but people seemed to enjoy it anyway.

Speaking of eternities, I finally got a refund for the paper towels that Costco never shipped. Calling the corporate office (425-313-8100) was the key step – I told “Operator 1975” my story, and she promised that the “Escalation Team” would get back to me in 4 to 5 business days. It took less than an hour; I got a call and an email, and I already see the refund on my credit card. Finally!

Pandemic Journal, Day 695

Once more, we took an Afternoon Amble with the South Bay Striders – today’s walk was the half of the Los Gatos Year-Round Event that we didn’t walk last week. It wove through nice residential neighborhoods with a mix of old and new houses.

Some of the older houses in town have been designated as Bellringers – there are 100 in all, designated in three tranches (in 1976, 1977, and 1987). Our route took us past houses in all three categories, so we got to see all three versions of the award.

There’s a complete listing (with photos) of the Bellringers as part of the Los Gatos Local History Research Collection, which I discovered while writing this entry. It’s amazing how much information you can find with a walk and a simple search!

Pandemic Journal, Day 694

We visited our lawyer to sign updated wills, powers of attorney, and health care advance directives today – I guess that must mean we’re grown-ups.

Beyond that, it was a quiet day – we fled the house this morning so our housecleaner could work without interruption, took a walk on the Los Gatos Creek Trail, shopped, failed to find pomegranate arils but eventually found a whole pomegranate, and watched some TV. I also had to adapt my “daily comics” program to work with changes that Comics Kingdom had made to their website – it was easy and now the program is shorter, which is always a good thing!

Three years ago, we were in Singapore, taking a full-day guided tour around the city. Our guide showed us places that had been used in Crazy Rich Asians, historic places like the former Ford factory where the British surrendered Singapore to the Japanese during World War II, beautiful views from high-rise public housing, and interesting places to explore later in our trip. We even visited an old haunt that had vanished from the Bay Area – but limited our consumption to a photo.

We did, however, have local ice cream a few hours later. :-)

Pandemic Journal, Day 693

When I was young, I didn’t always want to finish what was on my plate. Sometimes, my grandparents or my mother would try to guilt me into finishing by telling me that “children in Europe are starving”. I didn’t think whatever was left on my plate was going to help those children, so it wasn’t a very effective argument.

But even though it wasn’t an effective argument, it still rings through my head when I don’t finish something (unless there’s a plan to use it, of course). And I heard it clearly today.

I was on my own for lunch. I decided I wanted a burger and fries, and I wanted to go somewhere I hadn’t been in a while. I chose Gyros, Burgers, and More. When I got there, I wasn’t sure whether I wanted a gyro or a burger – but I saw the “Gyro Burger Plate” which included fries. A burger made with gyro meat sounded perfect, so I ordered it and brought it home.

Big mistake. And big is the word. When I unwrapped my purchase, I found a big burger, topped with a big stack of gyro meat, along with a generous portion of fries. It was good, but there was far too much of it for me – I think I ate half of the sandwich and a third of the fries before giving up.

At least I was able to put the remains in the compost container instead of the garbage.

Pandemic Journal, Day 692

The big event today was the Shir Hadash Special Congregational Meeting to ratify the selection of Rabbi Nico Socolovsky as our new Senior Rabbi, beginning July 1. The vote was overwhelmingly in favor, and the meeting was short!

Beyond that, Diane spent the morning and most of the afternoon at her virtual crop, so I had to go to the Los Gatos Farmers’ Market alone. I survived. :-)

While I was in downtown Los Gatos, I passed by the Loma Brewery, where I saw another sign of a return to normalcy.

I’m not quite ready to go to a bar for trivia yet, but it’ll be nice to have the option available when the time is right.

Pandemic Journal, Day 691

Diane and I attended Torah Study this morning; the portion was Terumah (gifts or donations). It calls on the Israelites to bring specific items to be used to build a portable Sanctuary where God can “dwell among them”. We had a lively discussion about what that meant, looking especially at the I-Thou relationship that Martin Buber espoused. It was a good start to the day.

Diane spent most of the rest of the day at the virtual crop, learning new techniques for working with photos and building photo books and other goodies.

I had a more varied (and probably more restful) day – I was Zoom host for Shir Shabbat services, then I took a long wander around the neighborhood to ensure I’d hit my calorie goal for the day. And I got caught up (a little) on magazines. I even saw a couple of ducks in the creek nearby.

I also did a little light Google Sheets work for the Silver Tongued Cats to fix up a spreadsheet I’d created and make it a little more resilient to changes in the club roster. The details are not very interesting – suffice it to say that ArrayFormula is a useful tool that I wish I’d known about a few months ago.

Pandemic Journal, Day 690

It’s been a quiet day again – no new recipes, no interesting travels, no major technical issues. Diane’s been busy in the office all day working on photos as part of a “virtual crop” which will continue through Sunday afternoon – at least we’ve gotten to eat together!

Pandemic Journal, Day 689

A few Silver Tongued Cats planned to meet for in-person coffee and conversation at Panera Bread 15 minutes after this morning’s meeting. I was game; Panera is a 20-minute walk from my house, so I expected things to be in full swing when I got there. So I was surprised when I got there at 9:20 and found no one from the club – I stuck around for a few minutes, walked home, and then Diane and I set off on our usual Thursday rounds.

Later, I found out that the other people arrived starting at 9:30, long after I’d left. The official start time will be 9:30 next time, and I’ll be more patient.

Lunch was another experiment, this time using a recipe for Salmon with Cilantro-Lime Topping + Pear & Nut Salad from Platypus Wine Tours who’d taken us on a Sonoma tour in July. It was pretty good, but I think we had too much celery and could have used more nuts.

Diane and I took a quick walk in the afternoon, and then we got busy on computers until dinnertime. At 8, I suddenly realized that I was 70 calories short of my daily goal. I’m pretty sure I won’t be able to hit it every day this year, but I’m not ready to give up yet, so I took a quick and boring walk up and down the block to make up the deficit.

The saga of my missing Costco shipment continues – I’d called them nearly two weeks ago to ask for a refund for the paper towels that they hadn’t included in the replacement shipment they sent, and I was told I’d see the refund in a week or so. It hasn’t shown up; this time, I decided to try their chat function so that I’d have a record of the conversation. The current promise is that they’ll process the refund within 2-3 business days and send me an email; after that, it’s in the bank’s hands. We’ll see.

Pandemic Journal, Day 688

On Monday night, I’d learned that one of the members of the Silicon Valley Improvmasters was the owner of Glazier Rolled Ice Cream on Santa Cruz Avenue in downtown Los Gatos. I’d been curious about the place but we’d never gone there; this gave me another reason to consider visiting.

This afternoon, we took a 5K walk through downtown Los Gatos with the South Bay Striders – I was a little hungry afterwards, but it wasn’t time for dinner, so I suggested visiting Glazier. Diane was agreeable, so off we went (we’ll do anything for more steps!).

Making rolled ice cream is an elaborate process – I don’t know how they’d cope on a busy day, since each order took more than five minutes. The result was interesting, but I think I prefer the texture of a traditional ice cream. But I’m willing to give it another try.

Pandemic Journal, Day 687

Our HVAC got repaired today – the tech replaced the gas valve and adjusted the air flow to direct a little more air towards our bedroom. The air coming out of the register in the bedroom was only 98F before he started working on the system; now it’s 112F, which should help keep the temperature in the room closer to the rest of the house.

And it was Jeff’s birthday – it would have been nice to see him in person, but we had a nice conversation.

And I kept working on recovering from the character set problem induced by installing WordPress 5.9. I spent a long time trying to get MySQLdb (an old Python to MySQL connector) installed on my M1 Mac mini to no avail; I eventually decided to give up on it and installed a pure Python connector, pymysql. I had to change the way I make the initial connection to specify keyword arguments, but that was the only change I had to make. People say that the pure Python version is slower than MySQLdb, which is partially written in C, but I doubt I’ll ever notice.

After that, I was able to actually work on the real problem, and I think I have code to safely convert the Latin-1 columns to UTF8. I’m not crazy enough to run it tonight, though!

Pandemic Journal, Day 686

I’m still trying to clean up the character encoding issues I created (or maybe I just uncovered them) last night. My brain hurts.

But today wasn’t totally without success – I achieved a goal that I thought was completely out of reach.

I use my Apple Watch to keep track of my activity. The watch tracks three dimensions of activity – standing, exercising, and burning calories, and there’s a goal for each dimension. Reaching the goal in all three dimensions gives you a perfect day; reaching the goal for every day from Monday through Sunday gives you a perfect week.

I’ve owned an Apple Watch since July, 2015 – six and a half years, 341 weeks, or 2391 days (not that I’m counting). In that time, I’ve only had 51 perfect weeks, even though I hit each of my daily goals at least two-thirds of the time – consistency is hard!

So I was happy to open up the Fitness app today and see the “Perfect Month” award on the screen. I wonder if there’s a “Perfect Year” award?

Pandemic Journal, Day 685

I upgraded this blog to WordPress 5.9 today, and all of my non-ASCII characters (such as typographical apostrophes or quotes or accented letters) got corrupted in the process. I’ve run into this before and I thought I’d fixed it, but clearly I still have an issue.

I tried to make a brute force “fix” and it made the blog look OK, but when I try to edit a page, I see the weird characters again.

So I shall write no more this evening and attack the problem again tomorrow.

Pandemic Journal, Day 684

I’ve been using CellarTracker to track our wine inventory and make comments on the wines we drink. I’ve been happy with it – it’s a lot easier to use than my previous technique, a spreadsheet. And it’s nice to see comments from other users when we’re considering a new wine.

We keep the “ready” wines in a little wine refrigerator that holds 25 bottles; everything else is in the wine closet. When the refrigerator is empty, I use CellarTracker’s “ready to drink” report to decide what to move to the refrigerator. Unfortunately, the report tells me which wines to move, but not where to find them – that requires following a link to another report for each and every bottle. That’s a pain.

Instead, I’ve been exporting the data about all the wines in inventory to a spreadsheet, then running a small Python program that sorts them and creates a moving list. It’s easy, but a little awkward, because I have to log into the site and do the export from a browser.

Today was wine-moving day, and I decided I could simplify the process. My first thought was to figure out how to read the cookies from the browser and use them with the Python Requests module to get the data. I even found a module that reads the cookies – but it doesn’t work with Safari. There is a program that takes Safari’s binary cookies and creates a plain-text version, but I’d have to parse its output and this way lies madness.

If there were an API to CellarTracker’s data, life would be easy. It’s on their roadmap, and it’s been there for at least ten years. I don’t think it’s their top priority.

But searching for “CellarTracker API Python” led me to the CellarTracker package on GitHub which lets me get the inventory into a Python list. I replaced the code I had to parse the CSV file that I manually downloaded with a call to the package, and I was done!

The wine refrigerator is full again. Life is good.

Pandemic Journal, Day 683

We didn’t take any exciting trips today; instead, I had an exciting upgrade experience. I’d upgraded two of my Macs to Monterey with no significant problems, so I decided to attack the one which runs all of our home automation next.

The upgrade ran smoothly, but then I saw a warning telling me that the Indigo Server would not run in future versions of Mac OS. This didn’t surprise me – it still uses Python 2.7, which reached end-of-life several years ago, and I know Apple plans to remove it from the system. And I know the Indigo people are going to convert to Python 3.

But then I discovered that I couldn’t connect to the server from my phone, and I started to wonder if the future had already arrived. I started trying to research downgrading to Big Sur – it’s possible, but not easy. So I looked on the Indigo Forums and found two pinned posts that I really should have read before I upgraded.

One said that they had a version of Indigo Server that would run under Monterey. I installed that version, and all was well. For now.

The second post says that whatever they did to make Indigo Server work on Monterey doesn’t work in the beta of the next point release (12.3). I turned off auto-upgrades for the system, so I should be safe. For now.

In honor of the sunset of Python 2, I offer this photo of sunset on the Mekong River in Cambodia, three years ago today.

Pandemic Journal, Day 682

Our friend Kevin is a docent at Año Nuevo State Park and offers occasional after-hours guided walks there. We joined his walk this afternoon and had a great time. The weather was wonderful, the company was good, the elephant seals were everywhere, and the rest of the scenery was delightful, too! Even the traffic cooperated; we got to the park more than half-an-hour early.

We started near the Marine Education Center – in this case, the birds were a good omen.

We caught our first glimpse of an elephant seal just a few minutes into the walk, near Cove Beach.

We could see Año Nuevo Island in the distance; it had been used as a lighthouse and had housing on it, but it was abandoned decades ago. Access is now limited to park rangers and researchers.

We walked almost a mile to the Staging Area, where our last two companions joined us, and then we were in the Nature Preserve. A few minutes later, we encountered our first harem of elephant seals.

One of the park rangers met us and showed us a “gift” he’d been left by some of the researchers – a square foot of elephant seal blubber!

Even though the sands were filled with seals, there were birds wandering around, minding their own business.

Also researchers, doing an in-person count of the seals (they’re more accurate than drones, according to the ranger).

There’s lots of bird life just offshore, too.

The seals spray themselves with sand to keep cool (it was about 65F).

It’s mating season – these two seem to have enjoyed some afternoon delight.

The seal pups need their mothers’ milk, like this one.

The males fight – sometimes they injure or kill one another, but sometimes it just seems to be to make sure everyone knows who’s boss. These two spent a while battling one another before eventually swimming away.

Our intrepid researcher had walked all the way around the point to get to this batch of seals.

It was nearly time to go, but we stayed to watch the sun go down.

There weren’t many flowers on our route, but I did find this one near the Staging Area as we headed back to the parking area.

A couple of last photos on our way back to the car, and we were off.

Thanks, Kevin!

Pandemic Journal, Day 681

As I wrote last Friday, I wanted a second opinion about the problems we’ve been having with our heating system. Our trainer suggested the company he’d used, A-1 Heating and Cooling, and they sent out a tech today, Steve.

He spent a long time in the attic, and when he came down, he had pictures and options for us. He showed video of the furnace lighting up and belching flames – it’s called “rollout,” caused by too much gas, and it’s not a good thing. There’s a rollout safety switch that senses it and turns off the gas; a bit later, the furnace tries to light again and there’s less gas, so it works. But it’s not safe. He reduced the gas pressure temporarily to avoid rollout, but that’s not a real fix.

He also found condensation that had leaked out of poorly sealed PVC pipes and was accumulating.

The good news is that he didn’t propose replacing the furnace, just the gas valve and resealing the pipes – it’ll cost about 15% of what it would cost to replace the furnace. So we said “yes”.

I didn’t get a chance to take a walk today, so I have no new photos; instead, I found a photo I took on this date in 2019, when we were at the Angkor Thom Temple in Siem Riep, Cambodia. Our guide posed us so we could hold up one of the faces carved into the walls of the temple.

Pandemic Journal, Day 680

I was putting stuff away before our house cleaner’s visit this morning when Diane called me over to the patio door and showed me a dead squirrel on the deck. When our house cleaner arrived, I told her about the squirrel so she wouldn’t be surprised if she went outside, and then we left to run our normal Tuesday errands.

While we were out, I called County Vector Control; they told me that they didn’t deal with dead animals and suggested I call the City of San Jose’s Animal Control department (they serve Los Gatos, too). After fighting my way through their voice menus, I was connected to a dispatcher who told me that they didn’t deal with squirrels, and that all I had to do was wrap up the corpse and put it in the garbage.

When we got home, we left our masks on and donned gloves; then I got out the long-handled shovel and some plastic bags. The squirrel’s corpse was quite stiff, so it was easy to pick it up and put it in a bag, which Diane put in two more layers of bags; we tossed the masks and gloves into the outer bag, and put the whole thing in the garbage bin.

The day got brighter after that – Diane got her second hepatitis A shot at Costco, and as long as we were there, I picked up a discounted Microsoft 365 renewal, eight bottles of wine, and quite a bit more.

There was yet more shopping to be done, so we walked to Safeway to pick up some yogurt in smaller-than-Costco quantities. On the way home, we walked past these roses – as I said, the day got brighter as it went on!

I also received a “Certificate of Proficiency” from Toastmasters International for completing the “Engaging Humor” path with the speech I gave last night, so now I’m officially a proficient humorist, or maybe just a proficient engager. I’d put it on my résumé but I don’t have one any more.

Pandemic Journal, Day 679

The place I go for my allergy desensitization shots closes on Mondays from noon to 2. That’s never been a problem for me – I usually go after they reopen, but today I wanted a bigger block of time to work on my speech for tonight’s Storytellers meeting, so Diane and I hurried through lunch so I could get there before they took their break. I was in the car at 11:41, and Google told me that I should arrive a couple of minutes before noon.

Google was wrong. I pulled into the parking lot right at 12, and by the time I walked up to the door, it was locked. I could see a nurse sitting at the desk and looked imploringly at her; she opened the door and said that I’d have to come back after 2. I thought about claiming that my watch was running slow and asking for leniency, but I didn’t think that argument would work anymore – especially since she could see I was wearing an Apple watch.
The drive home was a lot faster, of course.

Pandemic Journal, Day 678

The Fitness app on my phone offers a monthly challenge. I didn’t realize it was there until about a year ago, but now I make a point of looking at it and trying to win. This month’s challenge is to walk 196.7 miles during the month (an average of 6.35 miles per day), so I’ve been extra diligent about taking long walks instead of just burning calories at the gym. So far, I have 171.1 miles logged.

On Sunday, we normally take a 3-mile walk as part of our trip to the Farmers’ Market, and we usually try for at least one more long walk during the day. Today was no exception, and it was a great day to be outside.

Our second walk was in search of light miso paste. Our usual supermarket hasn’t had any for several weeks, so we tried Nob Hill, a little over a mile from home. I was unsurprised to discover that they didn’t have it either. As we walked home empty-handed, Diane suddenly pointed at something off to my right – she’d seen a monarch butterfly crossing the street. That got me to stop looking at my phone, but not for long.

I switched to the Camera app and started hunting – I took lots of useless photos, but eventually I caught the butterfly with its wings open.

And then it flew away.

Pandemic Journal, Day 677

It was a quiet Shabbat.

I was asked to make sure the Zoom room was open for Torah Study, but our transitional Rabbi had gotten the necessary information and had it open before I logged in (though I still helped a bit in admitting people).

Shir Shabbat services had a typical level of technology problems, but that didn’t stop them from being enjoyable and meaningful.

And we took a few walks and made meals, as usual.

I did try to get another HVAC company to look at the furnace, but he’s a one-man shop in Sunnyvale and Los Gatos is out of his service area. It’s a shame, because he gets wonderful reviews (and he did make a suggestion for a possible zero-cost DIY fix that I will look at). I’ve got another couple of calls out for Monday.