Post #2126: Oh, the price of gold is rising out of sight, III

 

Gold blew through $3100 $3200 $3300 / ounce this morning.

 

As noted in prior posts, an increase in the price of gold is never a good thing.

By my reckoning, we’re now a couple of hundred dollars off the all-time high, in the real (inflation-adjusted) price of gold, in dollars.

My interpretation is that three months of Trumpism managed to do for Russia what 15 years of agitation by the BRICS countries could not.

By reneging on our international commitments, turning on our former allies, aligning ourselves with Russia, and giving an absolutely ignorant crew of knuckleheads complete control over tariffs …

… I do believe we’ve managed to destroy the dollar’s role as the key international currency AND cripple much of our industrial capacity.  In one fell swoop.

Restated, by setting large and rapidly changing tariffs, with no policy goal beyond making The Leader happy, we’ve slit our own throats.

It’s just going to take a few months for that to be completely obvious.

Putin’s ROI is beyond calculation.

Post #2123: Oh, oh, otolith.

 

Yesterday morning I sat up to get out of bed and was dizzy.  Sitting in bed.

I thought, “That’s new”, and then “That’s not good”.

Right on both counts.


To cut to the …

Vertigo.  An inner-ear problem.  Benign paroxysmal positional vertigo (BPPV).  When in doubt, see what the Mayo Clinic says.  And Cleveland Clinic.

You have rocks in your ear.  Little tiny bits of calcium carbonate.  They help form your innate accelerometers.  But sometimes, they break off and bits of them travel.  Particularly if you are old.

If they end up in your circular canals — where your sense of balance hangs out — then, in various ways, the stuff hits the fan, balance-wise.  Anything from instability when standing, to full-out puking-as-the-room-spins.

But, per Mayo, above, one can use the Epley procedure to try to move the offending rock chips back to where they belong.  Or, at least, to where they’ll do no harm.  Or something.


The Epley procedure.

The Epley looks benign enough.  Turn your head to one side, lie down, turn head and torso in the other direction, sit back up.  Three of that, and you’re done.

Weirdly, there appear to be at least two reputable versions of the Epley procedure.  I would characterize one of them as emphasizing speed at some phases of the operation (the Cleveland Clinic version), versus a go-slow, wait for the symptoms to clear, then hold-each-pose-for-half-a-minute method (which is how I read the Mayo version).  Citations above.

As the potential puke-er and puke-ee, I chose the Cleveland Clinic get-this-sucker-over-with version of the Epley.  Even with that, I aborted one attempt. Couldn’t follow through on it.  Had to sit up and hope it went away.

What they don’t tell you is that the first maneuver — tilting your head that way, and lying flat — that’s designed to set this whole vertigo thing off, about as hard as it can be set off.  In my case, right on up to — but not passing, thanks to aborting one of the attempts — the puke level.

For me, at some point, doing the Epley maneuver was very much like stifling a gag reflex.  At least, doing it the second and third times was.  Doing it the first, time, you don’t know quite what’s coming.  But you are intentionally causing something solid to strike the extremely sensitive nerve cells in your circular canals — a place where only fluids should abide.  The nerve cells in your inner ear REALLY don’t like that, and they let you know accordingly.

I made it through the recommended three Epleys, start to finish, but I was nauseated and sweating heavily for the next half-hour.

I would not have voluntarily undertaken a fourth.


Which ear/side is the problem?

Oh, golly, you’ll know.  Put some pillows on your bed, turn your head 45 degrees to one side, and lay back on your pillows.  (Essentially, do a half-baked version of the first step of the Epley procedure).  If the problem is in that downward-facing ear, this should trigger it.


A key risk factor

I saw a doctor about it today, and she mentioned that a visit to the dentist is a risk factor for this happening.  Something about the lie-back-and-say-aah position opens up a path for these to little calcium carbonate chips to escape into the circular canals.

I further note that one of the Epley procedure writeups emphasized the importance of hyperextending the neck, for bringing the head at least to fully flat, and beyond flat (hanging off the edge of the bed),within reason, if possible.

Finally, I note that I’ve recently taken to lying down completely flat, in bed, for extended periods.  Basically, I’ve been trying to sleep on my back, without a pillow.  And the morning when this started, I sat up quickly, directly from that position.

And was dizzy.  From an escaped otolith.

Coincidence?  I think not.

I think the moral of the story for me is don’t do that.  Don’t sleep flat on your back, with no pillow, and if you do, don’t go from that position to fully upright in one motion.


R-E-L-I-E-F

Some people get what is described as “immediate relief” from the problem, after doing a set of three Epleys.  It goes away, just like that.

No such luck here.

But the gross symptoms finally disappeared that night.  Sometime in the middle of the night, I stopped getting dizzy if I turned onto my right side.

