TGIF?

Time flies when you're debugging. Or something.

Anywho...

Ventless (heat pump) dryer arrives today. I've pulled the old one away from the wall and unplugged it, per directions from Home Depot. They're supposed to arrive between 0730 (a half hour ago) and 1100. My guess is closer to lunch. We'll see.

Took another look at the Midwatch thing while my brain was still "fresh." It's "working," but it seems to work too much. I needed to put a conditional in front of the runCommand action, and I probably constructed that incorrectly, omitting parens around the test, if ($Text==""), which should say, "If the $Text attribute is empty is true," then it goes on to runCommand. If it's false, i.e. there's a summary already in there, it should just exit.

I corrected it in the note that was giving me problems (it kept adding the summaries), when I should have corrected it in the prototype. Fixed that, then it still kept happening. Went back and looked at yesterday's Midwatch, and the Edict in that entry had been edited in my earlier efforts and it was still wrong, so it ran and the little Automator app that runCommand runs always looks for the latest Midwatch entry and adds the summary, so I figured that's where the additional entries were coming from. Fixed that.

Went back a few days and verified all the other Midwatch entries had inherited the corrected code from the prototype Edict, and they had. So far, it's been behaving itself.

But I'm almost afraid to look at it again.

Yesterday it was raining, and by the time it stopped I was waiting for some guys to come by to install new hydraulic cylinders in the Murphy bed Mitzi had installed. They were supposed to be here by 1100 too, but got hung up and didn't show until 1430. So I didn't walk yesterday, though by mid-afternoon it was a beautiful day. So no excuse, I guess.

It's beautiful out there today too. But I know if I go I'll get to the midpoint of my walk where it'll take me 30 minutes to get back and they'll show up. Hopefully they'll be here before lunch and I'll just take a late walk.

In the meantime, I guess I should post this and then go look and see if Midwatch is behaving itself.

✍️ Reply by email

Originally posted at Nice Marmot 07:57 Friday, 29 March 2024

Wherein I Opine On Matters I Have Little Knowledge Of

I'm guessing we haven't priced in the risk of 100K-ton cargo vessels or tankers knocking down bridges into the cost of doing business.

If I were the All-Being, Master of Time, Space and Dimension, I'd issue a requirement that all vessels over a certain tonnage, transiting through channels passing beneath a bridge or power lines not only have a pilot aboard, but be escorted by a tug with sufficient power to wrestle the vessel away from any vital infrastructure in the event of a loss of power or rudder control. And such vessels travel at a reduced speed such that the mighty little tug can make its way between the unguided missile and a sudden economic downturn in time.

Engineers can compute the mass and velocity figures to determine what vessels would be required to observe the new regulations. Costs of dedicated tug escorts on standby 24x7 to be borne by shipping companies, passed along, as they inevitably are, to their customers.

Last time this happened was 44 years ago. What are the odds it's going to happen again anytime soon? Is it worth the risk? I'd say "Better safe than sorry," but what do I know?

✍️ Reply by email

Originally posted at Nice Marmot 12:51 Thursday, 28 March 2024

Captain’s Log: Victory Declared

I replaced the batteries in the kitchen radio this morning. I use Eneloop Pros (the black ones) in it and some of the other radios and sensors around here. I logged it, as I've been logging replacing the air filter on the air handler, and will on the air purifier (BlueAir Pure 211+), and the water filter in the fridge, which went south last night.

I decided I wanted to have a container that gathered all those "replace" notes so I could quickly see when the last time was I replaced something. I want to get a better idea of the longevity of the Eneloop Pros in certain applications, and then compare that with using the regular (white) Eneloops. Likewise with the water filter in the refrigerator. The fridge usually reports that it's time to change the filter, but it hasn't this time. We had an additional person in the household for the past two months, so perhaps the extra demand caused it to expire early.

Anyway, I needed to create an Agent to look for notes that contain the word "replace" in the $Name. That's a pretty safe query for a comprehensive list, as I usually begin the log entry "Replaced batteries in..." or "Replaced air filter..." The entry records the action I performed, so it's unlikely I'll ever make an entry that doesn't include that word.

So the agent query looks like this:

$Name.contains("Replace")

This returned four entries:

Replaced batteries in ARANet4

Replaced batteries in air quality sensor (indoors)

Replaced batteries in kitchen radio

Ordered Replacement Water Filters

