Post #2080: Vienna, VA sidewalks in the snow.

 

In Vienna, VA, we are religious about shoveling the snow off our sidewalks.

God put the snow there.

God will remove it when he’s good and ready.


I tried to take a walk yesterday morning …

… without walking on snow and ice.

But, because I live in the Town of Vienna, that meant spending a lot of time walking in the road.

There’s no requirement to shovel your sidewalk in the Town of Vienna.  Unsurprisingly, some sidewalks are shoveled, some aren’t.  Which means that you typically can’t walk the length of a block without either walking on an un-shoveled sidewalk, or walking in the road.

This got me to thinking about what the snow-clearance laws are in Northern Virginia.  I know there’s no ordinance requiring it in Vienna.  But what about the rest of Northern Virginia?

Turns out, Vienna is in the minority.  Most of the jurisdictions around here require residents and business owners to shovel their sidewalks promptly after a snowfall.

I find that to be an oddly mixed bag.  Loudoun County is in general far more rural than Fairfax County, yet they require snow shoveling while Fairfax does not.

In all cases, the penalties for failure to clear a sidewalk are nugatory, so it’s not clear whether any of the laws are or are not effective.  I considered taking a field trip to the People’s Republic of Falls Church to see if their sidewalks really do get cleared or not.  But it hardly seems worth it.  Give it another few days, and the snow will be gone.

In the end, it’s just another oddity of living in No. Va.  These jurisdictions all have the same weather and have pretty much the same population demographics.  I’m guessing that the presence or absence of a shoveling ordinance is mostly a matter of historical accident.

In any case, in Vienna, we clear our sidewalks the old fashioned way, via religious observance.

Addendum:  Businesses in Vienna VA?

I know there’s no ordinance requiring homeowners to shovel their sidewalks in Vienna, but I was immediately questioned about businesses.  You can, and many places do, have different shoveling laws apply for business versus residential.

Old news reporting says that Vienna Town Council turned down any sort of shoveling ordinance in 2011 (Reference The Patch).

And that’s the last Google seems to have heard of it.

A search of MuniCode for Vienna VA for snow yields 13 mentions, none of which have to do with requiring businesses to shovel snow.

A search of the Town Website yields nothing useful, but that’s never definitive.

For sure, the Maple Avenue sidewalks were cleared around here.  Here’s Pleasant and Maple, looking west and east.

So, I don’t know.  There doesn’t seem to be an ordinance requiring it, but something resulted in the clearance of the Maple Avenue sidewalks in my area.  This is distinctly different from (say) Nutley, also a multi-lane road, but with large sections of un-shoveled sidewalk.

If it’s due to an ordinance, that ordinance appears well-hidden.

Post #2079: So, when will Greenland be ready?

 

To use, I mean.  For us to use.

Now that it’s on order.  Once we buy it, or take it, or whatever.

How long before we get to use it?


I appreciate the sentiment.

Republican policy, if I can infer such, is not merely to ignore global warming, but to encourage the consumption of fossil fuels.

And yet, even as they deny it, they seem to realize they’ve got to have a place to put people.  You know, once Florida is under water, the Great Plains have reverted to sagebrush desert, and so on.

But, we’ve got this big empty island, just offshore.  Kinda.

Buy the big empty island, set up resort destination with a few casinos, and problem solved.

It’s a no-brainer.

Plus, if we’re tired of NATO, there’s no better way to do away with it than to attack a NATO country.

It’s a no-brainer and a two-fer.

But I digress.


How long for the ice to melt?

At present, Greenland is 80% covered by a remnant of the North American ice sheet.  It’s a relic from the most recent ice age.  I vaguely recollect that the ice is two miles thick in places.

But on average, it’s under a mile-and-a-half thick.

 

Based on all sources available to it, Google’s AI thinks it’ll take at least 1000 years for the ice to melt.

If I specifically narrow it to the IPCC, Google tells me “a few thousand years”.

Admittedly, some real estate will open up before the ice melts fully.

But given the overall time line for global warming, and certainly the likely remaining lifespan of the USA, I don’t think the ice up there is going to melt in time to do us much good.

 

Post #2077: I opened the hood of my car.

 