Once you get comfortable with this, it’s pretty weird.  For example, there’s about a three-second delay between turning over, and getting dizzy.  And then the episode of dizziness stops.  No idea why there’s that little delay, no idea why it stops, but plausibly both are related to the movement of my wandering otolith.

My balance still doesn’t feel A-1.

So what else is new.


Conclusion

A reminder of frailty is never fun.

I’m trying to take renewed joy in (e.g.) being able to walk around.

But, whatever happens, I just have to live with it.

That’s a fact of life.  Doubly so with age.

Post #2122: The Turing Test Inverted, a.k.a. the Truth-in-AI Act of 2025

 

Twenty years ago, only evil genius super-villains used AI.

I know this from watching The Incredibles (2004) last night.

And when an AI spoke, it sounded all robotic ‘n’ stuff.

This morning, I woke up and decided that wouldn’t be a bad thing, here in 2025.

Not the super-villain part.  We have enough of that going on already.

I’m talking about requiring spoken-language output of AIs to sound “robotic”.  And so require that AI spoken output be easily recognizable to humans as machine-generated speech.

Hence, the need for a Truth-in-AI Act.


Truth-in and commercial speech

Many laws bar deception in various forms of commercial speech.  Truth-in-advertising laws.  Truth-in-lending laws.

Materially mis-representing something you are selling is already against the law.

The Truth-in-AI law would just be another layer of that.  It would say that you can’t send me AI-generated speech without making it clear that it is AI-generated speech.


Cue tape

 

By Birchflow – Own work, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=146074295

 

I’m old enough to know why the AI’s speech is so disjointed in The Incredibles.

It harks back to the days when the only way to create fake audio of a person’s voice was to cut-and-paste audio tape recordings of that voice.   Literally snip and tape together carefully selected sections of audio tape.

The result was definitely a sentence — almost surely saying something inappropriate — in the voice of the original tape recording.  But the sound of each word was taken completely out of the original context. 

This is what the oddly lilting speech of the autopilot in The Incredibles was modeled after.

Even today, we have vestiges of “robotic voice” in (e.g.) legacy systems that will send you a security code over the phone.  Each number is pronounced as a stand-alone entity. So that 111 is pronounced one-(pause)-one-(pause)-one.  And not “a hundred and eleven”.


But seriously

Post #2052: A 15-minute podcast summarizing the issues for a proposed Vienna pool/gym.

The power of AI to persuade (and mislead) the masses largely hinges on not being able to tell that the results are AI-generated.

AI already passes the simple version of the Turing test.  You can hold a conversation with one, and not know that you’re not talking to a human).

And, as it turns out, being unable to tell AI from reality is a bad thing.  This is surely true for AI-faked videos and photos.

It’s also true for audio products like fake two-person podcasts, as referenced above.

For free, the Google AI product NotebookLM will produce you an outstanding and persuasive two-person podcast.  Feed it only the information you want it to see, and it will say what you’d like it to say.

I was appalled at how persuasive that free, easily-created two-person podcast was.

But if you took the exact same discussion, and made the AI actors “talk like robots”, it would not be anywhere near as persuasive.  All of the brain-bypassing emotional appeal of the two warm human voices would be lost.

You’d have to rely solely on the logic and sense of the underlying argument.

And I’d say we’re desperately in need of that these days.


Conclusion

If I took horsemeat, and labeled and sold it as hamburger so that I could sell it, I’d be liable for fraud.

But if I take an AI-generated “conversation”, and put that out there as if it were human, so that I can “sell” it to the audience — that’s A-OK?

We have to start dealing meaningfully with AI’s outstanding ability to deceive.

If passing off a horse for a cow is illegal, then passing off an AI for a human should be as well.

No more of this sounding-like-a-human stuff — that’s a good start.  Even if that can only be applied to commercial speech.

Post #2120: Oh, the price of gold is still rising out of sight

 

Gold blew through $3100 $3200 an ounce this morning.

 

As noted in prior posts, an increase in the price of gold is never a good thing.

Looking on the bright side, a good chunk of this last push was merely from dollar going down the toilet. 

That should happen because gold is an internationally-traded commodity.  It’s a global market.  When the value of the dollar falls, the value of gold, expressed in those dollars, rises.

I guess I need to start a countdown or something, as by my calculation, if gold tops $3519 (or so), that will be its all-time high in inflation-adjusted (CPI-adjusted) terms.

So, right now, gold is just (1- $3234 / $3519 =~) 8% below its all time high, in real (inflation-adjusted) terms.

I described the economic conditions under which gold set its previous high, in a recent post on this topic:

Post #2112: Oh, the price of gold is rising out of sight

Before that, my most recent prior post on this topic was from half a year ago:

Post #2017: The price of gold is up. That’s never good.

Post #2112: Oh, the price of gold is rising out of sight

 