I don't know why I used title case on that last entry, because I was surprised to see it. The .contains dot-operator is case-sensitive. If I had written "Ordered replacement water filters," I don't think it would have gathered it. So I changed the $Name in the original to sentence-case, and indeed it vanished from the results.

Just to exercise my Tinderbox-fu, I changed the dot-operator to .icontains (case-insensitive), and sure enough, the sentence-case entry returned.

I'll leave it case-insensitive for now.

Just gonna high-five myself and go take a nap.

✍️ Reply by email

Originally posted at Nice Marmot 11:26 Thursday, 28 March 2024

Doing Something

I've been pretty disengaged on local issues, apart from the occasional letter to the editor. Running for state representative pretty much exhausted whatever stores of public service desire I might have had. Made me more of a misanthrope than I already was.

But it's been a few years now, and my encounter with the North Florida Land Trust kind of sparked something.

I subscribe to an email list from the Jacksonville Climate Coalition, and I read about a meeting that was coming up called the Resilient First Coast collaborative. I didn't find out much about it, but I put it on the calendar and attended it yesterday.

It takes a lot to get me out of the house these days.

It was well attended, about thirty-some folks in a large conference room. Mostly government and public agency reps, a couple of non-profits. The chair of the Northeast Florida Green Chamber policy committee was there, and I'm a member of that committee.

I spoke up a couple of times, suggesting that they might seek more engagement from non-profits that serve vulnerable populations, in terms of any insights they may have regarding resiliency. Although there were a couple of reps of non-profits in the audience, they were not directly serving vulnerable populations like Feeding Northeast Florida, and HabiJax (Habitat for Humanity local chapter). I got the impression it might have been a new idea.

The other thing I mentioned, looking through the definitions section of the draft document they were circulating, was the absence of logistics as a key term. We learned from the pandemic that we ought to have a thorough understanding of the logistics supply chains that serve us, so we can think about or anticipate disruptions due to climate or other disasters. Toilet paper during the early part of the pandemic came to mind. I suggested they might focus on food, fuel and medicine.

I don't know how helpful that was. Logistics is very complicated, and not a great deal of it is under any one entity's control. But I think any understanding of "vulnerability" ought to include an appreciation of the "flows" of resources into the region.

I told one of their reps I'd send them an email.

My cognitive dissonance was high. These are all nice people. Public spirited. Aware there's an issue. Wanting to do something.

But there's no sense of urgency. Little in the way of leadership. Here's their web site. There are no years on those dates, so I have no idea if this is current. I'll ask. (Oh, here's the actual web site.)

Oh well. You do your best, and the rest isn't up to you.

At least it got me out of the house.

✍️ Reply by email

Originally posted at Nice Marmot 07:45 Thursday, 28 March 2024

Sorted

I think.

Went back to the Automator application, which sole function was to populate the $Text attribute with a summary of the next three days' Calendar events.

I'm getting better, or at least more familiar, with Automator. I figured out how to set the value of a text variable from an input.

I learned earlier how to pass an Automator variable to an AppleScript in an Automator workflow.

So I did the whole thing in Automator, which means I don't need the function at all.

The prototype p_Day contains the edict

runCommand("open -a MidwatchEntry");

The AppleScript in the Automator application MidwatchEntry now creates the entire Midwatch entry. It doesn't just try to paste the contents of the clipboard into the $Text attribute of the Midwatch entry created by the function fMakeMidwatch, which is now defunct. It's the same AppleScript that creates entries for Mail items, except it doesn't query for the $Name and $Text, instead creating them from variables defined in the workflow.

But...

As I was writing this, Tinderbox blinked. I have four documents open, and that kind of suggested one of them had just done something, and I suspected I knew which one.

So, putting an Edict in p_Day to run MidwatchEntry wasn't a good idea. Scratch the above.

It was fine running strictly as Action code, Tinderbox wouldn't create another Midwatch note on its own. But AppleScript will.

(Hilarity ensued earlier as multiple copies of the Midwatch entry kept getting generated. Every time I'd delete one or two, another one would appear. Insert Sorcerer's Apprentice reference here. Every "touch" of deleting one stimulated the creation of another one. Oy.)

I was going to try and figure out a conditional, but then I had another thought. (It's morning and though I didn't sleep well, I think better.)

The OnAdd action will run precisely once. So I added the runCommand action to the onAdd attribute of p_Month. p_Month creates each new day, (And I'm about to learn if I'm an April fool.) and as it adds the new day it will run MidwatchEntry, which will find that new day and create its namesake in it with the calendar event summary, and then sit quietly until the next time it's called, roughly 24 hours later, not every few hours or every time some change occurs to the document.