Finally.  I finally opened the hood of my 2020 Chevy Bolt, a year after I bought it (Post #1924).

I never saw a reason to look under the hood, figuring I’d have no idea what I was looking at.  It being an EV, and all.

Now that I’ve opened the hood, I was not disappointed.

Not ringing a lot of bells with me.  I think I recognize a brake master cylinder and tan plastic reservoir mounted to the firewall, driver’s side.  But all those big metal thingies?  No clue.

Luckily, one can be ignorant and still drive a car.  That, proven daily, I’d say.

Even now, I wouldn’t have bothered to open the hood, ever, except that with the recent winter storm, and the resulting sloppy roads, I figured I should top off windshield wiper fluid.  Seeing as how that hadn’t been done in a year.

I was able to do that without reading the manual.  The hood release was in an obvious place, the hood emergency latch was easy to find, and (shown below) the right place for windshield wiper fluid is pretty clearly marked.  Even had a hood prop where I expected to find it.

So thumbs up to Chevy for making that much obvious.

Weirdly, I swear there’s a fan and radiator in there somewhere.  For sure, there are several little reservoirs that look like they hold coolant.  Plausibly that’s all part of whatever manages the temperature of the battery and the electronics.

It’s magic, as far as I’m concerned.

Plus it runs at a lethal 350V DC.  As long is to works, leave it be.

And pour carefully.

Post #2076: Snow day.

 

Today, Monday 1/6/2025, is a snow day.

From the sound of it, at 7:45 AM, we’re getting wintry mix here in Vienna.

It’s our favorite form of winter precipitation.


Can you keep yourself warm by burning sticks in your wood stove?

Yes.  Give me enough sticks, and I will stay warm indefinitely.  Proven.

But no, I’m never going to do this again.

Above left, note wheelbarrow full of (dry) sticks.  I started this winter with several such, along with a few trash cans and plastic totes full of similar material.  That,  courtesy of taking down a couple of small trees in my yard this past summer.

Above right, is the modern wood stove insert, with blazing fire made out of sticks.  Sticks, obviously, broken small enough to fit into the firebox.

Above, between, are the almost-empty firewood racks.  So there’s no doubt that it’s the sticks I’m burning.  And note the two fire extinguishers.  Because nothing says fun-at-home like a blazing fire right next to a big, loose pile of kindling.

I have no problem bringing my wood stove (insert) up to a good operating temperature by burning loads of sticks, instead of nice chunks of firewood.  In fact, dry sticks burn too well, so some of the work is keeping the fire down to a reasonable size.  No problem keeping it that hot for hours, with the circulating fan pumping hot air out into the room.

It’s just a real pain in the butt to maintain that fire.  Not quite a full-time job, but hardly a relaxing fire.  I have to toss in another handful of sticks every 15 minutes or so.  And it’s fiddly, with a handful of sticks being a less stable fuel source than a solid chunk of firewood.  Keeping a fire going with nothing but sticks is nothing at all like putting a couple of logs in the firebox once an hour.

I’m going to burn through the rest of my stock of sticks in the next couple of nights.  Then I’m never going do to this again.  This, being, burn up a large amount of small branches in my wood stove.  Not worth the effort, the indoor air pollution, and so on.

But, if I had to stay warm, and had no firewood, it’s good to know that a wheelbarrow of sticks will get me two, maybe three, hours of usable fire.  Burning it an open handful — call it a 5-inch bundle — at a time.


Conclusion

My wife and I were both reminded of that part of Little House on the Prairie, The Long Winter, where the Ingalls family stays alive by constantly feeding sticks of twisted straw into their wood stove.

I absolutely can produce a fine quantity of heat by feeding a steady stream of bundles of sticks to a modern (air-tight) wood stove.

Or, I could just turn up the heat pumps.

In any case, as a way to get rid of nuisance wood, to some good purpose, this is fine.  Or, if it were an emergency, likewise fine.

But doing this on purpose, now that I’ve done it once?  Nah.  Too much work, too much indoor air pollution.

I’ve thought about buying in more firewood, but for a lot of reasons, I’ve decided not to use my wood stove as a serious source of heat any more.  Not here in the ‘burbs of DC.

Maybe it was the Canadian forest fire smoke of (now) two summers ago, maybe it’s that I have a much-reduced need to “balance” heating and cooling from my ground-source heat pumps.

I will still burn wood occasionally, I guess.  And it’s nice to have as an ultimate back-up heat source.  But I’m no longer going to do what I used to do, which is burn through a couple of cords of wood over a winter.

But now I know I can keep my house from freezing, by burning sticks in my wood stove.

Yay?  I hope I never need to know that, practically speaking.

Post #2075: Eyeglass frame repair with baking soda and superglue.

 

I first tried the superglue-and-baking-soda trick back in Post #1997, where I made an expedient repair to a plastic-bodied wrist watch with a broken watch band lug.

FYI, the baking soda isn’t merely a physical filler, it interacts chemically with the superglue and cures the superglue in a completely different fashion from what would normally happen.  The result is stronger than superglue alone, and has better adherence to whatever you’re trying to glue to (reference).

When my wife snapped the plastic frame of her eyeglasses last week, that method was the first thing that came to mind.  Like the wristwatch lug, you have a tiny surface area of plastic to glue to, and yet the part has to take a lot of mechanical stress.

And, in fact, that same superglue-and-baking-soda method worked exceptionally well to hold her eyeglasses together until the replacement frames arrived.

As common sense suggests, first wash and dry both parts to clean the plastic surfaces.  (Just dish soap and water).

Then, first super-glue the plastic parts back together, to get the alignment right.  If the snap was clean, this should look good when re-assembled.  But super glue, by itself, isn’t strong enough.  Lot of leverage on this part.

And note that, for this next part, you need liquid superglue.  Gel won’t properly “wet” the baking soda.

I then added a thin layer of baking soda and super glue all around the broken plastic.  For a thin layer, just wet the plastic with superglue and quickly heap on baking soda.  Give it a few seconds to harden.  Brush off what remains loose.  Use sandpaper to smooth the surface.

Alternatively, you can build the thicker part of the patch by first laying down a thin, shaped layer of baking soda (make a “wall” of masking tape around the edge to keep the powder from spilling over), then quickly wetting it with liquid superglue.  That was shown in Post #1997, the broken watch lug post.  When fully hardened, file it down and shape it with careful use of a common (flat bastard) metal file.  Sandpaper to remove any rough bits.

 

The result is an unobtrusive and surprisingly sturdy repair.  I didn’t try to match the frame color or otherwise make it blend in.

Better than a piece of tape, for sure.

It’s now been a week, and the replacement frames have arrived.  I doubt that this repair is going to survive having the lenses pulled out of the old frames.  But it was more than good enough to hold the broken frames together, until the new frames could get here.

I believe baking-soda-and-liquid-superglue is is now my go-to method for unavoidable repairs on rigid plastics.

Post #2074: Coffee chemistry Christmas, part II: Aeropress.

 

On the path to coffee snobbery, there is no better starting place than Walmart.

That’s where I just bought a made-in-USA Aeropress single-cup coffee maker.

In the end, coffee is all about chemistry.  Chemistry and physics.   Chemistry, and physics, and ruthless efficiency … and an almost fanatical devotion to the Pope. Continue reading Post #2074: Coffee chemistry Christmas, part II: Aeropress.

Post G24-028: How’d that ginger turn out?

 

Quite well, starting with candied (crystallized) ginger, shown above.

After a rough start, growing ginger in Virginia turned out to be an outstanding success.

The big plus of growing ginger in this climate (USDA zone 7) is that the growing season is way too short to produce mature ginger root.  So what I got was seven pounds of immature (baby) ginger.  And, as it turns out, immature ginger is a lot nicer to cook with than mature ginger.

My inability to produce mature ginger root is a feature, not a bug.


Ginger,  being a tropical plant, never saw it coming.

The picture above is a week or two after first killing frost.

My ginger stayed lovely and green, right up to the night that it froze solid.  I can only assume that, as a tropical plant, it had no idea what was about to happen.

In any case, for a growing season that effectively started in June, I got three nice surprises:

  1. Aside from watering, it pretty much took care of itself.
  2. I got about a pound of ginger per square foot of container.
  3. It’s all immature or “baby” ginger.

The unexpected plus is that immature ginger root (shown below) is much nicer to use than mature ginger root.

 


Hassle-free fresh ginger tea?

Immature ginger — shown cleaned and bagged, above, and cut into chunks just above — lacks the tough skin and woody fibers of mature ginger.  (Note I did not say “fibers”, I said “woody fibers”.)  This makes it much nicer to use than mature ginger.   Among other things, it’s easy to slice (using the slicer portion of a garlic press), and cooked thin slices of whole root are pleasantly edible.

On the downside, some say immature ginger isn’t as strong-tasting as mature ginger root.  But ours is plenty peppery enough for us.  Others say that, lacking a tough skin, immature ginger has to be used fresh or preserved.  That drawback, I buy into.  After cleaning, the roots are nearly skinless.  They surely don’t look tough, the way mature ginger root looks.

Aside from ginger syrup (which yields crystallized (candied) ginger slices as a byproduct), my wife’s preferred bulk preservation method is to create ice cubes of frozen ginger puree. 

The sequence below shows chunks of (cleaned) immature ginger being turned into frozen ginger puree.

First, chunk (as above), then chop in a food processor.  After cutting the immature ginger roots into chunks the size of grapes, run those ginger chunks through a small food processor.  Pulse/scrape as needed until you get them to the consistency of a chopped-up paste.  Like so:

Then purée Add just enough water to let that mix circulate and turn into a smooth purée as the food processor runs.  If you were adding a small amount of citric acid as a preservative, you’d add it while puréeing.)  Let it run.  From chopped to puréed might be five minutes of food-processor running time.