Oh the price of gold is rising out of sight
And the dollar is in sorry shape tonight
What the dollar used to get us now won’t buy a head of lettuce
No the economic forecast isn’t right
But amidst the clouds I spot a shining ray
I can even glimpse a new and better way
And I’ve devised a plan of action worked it down to the last fraction
And I’m going into action here today.

From:  I’m changing my name to Chrysler, recorded by Arlo Guthrie.


Gold blew through $3100 an ounce this morning.

When the stock market is making new highs, everybody steps up to take credit for it.

But gold?  Nope. Nobody ever takes credit for a rising price of gold.  Given the cheapness and ubiquity of public lies these days, you’d think some prominent braggart would try.  But nobody ever tries to own a rise in the price of gold.   That’s because a rapidly rising price of gold is never good news.  And peaks in the price of gold tend to occur when the 💩 is in the process of hitting the 🚁.

What caught my eye about $3100 is that this has to be getting close to setting a new record for the price of gold in real (inflation-adjusted) terms.  (In the modern era, where the dollar price of gold has been allowed to float.  Post-1970, say.)

If I take the prior price peaks (red arrows I added to the chart above) and use the BLS inflation calculator to express them in 2025 dollars, I find that we’re now just 14% below the all-time high price of gold in real (inflation-adjusted) terms.

So, when Guthrie sang about the rising price of gold, in the context of the 1979 bail-out of Chrysler, following two Arab oil embargoes, the resulting energy crises, two long, deep U.S. recessions, and the near-destruction of the U.S. auto industry with its lack of energy-efficient cars, in a context of persistent double-digit rates of inflation … the price of gold, in real terms, was somewhat higher than it is today.

I’m trying to take some comfort in that.  Either things aren’t as bad now, as they were then.  Or they aren’t as bad, yet.

Either way: Eat, drink and be merry.

My most recent prior post on this topic was from half a year ago:

Post #2017: The price of gold is up. That’s never good.

Post #2103: This and that.

 

Well,

a)  this is a blog, after all, and

b) if the President can flip flop daily on tariffs, then

c) it’s hard to see the shame in having a mere blog post that wanders a bit.


1:  AI replacement theory

1: Every human job that can be replaced by AI will be.

2: Every human job that requires speech and reasoning alone is at immediate risk of being replaced by AI.

3: All other human occupations will be condensed to the portions that can’t feasibly be replaced by AI.

 

These are laws of economics, not computer science.  New technologies have been doing this sort of thing since the start of the industrial revolution.  There’s nothing about this that’s entirely unique to AI.

This time, instead of technology making your biceps obsolete, now it’s making your brain obsolete.  The most important difference between the AI revolution and what has gone before is that this time, they’re coming for my job.

I just can’t quite get my big brain around the fact that my big brain is obsolete.

It’s going to take me a while — like a few posts — to work out the ramifications of that, to my own satisfaction.

If nothing else, if this does what I think it’s going to do, to “knowledge workers” generically, that’s got to be nothing but bad news for the real estate market here in Northern Virginia.  Pile on a dip in Federal employment, and, as I live here, I should pay attention to what’s happening with AI.

Even though I’d much rather not.

 


2: My garden is a mess

Yonder it sits, as of late fall of last year (left), and as of about 5 minutes ago (right).

In theory, this should be some sort of planned operation.  E.g., I want to grow such-and-such, in this-and-so quantity.  And so on.

In practice, I can’t even get that far.

Instead, this has turned into a game of fixing the worst errors, then seeing what’s left.

First, I need to get the sun-rotting plastic out of my garden, and disposed of.  But, as I (intentionally!) made the raised beds by recycling plastic coroplast campaign signs, removing those plastic sides effectively destroys all the existing raised beds. 

But, second, I always intended these beds to be temporary, and, ultimately, I figured the dirt would fill some of the worst “valleys” in my back yard.  So that’s what I’m doing — dismembering the side-less corpses of these raised beds and using the dirt to fill the largest and most annoying valleys in my lawn.

(These “valleys” are the aftermath of the installation of the ground loop for the ground source heat pump, and they continue to sink, ever-so-gently, 20 years after that was installed.  It really does not surprise me that this method (parallel trenches 6′ deep) seems relatively rarely used, compared to drilling a vertical well for the ground loop.  I already shoveled 10 tons of dirt trying to fill those valleys the first time.)

Third, I’m re-using the concrete corner blocks from the defunct low beds to build fewer, taller, better-placed raised beds.  I don’t actually want the resulting raised beds, but they are a place to store the concrete corner blocks, and most importantly, to store some of the soil that’s in the former plastic-sided beds.

Interesting calculation there. When I started these beds, I brought in 10 cubic yards of 50/50 mixed topsoil and compost.  And now, when I do the arithmetic on what’s left (bed dimensions x bed depth = volume of soil in bed), come up with about 5 cubic yards.  Which is just about exactly what I ought to have, if all the organic matter (the compost) in the original mix has rotted and so returned to being C02.  The upshot being that, at a density of about a ton per cubic yard, I’d have to shovel 5 tons of dirt, to get rid of these beds.  Not clear I’m up to that task any more.   Not clear that I’m not.