At least, I hope so.

I've been wrong before.

So wrong, so many times before.

✍️ Reply by email

Originally posted at Nice Marmot 07:02 Thursday, 28 March 2024

That Was a Waste

Still running. Can't figure out why. Thought it might be because I had some other action calling it somewhere, but I can't find it.

I'll look into not using the clipboard and just populating the $Text attribute with a variable from Automator. It's possible I've done something incorrectly in the conditional if statement.

The beat goes on...

✍️ Reply by email

Originally posted at Nice Marmot 06:07 Thursday, 28 March 2024

Insomnia Coding

It's 0300. I had to get up to use the head and when I went back to bed I realized it was easy to make that Midwatch Edict run once. Same way we don't let months keep making days when their time is over.

if $Text=="";

{

runCommand("open -a MidwatchEntry");

}

That had better work.

I'm going back to bed.

I'll check the clipboard in a few hours and know if it did.

(It's relatively nice out, and the window in my office is open. I can hear a train going by on the tracks next to Phillips Highway, not far from here. I just hear the whistle when it crosses an intersection, and maybe faintly the rumble. Pretty cool.)

✍️ Reply by email

Originally posted at Nice Marmot 03:02 Thursday, 28 March 2024

Further to the Forefunction

Got a nice note from Mark Anderson about the preceding post. Some insights on functions that I need to explore.

He wondered how aTbRef might be improved to make it less "intimidating," noting that it is intended as a reference and not a tutorial, though there are many examples.

I don't think there's any need to change anything. As a reference, it's invaluable. What makes it intimidating is that it demands close reading, and that is sometimes challenging from a computer screen. Nevertheless, it is possible, as I've managed to figure out how to create the Midwatch entry using a function, and not local variables within each Day container.

This requires sending an argument to the function, the bit of data from the calling note that the function needs to do its thing. In this case, I have to pass the $Path of the current Day container, so that the Create action has an entire path to make the new note unique within the file.

I write this now, after having successfully tested the code. It looks like this:

function fMakeMidwatch(iThisPath)

{

var:string vMidwatch;

vMidwatch=iThisPath+"/Midwatch";

create(vMidwatch);

};

The p_Day prototype includes an Edict that simply says:

fMakeMidwatch($Path);

No sandbox variable, $MyString, to stick around like “data dust,” as Michael Becker calls it. So a new day is created, the Edict runs, a new Midwatch entry is created, and an Edict in it launches a little app that creates the $Text content of the entry.

After just spending the better part of an hour trying to figure out why it wouldn’t work (It’s evening. My brain is tired.), when it was all because it was missing a closing semi-colon, I think the list of tips should be as follows:

1.Always check for semi-colons

2. Always include parentheses, even if no arguments

3. Always define your variables

4. Don't forget to check for the closing semi-colon (outside the curly-brace).

I've got one last refinement to make to the Midwatch entry. I need to figure out how to make the Edict in the Midwatch entry run just once and then turn itself off. As you may recall, it uses the runCommand action to launch a little Automator app that queries the calendar for the next three days' events, places them on the clipboard, and then a brief AppleScript places the contents of the clipboard into the $Text of the Midwatch entry.

As it happens now, my clipboard is periodically populated with the contents of the next three days' events, which can come as a surprise in the midst of copying and pasting some other text. Fortunately, I have a clipboard history, so I can recover whatever it was I meant to paste.

✍️ Reply by email

Originally posted at Nice Marmot 19:58 Wednesday, 27 March 2024

Captain’s Log: Function Junction

During the Tinderbox meetup when I demo'ed Captain's Log to that point, Michael Becker asked why I didn't use a function to create the various elements of the log, instead relying on "sandbox variables" ($MyString, $MyDate, etc.). The issue arises that those "$My..." sandbox variables are actually attributes that remain with the note.

They'll change every day with each month, so a given month container will only hold one day's sandbox variables, twelve notes' worth in a year, for however many years the log runs. But every day container creates a Midwatch entry using local variables, and there are 365 of those a year (366 for leap years) for however many years the log runs. Not a huge amount of data, but it's unnecessary if you use...functions.

Based on Michael's comments, I looked at using functions to create the Midwatch entry. I found it somewhat confusing and kept finding reasons to put it off. But after yesterday's success with the Agents, I figured I'd take another stab at functions. And since my mind works best first thing in the morning, that's what I've been doing (after my daily review) this morning.

I thought I'd try something simple first, and create a function that created a new day container in a month container. To keep it even simpler, I opened a new Tinderbox document, Function Test, to learn how to create one before I tried it in the log.

So in the new document I created a top level note and just called it Test Note Sandbox Variables (TNSV), and copied the $Edict from the p_Month container in Captain's log into the TNSV $Edict. Hit, "Run Now" in the Edict pane of the Action Inspector and it created a new note, "Wednesday, March 27, 2024" as expected.

This will be important in a moment.

I created a new note called Test Note With Function, and its $Edict would call whatever function I came up with instead of just creating a note with today's date as its name using sandbox variables.

So then I read the Help file in Functions, and the aTbRef main entry on Functions. A little intimidating.

First thing I had to do wast turn on the Library folder. Now, this isn't strictly mandatory, a function will run from anywhere it's created. But I'm trying to be a good little coder and do it right the first time.

What wasn't clear from the documentation, and still isn't, is whether the $Name of the function note is semantically relevant. I think it is, but you kind of define the function in the $Text of the note anyway, so I don't know if Tinderbox scans the $Text attributes of all notes looking for the keyword function, or if it looks at the $Name of the note to locate the function. In any event, I gave the $Name of the function note the name of the function I was defining, "MakeDay." (Functions should be named with verbs, as they do something.)

The first thing I tried, because I have to see what doesn't work to understand the documentation, was to just copy the $Edict into the function curly braces. (That probably doesn't make sense, but trust me, I seem to have to get things wrong in order to understand how to get them right.)