Freeze as you would ice cubes.  Pour/spatula the puréed immature ginger root into a silicone ice cube tray.  (Silicone makes it easier to release when frozen.)

Store the frozen cubes in the container of your choice.

One cube yields one cup of ginger tea (with the addition of a cup of hot water and the sweetener of your choice.)  As if made from the fresh root.  Insoluble plant matter in the cube becomes dregs in the bottom of the cup.


Ginger syrup and crystalized ginger

To our surprise, ginger syrup and candied ginger are two products of the same process.  You boil thinly-sliced ginger root in water for half-an-hour.  Toss most of that liquid.  Add sugar.  Boil for another half-an-hour.  Pour off and save the liquid to be ginger-infused simple syrup.  Dust the ginger slices with table sugar, and leave them to dry.

The results, when dry, are candied ginger.

It’s candy, but you don’t pop these like Tic-Tacs.  Ginger root is peppery — the “gingerols” in ginger are analogs to the capsaicins in hot peppers.  This “candy” is not for the faint-of-heart.  And you’d best like the taste of ginger, because it’ll be with you for a while after you eat one.


A few comments on growing and harvesting ginger in USDA zone 7.

My prior post has most of the technical details on growing ginger in USDA zone 7.

Post G24-010: Growing ginger in Virginia? This needs a rethink.