So, as stupid as it was to have to move a raised bed once, I am, in effect, moving them twice.  But the second time is largely to get rid of their dirt.  It’s a planned-life-cycle kind of thing.

And the new garden plan, such as it is, involves growing more stuff that neither the deer nor the bugs want to eat. But that my wife and I do.

That’s a very short list of crops.  That’s about as far as I’ve gotten on my garden plan for 2025.


3: Bee hotels, the final chapter begins

I am putting up my native (mason, orchard) bee hotels for the last time.  Mine are bundles of 6″ (or so) bamboo tubes, with smooth-cut ends (cut while green, or commercial pre-sanded cutoffs), with inside diameter around 3/8″ inch.  Above, I’m using Virginia clay to seal off one end of each tube.  When I have those sealed and dry to my satisfaction, those bundles of nesting tubes will be hung securely over the site of the emergence box (Post G25-001), ready for spring to commence.  And for the female mason bees to use at their convenience.  Next spring, the (now filled, hopefully) bundles of nesting tubes will have to be taken down and placed in next year’s bee emergence box.

Post #2098: If they ever get serious about cutting the Federal deficit …

 

It’s not as if cutting Federal spending is some brand-new idea.  It’s not as if nobody has noticed the Federal budget deficit before.


But if the current regime were serious about the budget deficit …

The current push to fire Federal workers is all about purging the bureaucracy.  This is standard operating procedure for autocrats.  You won’t see a modern autocratic takeover of a former democracy without it.

In case you were confused, this explains why (e.g.) Musk et al. keeps going out of their way to insult Federal workers gratuitously, why the firings are so slap-dash, and why the dollar total of claimed savings seems to be treated as a joke, not worth checking for accuracy.

All of that, because if your primary goal is simply to purge the bureaucracy so that you can replace it with your loyal partisan hacks, none of that matters.  Heck, insulting Federal workers is a feature, not a bug.

It’s not about making any material savings in tax dollars, because everyone who has even the faintest idea where the money goes realizes that the dollars you can save by reducing the federal workforce itself are small.  Most of what the Federal government does is make transfer payments.  Take taxes from some, give that money to others.

Source:  SSA.

For example, Social Security is 20% of the Federal budget.  The entire overhead of Social Security — Federal workers, contractors, their offices and equipment — accounts for about 0.5% of Social Security costs.  The other 99.5% is payments to the aged, blind, and disabled.  Administrative costs of Social Security have been below 1% of total costs since 1989, so this isn’t exactly some new development.

Sure, Republicans get their jollies cutting the EPA.  And, apparently, they’ve now jumped the shark on “starve the beast”, and simply plan to reduce IRS employment until the government is no longer able to collect taxes, and so goes from starvation to bankruptcy.

Source:  Citations given below.

But the bottom line is that compensation of civilian employees (i.e., not the uniformed services) amounted to $271B in 2023 (reference:  Congressional Budget Office).  Or, about 4% of total Federal outlays of around $6.75T (reference:  US Treasury).

By reference, the current annual budget deficit runs around $2T per year.  You can fire them all, and it’ll hardly make a dent in the deficit.

Worse, there are some areas where the Federal government really does hire people to do the work, not just to move the money.  But the three agencies with the largest civilian Federal workforce are Defense, Veteran’s Affairs, and Homeland Security.

If you are wondering why the Veteran’s Administration is on that list, it’s largely because the VA runs more than 1000 health care facilities, including (as I recall) about 160 hospitals.  That, along with many outpatient clinics, skilled nursing facilities.  And about 150 national cemeteries, as veterans retain a burial benefit, and can claim the right to have their remains buried in a VA cemetery.


Don’t confuse “purging the bureaucracy as part of a power grab” with a genuine effort to balance the budget.

The Congressional Budget Office (CBO), the Executive Office of Management and the Budget (OMB), the Government Accountability Office (GAO), and (I think) the Congressional Research Service (CRS) all have created extensive lists of options for reducing the Federal deficit.  Not to mention all the various private-sector entities that have been chiming in on this for years.

Even the most superficial study shows why those remain options, and have not been implemented.