That looked like this:

function fMakeDay

{

$MyDate="today";

$MyString=$MyDate.format("W, L");

create($MyString);

}

Didn't work.

So I went back to aTbRef and read some more about functions. The first thing I noticed is that parentheses are always required. So the first line is wrong and should be function fMakeDay() with parentheses.

Didn't work.

Read some more at aTbRef. Function doesn't use arguments here. Name should be ok. I think it's defined correctly.

Then I got to variables.

Ok, I guess this makes sense. Maybe sandbox variables (My...) are inappropriate here, and it looks like you have to define your variables at the beginning like you do in Pascal. (I actually recall hearing about this in a meet-up where they introduced functions. But I didn't recall it until after this.)

So then I tried this:

function fMakeDay()

{

var:date vNow = date("today");

var:string vDay;

vDay=vNow.format("W, L");

create(vDay);

}

That didn't work either, first because I'd omitted the semi-colons after defining each variable. Duh.

Fixed that. Then something happened. I'd hit Run Now in the $Edict pane of the Test Note With Function, and something would happen, a new note would appear without a name and then disappear instantly.

Recall that TNSV, the first note, created a note named "Wednesday, March 27, 2024."

Because this is the first thing in the morning and my brain is working a peak efficiency, (It's all downhill from here.) I remembered that Tinderbox won't create two notes with the same name, unless you specify different paths.

I didn't want to screw around with paths for this simple test, so I tried this:

function fMakeDay()

{

var:date vNow = date("today");

var:string vDay;

vDay="Test"+vNow.format("W, L");

create(vDay);

}

And that worked!

And this blog post is just me documenting this to myself, because I'll try to do something in the afternoon and forget why this worked and the other thing didn't.

So, a few tips on functions:

1. Always include parentheses

2. Always define your variables

3. Don't forget to check for semi-colons.

Since a Library note (or any note, I guess) containing a function can contain more than one function, I guess I've just figured out that the $Name of the note isn't semantically relevant with regard to calling the function.

I don't know that I'm going to be creating a lot of functions, now that I kind of know how to, but I think I'll stick with one function per note, and give the $Name of the note the name of the function, just so I can keep things straight.

Time for a walk.

✍️ Reply by email

Originally posted at Nice Marmot 06:19 Wednesday, 27 March 2024

All Clear On the Epidermis

Apart from the usual crap your skin starts sprouting when you live past your "best by" date. She did find the mole on the bottom of my foot interesting. They all do. It's been there for decades, but apparently it could be a ticking time bomb. I'm supposed to watch it carefully.

It's on the bottom of my foot! But ok. I'll try.

Also had a cyst removed from my face. Just noticed it this morning, shaving for this very appointment. I thought it was an ingrown hair and tried to remove it. Failed. She said it was a blackhead, which was faintly offensive.

Turns out it was neither, and required a real effort to extract. She worried she was hurting me. It did hurt, but I didn't say anything. I'm just glad it's out. I guess the hole in my face will fill in. (Kidding. It's a small hole. Not like a crater or anything.)

TMI? Probably. Deal with it.

✍️ Reply by email

Originally posted at Nice Marmot 15:14 Tuesday, 26 March 2024

The Other Thing

In lieu of a this and that post.

I've got to run to the dermatologist in about 45 minutes. It's that indeterminate time when I feel like I can't do anything except wait for the moment when I have to leave. I should read a book. I feel like I'm going to a uniform inspection, except it's like in a bad dream where I'm not wearing my uniform.

Oy.

Anyway, saw a post about plug-in hybrids likely to become a larger part of manufacturers' offerings in order to meet climate goals while stretching out the transition to all-EV products. Concern was that many people won't "plug in" their plug-in hybrid electric vehicle.

I think they will. If it has decent range, 30 miles or more, it just makes economic sense, even if they don't want to spring for the cost of a Level 2 charger in the garage (essentially, having and electrician install a 220v outlet). I've seen some PHEVs with battery ranges around 20 miles, and it'd still make sense to plug those in, but maybe not to install a Level 2 charger.

But they have data and I have my own experience. Maybe they're right. I just wish we could become less car-dependent, and get over our fixation with giant SUVs and pickup trucks. But how are you going to survive the apocalypse without your monster truck?

I suspect Jacksonville will see a significant uptick in shipping if Baltimore harbor is closed for some weeks, clearing bridge wreckage from the channel. Makes you wonder about the safety features of these giant container ships if they can lose power and steering like that in a constrained channel. What happened to that ship that blocked the Suez Canal? Was it wind? I should google it. The Dames Point Bridge is lovely, I'd hate to think what would happen if one of those monsters struck it.

In the navy, when we were in "restricted maneuvering," we had all redundant systems online so a failure in any one piece of equipment wouldn't hazard the ship. (Or the channel. Or any bridges. Not that we still didn't run aground now and then. Looking at you, PORT ROYAL.)