Ginger is a tropical plant. 

My garden soil (in USDA zone 7) never gets warm enough to make ginger happy.  I have to grow it in some sort of container, so that the soil will get to the roughly 90F that ginger prefers.  This, in turn, meant hooking up some irrigation on a timer, because otherwise I’d forget to water those containers.  So there’s a fair bit of prep required to get this up and running.

This year, I followed the standard advice and started ginger inside.  The idea being that you need to start it 10 months before first frost, if you want any hope of harvesting mature ginger root.  But starting it early was a waste of time, because normal wintertime room temperature is too cold for ginger to grow.  So, unless you want to keep heating your ginger the entire time you’re growing it, all it does is sit around and wait for warmer weather.

Now that I know I actually prefer immature ginger root, next year I’m just going to plant it outside, in planters, around the first of June (Zone 7).  Knowing full well that I can’t get mature ginger that way.

At the other end of the season, my ginger seemed to stop growing entirely by mid-September here in Zone 7.  It didn’t die.  It just didn’t grow.  Again, now that I know I won’t get mature ginger root, I could dig it up any time time from early September onward.

The upshot is that in Zone 7, if you grow it in containers outdoors, you have more-or-less three months in which ginger will grow.  Any spring-like or fall-like temperatures seems to send it into hibernation.  To be a fair, it is a tropical plant. It’s my bad for planting it an inappropriate climate.  But the good news is that this seems to be plenty of time to produce a crop of immature ginger.  Which, as I noted above, just seem to beat the pants off of mature ginger root, from an ease-of-culinary-use standpoint.

Nothing bothers ginger, here in Virginia.  I had zero insect, animal, or disease damage on this little crop of ginger.

This is tough to clean!  If I had this to do over, I’d pick a different growing medium that wouldn’t stick together so well.  In the end, a) the ginger was firmly rooted in the potting soil I used, and b) every “elbow” of the ginger root (where two lobes grew close together) trapped dirt.  I had to break the ginger up fully into pieces, so that I could scrub out all the trapped dirt.

The upshot of all that is that the digging-and-cleaning step was tedious.  I don’t know how they get commercial ginger roots so clean, but I suspect it involves some sort of power sprayer.  Next year, I  think I’m going to try spraying it down, outside, using the garden hose.


Conclusion.

This year, I took the standard advice for growing ginger in a non-tropical climate, and sprouted it around February 1.

This turned out to be a near-total waste of time, because ginger won’t grow unless it’s kept really warm.  Specifically, warmer than I keep the inside of my house, in the winter.

As a result of their stubborn non-growth, I transplanted my pitiful ginger sprouts to containers, outside, in June. After they’d been more-or-less in suspended animation since they sprouted in February.

And that worked spectacularly well.  Assuming you want immature ginger root.  Which I now know that I do.

Without the thick skin and woody fibers of the mature root, immature ginger is just a whole lot easier to cook with.  Instead of having to peel it and grate it, you just wash it and slice it.  It’s soft enough and non-fibrous enough to go through the “slicer” section of a garlic press.

I’ve never grown ginger before, but a pound per square foot of container is an adequate yield from my standpoint.  That’s as good a yield as any root crops I grow in my back yard.  With the added bonus that the ginger plants are decorative, and that nothing in this region bothers it.  No bugs, no deer damage, no fungi or other plant diseases.

It’s a pain to have to grow it in containers.  But I consider that mandatory, as the soil in this region never reaches the 90F and up that ginger likes.

I’ll be growing this again next year.

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.