The CBO web page on this issue (https://www.cbo.gov/budget-options) lists so many options that they give you a search function, with limits.

Let’s say you’re in a mood to think big, and you’re only interested in items with at least half-a-trillion-dollars in deficit reduction (over a ten-year budget window).   No problem.  Above, you see the first dozen such half-trillion-dollar items on the CBO list.

Bear in mind that the CBO-listed dollar amounts are for a ten-year budget window.  So, with the deficit currently running around $2T a year, you’d be need for a total of $20T in savings, off this list, to claim to come close to balancing the budget.

Lesson 1:  You’d have to do all of the above, and then some, to come close to balancing the budget.

Lesson 2:  Notice how many lines say “waste, fraud, and abuse”.  None of them.  Instead, essentially every item consists of either raising taxes, or shifting costs to the states, businesses, or citizens.

And the rest …

You can find similar lists of potential savings from GAO. 

As if this writing, the OMB website appears to have been wiped and replace with pro-MAGA pap.  It’s now a great source for pretty pictures of the President and First Lady.  It no longer appears to offer any information whatsoever to the public.

 

Conclusion

None of this is news to anyone who has ever given this 10 minutes’ worth of research.  Surely, the MAGAts who’ve taken over the Federal government know this.  And therefore anyone can infer that, whatever they’re hoping to accomplish with “DOGE” chaos, addressing the budget deficit isn’t one of them.

It’s just icing on the cake that these folks now have unfettered access to every Federal tax return.  What could possibly go wrong with that?

The Federal government used to have rules.  For reasons.

Now, apparently, whatever you can grab, its yours.  Just make up a plausible-sounding reason, and you’re good to go.

Post #2093: Explaining Trump trade policy. This one secret changes everything!

 

The Wall Street Journal characterized the Trump tariffs on Canada and Mexico this way:

That’s a bit harsh, isn’t it?

In this post, I’m going to explain what the WSJ and more-or-less all other professional economists are getting wrong about this issue.


This one trick insight changes everything.

The WSJ editorial page may have been a bit blunter than some.  But it’s a fair reflection of informed opinion on this topic.  It’s almost no exaggeration to say that everyone with any professional interest in economics, international trade, or foreign affairs has been baffled by the reasoning behind the Trump tariff proposals.

But maybe, just maybe, these tariffs are not as irrational as they have been made out to be. 

I believe that all the professionals in international trade misunderstand the simple policy logic that drives us inevitably to these tariffs.

I claim that the fundamental error that professional pundits are making is in thinking that these tariff have anything whatsoever to do with U.S. international trade policy.


The inescapable logic of the Trump tariffs.

Viewed as trade policy, these tariffs are every bit as dumb as the WSJ said.  But viewed from a different perspective, they make absolutely perfect sense.  And that’s because these tariffs aren’t Federal trade policy, they are Federal income tax policy.

Huh?

The income tax cuts from the first Trump administration are set to expire.  Depending on who’s doing the estimate, those tax cuts cost the Treasury $300B to $400B a year.  Ish.

To get them extended, without increasing the deficit, you need to find at least $300B a year to make up the loss.

And, to increase the difficulty factor, you’re a Republican, so raising a tax on anything is out of the question.

What’s the easy, no-effort way to achieve that goal of finding $300B a year, without increasing Federal tax revenues?

First, you must adamantly insist that tariffs are not taxes, and that Americans don’t pay for import tariffs.  No matter how stupid everyone who knows anything about anything says that assertion is.  You must insist that tariffs are not taxes, because you, as a modern Republican, are not allowed to raise taxes.

Next, you sort your trade partners, from high to low, in terms of dollar value of imports.  Pick a good round number like 25%.  And go down the list until 25% of the value of imports exceeds $300B.

Even though, again, anyone who knows anything about trade policy will tell you that makes no sense.  I mean, you haven’t even focused on the countries where we have the biggest trade deficit.  You haven’t (say) accounted for strategic materials, or domestic industries that depend on imported parts, or your own vulnerability to retaliatory tariffs.

Instead, you’ve sorted our trading partners by descending order of value of imports (only).

That’s literally as deep as the thinking goes.  Because that’s as deep as it needs to go, to achieve the goal.  Which, recall, is domestic income tax policy, not international trade.  And that’s because the value of imports (less reduction in demand, when the tariffs are imposed) is what determines your revenue.

Now see how far down the list you need to go, before you get your $300B a year.

Answer:  Canada, Mexico, and China.


And suddenly, the entire two-part “policy” snaps into focus.

These tariffs have nothing to do with trade policy, America’s position in the world, or anything else that a reasonable person might consider.

Instead, look at what this policy consists of:

 Part 1:  You must keep insisting that tariffs are not taxes, because you are not allowed to use the t-word, as a Republican.  This part of the policy is required, because the goal is to raise Federal revenues significantly without saying the t-word (taxes).  So everybody has to agree that tariffs are not taxes, and that Americans do not pay their cost.  Even though everybody who knows anything about international trade will tell you that’s incorrect.

Part 2:  Target countries not in terms of our trade deficit with them, or other practical considerations like impact on U.S. industry, but solely in terms of the value of what we import from them.  And that, too, makes sense, because import volume is what determines your tariff revenue, less the reduction in demand that will occur once prices rise in response to the tariff).