Glad to see Boeing cleaning house. But I suspect it'll be years, if not decades, before they can recover their lost reputation.

Make meaning or make money? Again and again, we choose to make money. It'll be the end of us.

What's the "meaning of life"? To make money, I guess.

Well, I guess I'd better go.

✍️ Reply by email

Originally posted at Nice Marmot 12:47 Tuesday, 26 March 2024

Never Quote Your Booleans

They're unreliable that way.

Mark Anderson of aTbRef wrote to say that I should omit the quotation marks (straight quotation marks, I should add) around boolean values.

Made the change in the log and in the preceding post.

✍️ Reply by email

Originally posted at Nice Marmot 12:44 Tuesday, 26 March 2024

Captain’s Log Update

Got around to creating the Agents to collect entries that have not been reviewed, or that I should not forget.

The "Don't Forget" agent was straightforward. Just query for the $DontForget boolean.

$DontForget=="true";

The Not Reviewed agent was trickier, because it would include all notes that didn't have $Reviewed checked. As I learned to my chagrin.

At first, I thought I could just make $Reviewed checked in the Prototypes for $Year, $Month and $Day, but there are a lot of other notes, and more that will be added, which won't have it checked.

So I thought about it a little bit. Thinking is hard, so a little bit is about all I can muster.

I just want to check whether or not log entries have been reviewed. All log entries have the prototype $p_Entry, where $Reviewed is a Displayed Attribute (All notes have all attributes at all times, just most of them have "empty" values.) So the Agent query should be a logical "and": Is p_Entry and unreviewed.

That looks like this:

($Prototype=="p_Entry" & $Reviewed!="true");

Which was trickier to write than it looks. But it works. And now items that aren't in the category of "don't forget about this," but I'm not finished with them either, can be left unreviewed and they won't disappear into history.

✍️ Reply by email

Originally posted at Nice Marmot 10:25 Tuesday, 26 March 2024

Unbelievable

I guess I should have read the news before checking email.

Video of the event.

✍️ Reply by email

Originally posted at Nice Marmot 06:47 Tuesday, 26 March 2024

AI Eats the World

I don't know what app developers are going to do in a few years. Maybe even Apple is doomed because of AI. Who needs "an app for that," when you can just tell Siri, or whatever, to do anything you can imagine. Apple's talking to Google about AI because Apple was so focused on "on device" privacy that they realize they don't have the resources for the kind of AI the cloud can deliver.