Why is it now 25% each for Mexico and Canada, and 10% for China? My guess is, that’s because that’s when they hit the required projection of tariff revenues that they need. Why are we now talking about tariffs on everything, from all countries, characterized now as “reciprocal tariffs”? Best guess, the revenue target has changed, or the estimated revenues from the existing tariffs have changed.


Conclusion

Sometimes it’s difficult for really bright people to understand how not-so-bright people think.  Or for those with expert knowledge to understand the rank amateur.

If the Trump tariffs appear divorced from any rational thinking about international trade, that’s because they are.

But from the Trump administration standpoint, that’s not a bug, that’s a feature.  That doesn’t mean that they were done at random, or that they were otherwise harmless.  Merely that trade policy was not the point.

Instead, import tariffs are simply a) a potentially large source of revenue that b) you can claim is not a tax.  From that perspective, this two-part policy makes perfectly good logic.  If not much sense.

It’s only a bit of a poetic justice that you get to keep your tax cuts largely favoring the wealthy, by substituting tariffs whose burden falls disproportionately on the poor (for the simple reason that the rich have a high rate of savings.) 

Thus, the secret to understanding the logic of the Trump tariffs is that trade policy is just an innocent bystander.   If what you really care about is extending tax cuts, then, eh, if your solution messes up North American manufacturing for the next decade or so, so be it.  

Republicans have agreed to hold hands, close their eyes, and claim that import tariffs are not taxes on Americans.  And ignore how badly this screws up big chunks of U.S. manufacturing, starting with automobiles.

And, ka-ching, there’s the free $300B in revenue you need to extend the existing tax cuts.

Which is what really matters.

Wonky addendum:

Note, by the way, that if this goes through — if those tariffs are counted as revenue, against the Treasury’s losses from the tax cuts, then …

… well, back in the day, when rules still existed in the Federal government, then those tariffs would be permanent.  Or, at least, as permanent as the tax cuts that they funded.

(This, from PAYGO, originally developed around 1990, and, as of 2019, fully in force in both the House and the Senate.  Any legislation passed by the Congress had to be paid for by a combination of tax increases and spending cuts, unless an exception is made, by a supermajority vote.  Here’s a rather complicated explanation from Wikipedia.)

I’m not sure how this would work, under PAYGO, as the tariffs are not based on legislation.  But I would bet that there’s a way for Republicans to claim the money, as they extend the Trump tax cuts.

So, to be clear, this is once again completely unlike normal tariff policy.  If these are put into place, and Republicans (at least mentally) count the revenue against the losses from the tax cuts, then these tariffs must be, for all intents and purposes, permanent.

Luckily (?), there appear to be no rules whatsoever governing the Federal government now.  So we don’t have to worry about these becoming permanent.

Post #2072: R, the second task.

 

This is my second post on learning the R computer language.  That, after a lifetime of using the SAS language to manipulate and analyze date files.