It may seem unlikely, and it'll probably suck at first, but it'll get better and before I'm dead, unless AI kills me, we'll likely have cloud-based AI managing all of our devices and media, and burning through what's left of our carbon budget in the process.

I guess Affinity probably saw that as clearly as anyone else and decided to cash in while they cold.

AI will become our "wallfacers." We won't have a clue why they're doing what they're doing, but we'll do what they tell us to do, because we can't figure out how to solve our own problems.

An AI will compute and execute swarm-based drone attacks. An AI will compute and execute swarm-based drone attack defenses. An AI will compute and execute a water resource sharing protocol for the Colorado River watershed, because we can't figure it out for ourselves. An AI will compute and distribute all the relevant "news" we need to know. An AI will compute and generate all of our entertainment.

An AI will monitor our health and compute and execute medical interventions.

It's why I don't read science fiction anymore. The future is really going to really suck.

But it won't last long. At least, not for most of us. Maybe the Andreeson-type techbro "optimists" can have an AI design a "lifeboat" for civilization where all the billionaires can hide, with suitably attractive women, while the rest of humanity undergoes the "Great Reset."

Ugh. What a depressing morning.

Just have to keep in mind that all we have are moments to live, and nobody gets out of here alive anyway.

✍️ Reply by email

Originally posted at Nice Marmot 06:19 Tuesday, 26 March 2024

This Sucks

Affinity has been acquired by Canva.

That means they will eventually become a subscription model. Which the FAQ essentially states by not stating that at all. Subscription isn't horrible, but it does suck. And it's going to become "cloud based," which feels like Adobe's "creative cloud" bullshit. And, inevitably, it is going to be changed by its corporate masters in ways that it wouldn't have if it had remained independent.

I never used their desktop publishing or vector drawing apps, though I owned them, so maybe it's not such a huge deal for me. I can use Acorn or Photomator. There are other choices.

But I liked Affinity because it seemed like they were a small shop doing great products instead of a corporate greed-machine. I guess everyone wants their payday.

✍️ Reply by email

Originally posted at Nice Marmot 06:06 Tuesday, 26 March 2024

This and That

The black E-PL7 arrived today, and it's beautiful. Cleaned up well. A couple of minor scratches on the screen, but you have to look for them. Once I get my office cleaned up and squared away I'll do some glamor shots. Maybe.

Captain's Log continues to be useful, and I'm adding "features," as necessary. Although I don't wish to replicate the functionality of Reminders, since that is available on my iPhone and iPad, I decided I did want something in the Log to pull together entries that may require a revisit. So I created a "DontForget" boolean and made it a Displayed Attribute. I'll create a Don't Forget agent and open it in another tab. Tabs are another feature of Tinderbox I'm beginning to make use of more.

This came up in my NASA Hubble RSS feed. Click through to the download. Makes for nice phone or tablet wallpaper.

Got an interesting email from the Cornell Lab of Ornithology with a link to this video about how owls turn their heads. I think I could watch owl videos all day long.

✍️ Reply by email

Originally posted at Nice Marmot 16:12 Monday, 25 March 2024

Found It

Shot of the Magic Beach Hotel from October 2023.

Okay, I wasn't hallucinating. It was on the SSD. I guess I didn't think it was good enough to get added to the Photos library, which is a pretty low bar. But it's a pretty cool little place. It even came up last month at the Photography Club meeting, because they're doing a lot of construction down there and much of the "old Florida" charm is being renovated into "modern" sterility. Magic Beach is supposedly safe.

For now.

✍️ Reply by email

Originally posted at Nice Marmot 13:07 Monday, 25 March 2024

3 Body Problem

This hotel is in Vilano Beach, Florida, adjacent to St. Augustine. Appeared in the Netflix series 3 Body Problem

Mitzi and I stayed in Vilano Beach last October for our anniversary, and I would have sworn I took pictures of this hotel. But I did take a picture of the TV screen last night and texted it to Mitzi in New York.

That hotel is in Vilano Beach, just down the road from here. We didn't stay at that place, we stayed at the newly-opened Hyatt Place. But we did notice it, and I thought I shot the neon rabbits, but nothing in Photos. Maybe they're on the SSD I use.

Anyway, surprised I hadn't seen anything in local media about Netflix filming locally. Kinda cool.

Finished the series yesterday. I liked it. Would like to see it continue.

I decided not to read the trilogy. I have other sf books lying around here I haven't read. I seem to be more interested in non-fiction history than imagined futures these days.

✍️ Reply by email

Originally posted at Nice Marmot 12:54 Monday, 25 March 2024

Another Point of View

Although I appreciate John P. Weiss' take on farm life, I think this paragraph deserves a comment:

No doubt, the farmers of the past had difficult lives, and we mustn’t romanticize every facet of their agrarian world. But they had a deep sense of purpose and pride in their work. Also, their physical labor provided exercise, which helps with sound sleep and overall health.

My grandfather was a farmer, and my mom was a farmer's daughter. I spent some time on that farm as a kid. Shoveling shit, pitching silage, baling hay, you know, "farm work."

I would not go so far as to say that farm labor helps with sound sleep and overall health. Grampa died at age 78, Gramma was 72. Grampa died in his sleep, Gramma died of complications from a bleeding ulcer. Neither of them was especially "healthy" at the end. Mom is 90 now, her brothers that farmed died in their 70s.

As to how much "meaning" they felt in their lives, I can't say. We never talked about it. They liked to watch TV, and before that, listen to the radio. Grampa had a CB radio that he liked to use to talk to other farmers in the area. I don't recall any philosophical conversations. Mostly they talked about the kinds of stuff people talk about, prices, the weather, sick animals, their health, stuff like that.

Farm life is hard. It's easier today, with electricity and modern equipment. But if we think we can abandon all of modernity and enjoy an idyllic, "meaningful" existence on subsistence farming, we're deluding ourselves.

Growing food, or milking cows wasn't about service, it was about making a living. Survival. "Meaning" is a subject that requires cognitive surplus. Time and energy for thought, two commodities in short supply when you're a farmer, at least in the era before electricity.

We gave the responsibility for explaining "meaning" to the clergy. They had the cognitive surplus to think about it. And farmers went to church.

Anyway, I'm in favor of "quiet living." I'm in favor of turning away from certain aspects of modernity. But I have no illusions about the appeal of farm life, absent the advantages of modernity.

Not to take away from John's post, and the value of giving it a read.

Because it can make you think.

✍️ Reply by email

Originally posted at Nice Marmot 07:15 Sunday, 24 March 2024

Good Reading

In a "further to the foregoing" vein, I starred two posts in NetNewsWire to commend to your attention. These are examples of the kinds of thoughtful writing that can be done more readily in blog format. Yeah, I suppose you could have broken them up and posted them as "threads," but why?

Anyway, John P. Weiss isn't especially prolific, but he posts on the regular and seldom disappoints. This is worth a read. Especially vis-a-vis public figures on "X."

Manuel Moreale offers a take on the Justice Department suit against Apple, which I think is spot on.

Blogs are best.

✍️ Reply by email

Originally posted at Nice Marmot 06:51 Sunday, 24 March 2024

Blog is Best

It's not that you can't do thoughtful, meaningful posts in short-form social media. You probably can. But it's not a conducive format. And the things it is conducive for, reactive, performative, are invariably toxic.

There was some local news I heard last week on the Friday week in review on the local public radio station WJCT, that a couple of Jacksonville City Council members got into a little back-and-forth on Twitter, er, X and it got vulgar.

And the former mayor of Jacksonville, Lenny Curry, one of the leading figures behind the attempted sale of JEA, evidently posted a maternal vulgarity in response to an interlocutor who may have asked a provocative question regarding the conviction of the former CEO of JEA, and friend of Lenny's, Aaron Zahn.

He deleted the tweet, but not before someone screen-capped it and turned it into a Mother's Day meme. (I haven't seen it, this was just mentioned on the show.)

I felt a brief twinge of regret that I wasn't still on Twitter, er, X, so I could have piled on, er, added to the conversation. But I got over it.

If you're kind of morally compromised, if you've wandered pretty far from the path of righteousness, I'm pretty sure you're not going to find your way back on Twitter.

X.

Whatever.

And if you are one of the "good guys," I think it's likely that you'll find your stores of virtue and righteousness will be diminished by participation there, if you're not very careful.

Wrestling with pigs and all that.

✍️ Reply by email

Originally posted at Nice Marmot 06:30 Sunday, 24 March 2024

Up and at ‘em

Slept pretty well last night. Some dreams related to watching 3 Body Problem, but not nightmares. Can't recall them now. Got about halfway through the 4K HDR version of Aliens before I gave up and went to bed.