I’m learning R piecemeal, one task at a time.  My first task was to show the upward trend in the annual minimum temperature recorded for my location (Post #1970)Today’s task is to make a pretty picture.  I want a choropleth (heat-map) showing income level by Census Block Group, for Fairfax County, VA.

I succeeded (below).

But it was not quite the thrill I thought it would be.


The bottom line

If you came here on the off chance that you, too, wanted to use R to produce a Census Block Group choropleth of income in Fairfax County, VA, then assuming you have installed R and RStudio and (see below) assuming you aren’t running Windows 7 or earlier, it’s as easy as:

install.packages("tidycensus")
library(tidycensus)


Your_Name_Here <- get_acs(
geography = "block group", 
variables = "B19013_001",
state = "VA", 
county = "059",
year = 2020,
geometry = TRUE
)


plot(Your_Name_Here["estimate"])


Kind of anti-climactic, really.  For something that I thought was hard to do.  Or, possibly, it actually is hard to do, but somebody’s already done all the hard work.

I more-or-less stumbled across this example on-line.   It worked.  That’s pretty much end-of-story.

By way of explanation:

The install and library commands make the Tidycensus package available to your R session.  (If required, R will automatically download and install the package from CRAN (the Google Play Store of the R world.  If you’ve already installed it and it’s up to date, R just moves on to the next command.)  Library is what makes the tidycensus package available to your R program (script).

Tidycensus defines the “get_acs” command.  That reaches out and obtains your specified file from the Census Bureau.  (That’s via an API, and, optionally, you can get your very own API key from Census and list that in the program.)  In particular, this is asking for data from the American Community Survey, but you could ask for data from the decennial census.)

The important part is that this Census file brings its “geometry” with it.  That is, each line of the file — each geographic unit — in this case, each Census Block Group — comes with the detailed line-segment-by-line-segment description of its boundaries.  That description sits in a great big long variable-length text field at the end of the record.  (Including the geometry with the file increases the file size by a couple of orders of magnitude, which probably explains why it’s optional.)

(This job  also brings a bit of data, but you have to study the arcana of Census files to know that B19013 is median household income.   I think -001 signifies entire population.  Plus, that hardly matters.  You can merge your own CBG-level data values to this file and use those to make a CBG-level heat map.) 

Once you have the Census file, with the Census geometry on it, you can easily find something in R that will plot it as a map.  I think a lot of that happens natively in R because Tidycensus will create your Census file as an R “shapefile” (“sf” data frame), when you keep the geometry.  Because it’s that type of file, R then knows that you want to use it to draw a picture, and … apparently R handles the rest through some reasonable defaults, in its native plot command.

Or something.

I’m not quite sure.

Plus, there appear to be many R packages that will help you make prettier plots.  So if the simple plot command doesn’t do it for you, I’m sure there’s something that will.

This last bit pretty much sums up my take in R, so far, after a lifetime of programming in SAS.


And yet, it took me two days.

To produce and run that four-line program above.

My biggest mistake, as it turns out, was learning R on my trusty Windows 7 laptop.  That worked fine, it just required finding and installing outdated copies of R and RStudio.  (R is the language, RStudio is the interface you use to write and run programs (scripts) in R.)

But this didn’t work at all for this task.  I tried several R packages that promised to produce choropleths, only to face disappointment coupled with cryptic error messages.

Eventually it dawned on me that some of what R was trying to do, as a matter of routine, in 2024, was perhaps non-existent when Windows 7 was launched in 2009.

So that led to a big while-you’re-at-it, installing the latest version of R and RStudio on my glacially-slow Windows 10 laptop.  On that machine, everything R ran just hunky-dory.  If very slowly.

All R-related incompatibilities ceased.  The desired choropleth emerged.


Living the R lifestyle.

Below are the biggest things I’ve noticed in programming in R, compared to SAS.

To make sense of this, translate the R term “packages” as add-ons, or plug-ins, or extensions, or whatever rings a bell.  They are things that add functionality to a base piece of software.

First, there’s a whole sub-market catering to the SAS-to-R switchers.  Everything from excellent cheat sheets for R equivalents of common SAS tasks, to at least one R package (“procs”) that lets R mimic a few handy SAS procedures (freq, means, print, and some others).

Second, there are more than 5,000 R packages on CRAN.  The Comprehensive R Archive Network is like the Google Play Store of the R world.  It’s where all the interesting optional software is kept.  There’s some organization to all of that, but I’m not quite sure how much.  There’s an index, of sorts, but I haven’t used it yet.

Third, some chunk of that package-intensive computing just makes up for base R being not very useful.  A whole lot of example programs assume you’ve attached the “tidyverse” package, plausibly because a lot of the basic commands in tidyverse are routinely useful things that base R lacks.

Fourth, the whole “package” thing has no (or little) top-down organization.  Near as I can tell, nothing prevents different package writes from defining the same command or same operator differently.   As a SAS guy, that strikes me as a major quality control problem just waiting to happen.  But the upshot is that the list of packages used (via attach and library statements) is an integral part of a well-documented program.

Five, now all restaurants are Taco Bell files are spreadsheets.  By that I mean that R can only work on files that will fit into computer memory (RAM).  Whereas SAS can work on files of essentially unlimited size, but that’s by working disk-to-disk or tape-to-tape.  That has some odd spillovers to programming style, where R seems to favor making many-little-changes (like formulas in spreadsheet columns), where SAS favored one-long-data-step, where a complex series of calculations was carried out in one “pass” of an underlying data file.

Six, R names are case-sensitive.  As a SAS programmer, I sure wish they weren’t.  E.g. Var and var are two different names, of two different variables.  I’m stuck with having to respect that.  For at least the next reason.

Seven, R does a dandy job of reading data out of spreadsheets.  By far the easiest way to import data into R is .csv or spreadsheet.  In both cases, the variable names “come with”, so you inherit the data and the names that the data creators used.

Eight, slang, or short and long-form grammar for commands.  I’ve already come across two forms of the merge function, one of which kind of spells-it-all-out, one of which is abbreviated.

Nine, R can only merge two files at once, natively.  I think that’s right.  The original (non-slang) form of the merge statement makes that clear with “x =, y= ” terminology, which pretty clearly on accommodates two files.


Conclusion

I don’t think I’m ever going to be a big fan of R.

But, R will do.  It’s good enough for doing all kinds of “serious” data set manipulations (e.g., match-merging files based on some common identifier or identifiers).

And it’s kind of like a lottery.  If somebody has already written a package that’s just spot-on for something you’re trying to do, then all you need is a few magic words, and voila.

Post 2071: AI review of Vienna Town Council 12/16/2024 Work Session, Part I.

 

Below is NotebookLM’s report on the first 43+ minutes of last night’s Town Council Work Session.  Town posted the video promptly.

The audio of that meeting is all that NoteboolLM knows about this particular issue.  I think.

PSSST:  Then how did it get the architect’s name spelled correctly?  OK, so the AI knows a little more than it’s letting on.  The only thing I fed it, for this session, was the 43 minutes of audio.

One is never quite sure whether an AI is pulling one’s leg or not.  But, this was free, and I think I know more, after reading this, than I did before.

 


NotebookLM analysis of Vienna Town Council Work Session 12/16/2024, first portion, regarding a proposed pool/gym facility at “The Annex”.

This audio recording documents a December 2024 Vienna town council work session focused on preparing for a January 2025 session concerning a potential aquatic and fitness center. Council members submitted questions for consultants and staff regarding projected costs, revenue models, and community needs. A vote was taken to determine which questions would be prioritized for the upcoming session. Concerns were raised about funding mechanisms and the impact on local businesses and residents, including the possibility of a referendum. The session concluded with a decision to proceed with the investigation, despite some dissent.

 

NOTE that the text below is also AI-generated, but seems to have come in a form that won’t let me edit it.  (So I can’t turn the text to a different color to set it apart as AI output.)

 

Briefing Document: Town Council Work Session 12-16-2024

Subject: Aquatic and Fitness Center Annex Proposal – Information Gathering and Decision-Making Process

Date: December 16, 2024

Attendees:

  • Town Council Members: Roy, Sandra Allen, Howard, Ray, Chuck, Jessica Raminsky (represented by Mayor)
  • Mayor
  • Town Manager
  • Director of Parks and Recreation, Leslie Herman

Purpose: To identify key questions and information requirements for the Town Council to consider before making a decision on the proposed Aquatic and Fitness Center Annex on January 27th, 2025.

Background:

The Town Council is considering a proposal for an Aquatic and Fitness Center Annex. This proposal includes a significant capital investment and ongoing operating costs. A consultant, Kimmel Bogrett, has provided initial analysis, and Town Staff has conducted independent research.

Key Themes and Concerns:

  • Financial Viability and Revenue Generation: Council members expressed significant concern about the financial sustainability of the project. They requested detailed analysis of projected operating costs, potential revenue streams, and the likelihood of achieving projected membership numbers. Several members requested comparisons with similar facilities in other jurisdictions, including Fairfax County rec centers and the Herndon Community Center.

Council Member Roy: “Is it one in five [households] and for them [Kimmel Bogrett] to explain that… I want names of localities so we can call them up and find out how things are going.”

Council Member Chuck: “My questions… really relate to how much revenues can we expect to um generate from this facility to offset the pretty substantial operating costs.”

  • Membership Projections and Market Analysis: Doubts were raised about the consultant’s membership projections, particularly in light of competition from nearby Fairfax County facilities. Council members requested further analysis of the market area, considering factors like proximity, household income, and participation rates.

Council Member Chuck: “The estimates provided by the consultants is that… the annex would um attract around 2,000 memberships… the county has 16,660 countywide for nine facilities… So the consultants analysis basically posit It’s a slightly higher membership rate even though the facility is only one-third roughly one-third the size of the average county facility.”

  • Funding Options and Public Input: Council Member Allen strongly advocated for exploring alternative funding options beyond tax increases and for holding a public referendum on the project. This suggestion did not receive majority support from the Council.

Council Member Sandra Allen: “I have an issue with the funding… I want to make sure our residents have the decision the ultimate decision… and I want to put this in a referendum.”

  • Operational Considerations: Questions were raised about the potential impact of expanding the proposed pool from four to six lanes, the feasibility and profitability of various programs and services, and the potential demand for pool rentals.

Mayor: “So, we’ve talked about there’s a lot of ways to raise revenue… What is that balance? And what are the different types of um ways to raise revenue?”

Action Items and Next Steps:

  1. Compile Consolidated List of Questions: Town staff will compile a comprehensive list of questions raised by council members, ensuring clarity and avoiding redundancies.
  2. Submit Questions to Consultant and Staff: The consolidated question list will be submitted to Kimmel Bogrett and Town Staff by December 17, 2024.
  3. Deadline for Responses: Kimmel Bogrett and Town Staff will provide written responses to all questions by January 8th or 9th, 2025.
  4. Optional Two-on-Two Meetings: Between January 9th and January 20th, individual council members can schedule meetings with Kimmel Bogrett and Town Staff to clarify responses and seek further explanation.
  5. Work Session Presentation and Discussion: Kimmel Bogrett and Town Staff will present their findings and address council member questions at the Town Council Work Session on January 21st, 2025.
  6. Town Council Decision: The Town Council will make a final decision on the Aquatic and Fitness Center Annex proposal on January 27th, 2025.

Conclusion:

The Town Council is committed to a thorough and transparent decision-making process for the Aquatic and Fitness Center Annex proposal. Gathering detailed information on financial viability, market demand, and operational considerations is crucial to ensure a fiscally responsible and community-oriented outcome.