I'd read the first book in the 3 Body Problem several yeas ago, 2020 maybe? When I was a kid, I could recall every part of a science fiction book I'd read. Not so much anymore. I gather they've made significant changes to aspects of the story. I didn't recall the Panama Canal incident until just before it was revealed. I've lost a step or three, because who could forget that?

I've got two episodes left, and I like it overall. I'll finish it tonight.

Aliens looks good in 4K HDR. I don't think it's revelatory. Sigourney Weaver's skin was amazing. I mean, that's the kind of thing you notice at these resolutions. It's also strange the things you think about after seeing a movie many times, and being a much older viewer now.

Like, Gorman's got maybe a platoon of marines? Backup or reinforcements are months away at best. They encounter this significant "xenomorph" infrastructure at the base of the atmosphere processing plant where all the colonists are apparently located. And they decide to just go in anyway? Then keep going when they realize they can't fire their rifles? Then keep going when they encounter the first dead colonists?

After Ripley's report of what they're likely to encounter?

After seeing the stuff in the med lab? After seeing the colonists put up a fight?

Cameron made Gorman monumentally stupid. Which, I guess could be forgiven. But Bishop? "By omission of action," can't harm humans? Seems like he might have spoken up and suggested they retreat to the ship and report their findings to headquarters and await reinforcements.

I can recall how much l loved that movie as a 29-year-old lieutenant. So I guess I should cut Gorman some slack. But Bishop? Wow. That movie just got a whole lot creepier.

✍️ Reply by email

Originally posted at Nice Marmot 06:06 Sunday, 24 March 2024

Partial Rainbow

Fragments of a rainbow interrupted by clouds rising from a suburban landscape.

Not expecting much, I carried the silver E-PL7 with the 45mm/f1.8 mounted just for something different. Rainbow was a pleasant surprise.

✍️ Reply by email

Originally posted at Nice Marmot 09:01 Saturday, 23 March 2024

Spice of Life

The E-PL7 is inbound and should be here on Monday. Caitie was here the other day, and we were looking at Canon mirrorless cameras. She does some semi-professional work as an adjunct to her salon work. She's had a couple of product promotion shoots for, I think, an advertising firm. They don't pay much, but she enjoys the work.

I'd given her my E-M10 Mk2 over a year ago and encouraged her to shoot with it and find out what it can do. But film, and then medium format film and now full-frame digital have all turned her head and she's never, to my knowledge, done very much with little Oly. I offered to buy it back from her to help pay for a Canon body, but she said she'd return it to me.

I don't need the 10, but I'd like to have it again. I don't really have shelf space for it, but I can make room if I have to.

The biggest thing I'm missing in my photographic endeavors is subjects. And that's mostly because I'm kind of lazy. Well, not "kind of," I'm just lazy. If we go out somewhere, I bring a camera because there'll be something different to shoot. But I don't go out just to shoot. I should probably change that.

When I was single, I went out a lot more socially. It's important to add that we didn't have COVID back then either. I'd much rather risk second-hand smoke at trivia than COVID, though I suppose a case could be made that they might be equally risky. And I lived in a place that offered a lot of interesting subjects. Here I live in an "interest" desert. A sterile void of suburban conformity. I can get out to the kayak launch point and do some wetlands and birds and what have you, and I should do that more often, but I like shooting other stuff too.

I guess I'm just talking to myself, trying to convince myself to get out of this neighborhood and bring a camera. The thing is, you have to go pretty far, as Nocatee is pretty much entirely devoid of interest, unless you're looking to shoot real estate marketing brochures. I should probably look for the absurdity. I usually like to look for wear, or decay, something that indicates the passage of time, which is, I suppose, a kind of story-telling. There is a lot of absurdity here. But that's in your face everywhere these days. Not sure I need to capture it in images.

Anyway, in the car in a little while to bring Mitzi and Judy to the airport. Mitzi is accompanying Judy back to New York because Judy has some understandable anxiety at the moment. They're going to wheel her through the airport to avoid the risk of a tumble. She's mobile again, but it's likely a few more weeks before her pelvis is completely healed, and it'll never be especially durable anyway.

Mitzi will stay with Judy for a week, and so I'll have the car and I should probably take advantage of that to get out of here and do something different.

We'll see. I'd say I'm a "creature of habit," and there is something to that. But mostly I think I'm just lazy.

✍️ Reply by email

Originally posted at Nice Marmot 07:23 Saturday, 23 March 2024