We have broken the climate. The world is on fire. Rivers dry up. Glaciers collapse and destroy towns. I fear for the topsoil. I fear for the famines. I fear for the people. And every new day will bring its Grace and I can enjoy the world for what it is.
My bicycle is in the shop. The chain had been skipping and also wrapping around the main cog. For $20 I replaced the chain myself, but the problem persisted. I enlisted the fine minds at the bike shop. The two bigger cogs on the crankshaft are worn out, and given the nature of how it is built, they need to replace the crankshaft. Can I do it myself? Installing the crankshaft is easy, but removing the crankshaft involves a special tool. I’ll leave it to the experts. Officially, it will be done in three weeks. Unofficially, based on prior experience, I wanted to believe three days but not everything I want to believe comes to fruition.
As far as my Garmin Watch is concerned, my exercise is whenever I track a bicycle ride. Since I am not tracking bicycle rides, Garmin has declared me a slothful, indolent creature, detraining at an exercise load of zero. Yeah? Well. I do feel a little crispier than usual about the various frustrations that come along at work!
A thought comes around: purchase a spare bicycle? As a good suburbanite family we own three cars. (The old gas minivan earns its keep a few times a year on behalf of the Scouts.) Two bikes is not so extravagant. But I’d want to kit it out with tough tires and something that can hold a backpack. Out the door for under $1,000? I met up with the Bike People the other night. Everyone has a spare bike, and the warning I anticipated: because you have a spare bike there’s no pressure to get it fixed up until your main bike needs service and now you have two bikes you can’t easily ride! Yeah I kinda figured.
Six years ago: the younger child waits for the daycare commute in his bicycle seat on the Blue Bike I Gave Away to Free Up Garage Space.
And I do have a spare bike: the big red cargo bike. But since I’ve coaxed the youngest into pedaling himself, the big red cargo bike has become a big red shelving unit in the garage that requires some “garage cleaning” to become rideable, and for the effort I get to pedal a truck of a bicycle.
And of course, you gotta check with your spouse. “I thought you already had a spare: that blue one?” “I gave that away to free up space.” So, I guess the spouse had already mentally budgeted a spare bicycle. A new pedal bike would still consume less space and weight than the old RadWagon did.
Really, I gotta find someone who wants an old bucket e-bike.
They say “infrastructure is code” – the DevOps Mantra. I say it myself.
I don’t call myself DevOps. (My employer does and I don’t argue with a paycheck.)
I write code to manage infrastructure. I am a DevOps Practitioner.
But …
I am large.
I contain multitudes.
I call myself a Systems Administrator.
Because, really:
Infrastructure is computers
Computers are largely code
Computers are more than code
There are cables and latches and screwdrivers involved
Infrastructure is also power, network, site planning, service agreements, security standards and processes and audits, recruiting, staff training, on-call schedules and standards, vacations, physical and mental health, procurement, shipping, payments, budgets. Infrastructure is so much more than code.
(On my current team we also advertise: Engineering Support services, Information Technology services, Audio-Visual services, Bicycle Maintenance, and Wildlife Removal. Multitudes!)
Infrastructure is not code; Code is infrastructure
And yeah you need to manage infrastructure resources effectively. Managing the code infrastructure means source control, automated tests, validation, pull requests, managing build/deployment infrastructure, &c.
There are cloud-only DevOps who wash their hands completely of the physical realm. All hardware is just an API. Good for them. They seem to spend a lot of time in meetings.
This is what you might see one day if you are a server who has been having an especially rough time.
For me … I’m a “full stack” engineer. Maybe I’m a full rack engineer. I have, in my career, managed most of the infrastructure components listed above. I’m grateful to work on a growing team that allows me to focus somewhat.
I keep a broad lens.
I enjoy managing infrastructure with code.
That frees up time and attention for the rest of the adventure.
I schlepped the family out to Sunol to ride the Niles Canyon’sM200 railcar. A railcar is a bus on rails instead of asphalt. The M200 was built in 1926, and was one of the early “skunk trains” named for the aromatic fuel it burned in its original gasoline engine, ferrying lumberjacks to their work sites from up in Willits. Later on it served as a school bus. When the Niles Canyon folks got ahold of it, they swapped in a diesel engine. I got to ride up front, next to the box that houses the diesel engine, taking in the heady aroma. I smiled to see that the rear view was a modern aftermarket backup camera system, and the speedometer looked like an old smart phone showing a GPS-derived speed estimate.
A happy coincidence: I wore my Wente t-shirt on the day we rode the M200. Wente Scout Reservation shares the skunk branding with the nearby railroad.
We rode East from Sunol along the original Transcontinental line from Sacramento to San Francisco, which used to run across the Dunbarton Bridge to connect with the now-Caltrain line up to San Francisco. The tracks had been pulled up long ago, but the volunteers have been laying “new” tracks East toward Pleasanton, which is as far as they own the Right-of-Way. The “new” tracks are old tracks that Caltrain replaced as part of the electrification upgrades. They may not be suitable for California’s future bullet train system but they’re plenty handy for a heritage railway running a motorcar at a top speed of 10 mph. The original line went up to 40 mph, explained our host.
Barry Lyndon
Of even more obscure appeal than a hundred year old railcar is a fifty year old Kubrick film. In July I took the Caltrain up to San Francisco and a Muni bus over to The Roxie. I left the family behind because I’m not a sadist. I had a burrito for dinner at Pacho Villa’s and because I’m an old-fashioned cheapskate who eschews online convenience fees, I had to wait in the standby line because it was a “full show.” After the train ride and the burrito, the standby line just added to the sense of adventure: maybe I wouldn’t get in!? The standby line self-selected down to four folks and we all made it in just fine. I sat mid-way near the aisle, behind a large afro that enforced good posture on my part and next to an autistic fellow who managed to unobtrusively stim during the more emotional scenes. I drank two cans of beer from the concession stand.
The movie was magnificent on the big screen. Worth the trek. A prideful young Irishman finds himself living an adventurous life in the 18th century. He learns to be wiley and shrewd and ultimately marries into Class, where that self-centered wily shrewdness renders him an insufferable Jerk. Rise and Fall. A good story with duels. If you like the musical “Hamilton” you might also enjoy the story of Barry Lyndon.
I had some errands to run so I ran them on my bicycle.
The ride up to OfficeMax was uneventful for the most part. In Mountain View, El Camino has a mostly very nice protected lane. At one point where the protected lane becomes a dashed green mixing zone, a Tesla tried to merge into me so that they could make a right turn. It was slow enough that I just yelled and yelled and yelled until they stopped. Something like “HEY HEY HEY HEY HEY!!!!!” I saw everything happening and didn’t feel endangered. When you’re riding on the street, you ride with hyper awareness.
Along the way, I also managed to share a thumbs down with a Nazi-era Tesla, and even flip off the cyber cab. You know: a great ride.
An intense ride to fulfill a dull mission.
I found the pens I wanted to buy. My current favorite is a Tul fine point gel. Specifically, the fine point gel pen they sell near the register for $1.70 versus the fine point gel they sell from the pen section at 4/$10. What’s the difference? No idea! But the one in my pocket looks like the cheap ones so I stick with a winner.
Next stop was Best Buy, just where the protected bike lane ends at the Sunnyvale border. I returned a hard drive the younger son had wanted, but which proved incompatible with their frankensteined donated Linux gaming rig.
I decided to take El Camino Real just in case I saw something tasty for lunch. Normally I would not ride my bicycle on El Camino Real in Sunnyvale, because there’s no bicycle infrastructure. It is a grim place to ride. But I felt it was my right.
I took the right lane, as one should. This ensures that I am highly visible, and my behavior is consistent versus riding along in the gutter and weaving into traffic whenever there’s a parked car or other road hazard. Right away, I heard honking in the distance. It was a blue Tesla purchased since Elon did his Hitler salute. The driver for which I have the least empathy. He got closer and honked some more. So I stopped. In front of him.
“Go around!” I gestured.
He put his hands up in frustration. What is going on here? This bicyclist is telling me to use one of the other three lanes of traffic!?
“Go around!”
“Go.”
“Around.”
“Fricking Nazi,” I mumbled as he merged into the next lane and I resumed pedaling. He turned right two blocks down, heading for an apartment building. For the next few lights I noticed the same gold-colored car following me. I was glad because it meant that in traffic, and with a shot of adrenaline, I am just as fast as any other car in the right lane. I sped right past The Greek Spot which I had had in mind. I was too full of speed to make room for gyros.
A Cadillac SUV honked its horn as it passed me in the next lane over.
“Fricking Slowpoke” I yelled as I rode past their open window, turning left at the next red light.
I cruised up to a four-way stop, and someone in a minivan who had the right of way tried to wave me through but within half a second realized that they would pointlessly hold up waiting traffic. I was proud of them for their awareness. They went on their way, and I resumed pedaling.
At Evelyn, near Murphy, as is often the case, some poor rideshare driver was waiting to do a pickup in the bike lane. As I do so often, I rode up to their open window, and at the volume of a bicyclist accustomed to conversing with automobiles on busy roads, explained to them that this was a dangerous situation, and that there were several parking lots and loading zones adjacent to where they were sitting. They politely agreed as I yelled “thank you for your cooperation” pedaling away towards home.
I arrived home wearing a sheen of well deserved sweat. A great ride! Time to settle in to a quiet Sunday afternoon.
Full disclosure: I got this from Claude after a bunch of more traditional research didn’t get me there.
Use case:
you have a server with a bad disk
and low urgency to replace the disk
automation which detects and uses available disks
also, the drive numbering is non-deterministic at boot
so you want that disk to not be used until you get around to replacing it
The basic workaround to disable a disk, for example:
echo offline > /sys/block/sdd/device/state
That is fine until you reboot. You need something more robust.
Above, I suggested you had “automation which detects and uses available disks” so you could implement a blacklist mechanism in your automation. I thought I would mention that.
Okay, so, here’s the solution that Claude gave me. It works for me so now share with you.
First, get the serial number that udev sees. For example:
> udevadm info --query=property --name=/dev/sdd | grep ID_SERIAL_SHORT=
ID_SERIAL_SHORT=abc123
And tell udev to … I think this means “when you add it, delete it”
Okay, so, why am I posting some AI slop? Well, because I like the idea that if you search for an answer on the Internet it ought to be out there somewhere. And whatever advice you find on online, in a blog, in a forum, or from an LLM, you need to test that out yourself. I found a solution that works for me, so I am posting it online for others to find, and test, and use.
I don’t reckon anyone is going to get on my case, but I figured I would offer that description and the caveat up top just so we’re all on the same page.
one disk fails: the RAID5 continues to function in a degraded state
one attempts to replace the failed disk, but pulls (hot swap) an active disk instead
Ideally you pull from backups into a new or rebuilt system. But what if you wanted to get at the data on the broken RAID? I recently ran through this exercise.
To check out the health of the RAID you would say, for example mdadm --detail /dev/md0 which gives you plenty of detail, including, for example:
[...]
State : active, FAILED, Not Started
[...]
Number Major Minor RaidDevice State
- 0 49 1 sync /dev/sda1
- 0 33 2 sync /dev/sdb1
Let’s say /dev/sdd1 had failed and /dev/sdc1 had been pulled in error. You can inspect each disk with, for example: mdadmn --examine /dev/sda1 and note useful stuff near the bottom. The sample output here is heavily trimmed for clarity.
/dev/sda1:
Update Time : Fri Jul 17 14:42:15 2026
Events : 1100008
Device Role : Active device 0
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdb1:
Update Time : Fri Jul 17 14:42:15 2026
Events : 1100008
Device Role : Active device 1
Array State : AA.. ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdc1:
Update Time : Fri Jul 17 14:42:00 2026
Events : 1100000
Device Role : Active device 2
Array State : AAA. ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdd1:
Update Time : Thu Jul 16 14:42:00 2026
Events : 1000000
Device Role : Active device 3
Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)
This says:
sda1 and sdb1 were last active in an array with two active members
sdc1 was active in a three-member array
sdc1’s update time ends 15 seconds before the last update for sda1 and sdb1
sdc1 is missing 8 events that sda1 and sdb1 enjoyed together
sdd1 was last active yesterday, 100,008 events ago, and when it died it was in an array with four active members
So, sdd1 is the dead disk and sdc1 was errantly pulled. But they can’t just form an array because their metadata do not line up.
We can try manual assembly. First, I run --stop to “forget” the two-element array, then try mdadm --assemble:
# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
# mdadm --assemble /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1
mdadm: /dev/md0 assembled from 2 drives - not enough to start the array.
“But I asked it to use three drives! Oh yeah, the event count differs on sdc.”
Next, you spend some quality time reading the man page, and you perform your own risk analysis.
If approriate, you might be able to “fix” your RAID thus:
# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
# mdadm --assemble --force /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1
mdadm: forcing event count in /dev/sdc1(2) from 1100000 to 1100008
mdadm: /dev/md0 assembled from 3 drives (out of 4).
At this point, you may find yourself with a working RAID and a filesystem you can mount. Copy off whatever data you value to an array that hasn’t been “forced” together!
A theme I experienced yesterday is the human need to make.
Justo reached into his pocket and gave me a bracelet. Orange and black, woven tight from plastic bags — the ones the men inside Alligator Alcatraz repurposed with their own tired hands, because human beings will make something out of nothing if you give them nothing long enough. They make them for each other. They make them because making something is the one thing a cage cannot take from you.
You can read about Justo Betancourt, and how our government forced suffering upon him and continues to force suffering on our “unwanted” people. The barbarity and cruelty is sadly familiar to any American who is paying attention. We each resist in our own ways. We each must maintain our own sanity.
Sam Hamper has a very nice video about how he likes to sketch things, not in order to produce content, but just because the process of paying attention is gratifying in itself. You don’t take a walk to achieve something: you take a walk because it is something you need to do. Similarly, spending time observing things is something you need to do to feel whole and human. He notes that attention is rated as a most valuable “commodity” these days, and that you don’t have to sketch to focus on the moment: but sketching is what works for him.
I likened his sketching to taking notes at a meeting. I don’t usually take notes. Most meetings I tend to be checked out. When I do take notes, they are rarely useful beyond the moment, but the habit helps me focus my attention on what is happening. Some meetings I care about.
There’s a larger thing afoot with AI. I find it to be one of several handy tools in my day job: how do I correctly iterate through a dictionary list in this context? Other folks use AI to do the job of junior engineers. That sounds powerful but lonely. I believe that if you’re going to mentor something to do the work, empowering a human to grow is amazingly gratifying. I doubt work styles like mine are going to be replaced overnight, if ever, but … as a 50 year old tech worker, I have lately taken an interest in hand tools.
Watch Rex Krueger explain how to plane a board flat. You could run that board though a pair of machines or a table saw lickety split. But there’s something enjoyable about the process. Maybe. But you have to get the right tools and you have to make them sharp. What I did manage last night was to practice sawing into the end of a few boards at an angle. I am a couple of chisels away from attempting a dovetail joint. For practice. To see if I like the process.
Surprisingly not as scary as vi. I doubt the rest will come too easily.
I have a modest collection of power tools, but the hand tool thing feels “Unixy” to me: a collection of small tools that aren’t without a learning curve, but with a little practice you can get up to speed and enjoy the work of building useful things.
Tonight is the last night for The Late Show with Stephen Colbert. I’ll watch it tomorrow on Paramount+. I canceled my annual subscription, which would have renewed in early June.
I never used to be a late night TV watcher. It is a nice format, though. Especially when the news has become such a grind. A friendly face samples the day’s crimes, chews a few bites into a bolus of rage, breaded in wry humor with a tangy glaze of hopeful frustration, and pops it down my exhausted, slack-jawed maw. Between All the Star Treks and Stephen Colbert, the Paramount+ subscription made sense for me. But I have watched All the Star Treks and tomorrow I will have watched All the Colberts.
Thank you for the past decades of entertainment, Stephen Colbert! I am going to miss you!
Here’s my gripe with how the show has been distributed. I’m not staying up late to watch. I’m not sure I can even get CBS on my antenna. I know we do get NBC because I “stay up late” to watch Saturday Night Live during the national broadcast at 8:30 pm Pacific. If late shows did that … I mean it is pre-recorded anyway … maybe just post the episode to the paid streaming service at air time?
… I wait until the next day. But why, as a paying customer of Paramount+, can I watch clips of the show on YouTube for free tens of hours before I can watch the show on Paramount+? Why the delay? Why? And what I would really really have enjoyed, since the show on Paramount+ has no commercials, why not let me hear the band play through the breaks? I assume that was a hassle with potential royalties if they played covers. “Move On Up” …
On Monday, they did at last let the band play on, by posting a full, un-cut episode, which you can watch for free … on YouTube. The band improvised and jammed and it was wonderful:
Along the way, we had been hoping to meet up with my Uncle John, who was traveling in his van. Unfortunately, the van had broken down in New Mexico, and parts were hard to acquire. He had hoped to meet us at Grand Junction, then Silverton or Durango. But now he had finished repairs at Albuquerque. I had chosen not to structure the day, but figured we might stay in Golden, outside Denver, possibly visit the Colorado Railroad Museum along the way to the airport. With about 90 minutes of sunlight left, we set our sites South of Denver: Cañon City, still in the mountains off of I-25.
Cañon City’s economy has long relied on the prison industry.
We had a nice dinner downtown. As the meal wound down I rolled over to a budget hotel two blocks away, which boasts a pool and a hot tub and an indifferent clerk, who charged my card and handed me key cards to a pair of rooms which were … adequate. The next morning, waiting for people to stir, I took a nice walk around the old part of Cañon City, taking pictures of dinosaur statues and the historic prison. Uncle John rolled up, and we all brunched in the dining room of the historic hotel three blocks over, and someone asked why we hadn’t stayed there. I had asked myself the same question. However, the budget hotel had a pool and a hot tub, though I don’t think any of us ever confirmed this with our own eyes.
After breakfast at the fancy hotel where we didn’t stay, Younger Son was drawn to their pool … table.
Cañon City has a tourist railroad. It boards just across the street from the budget hotel. I looked into it. The fare was about 50% more than a night at the adjacent budget hotel, and 25% higher than the Durango and Silverton. The trip is half as long. A diesel engine from a freight train. “But the cars have premium butcher block dining tables where you will eat food from our onboard restaurant. And yes, German tourist, you should tip the server.” On the day of my 50th birthday in January I took the family on a “wine train” excursion near Sacramento. It was okay, but what I figured out is that there are two kinds of tourist trains you can ride: one kind is the “historic preservation” railroad where folks who love trains try to fix them up As They Were and fund the work with rides and tours. The other kind is “that old branch line is worth money.” Go find some old rolling stock and a business plan and Capitalism ensues. I gave the Royal Gorge Route Railroad a pass.
Our Budget Hotel room window opened onto the alley, which was alright. On my walk, I noticed that at some point they apparently lost interest half way through re-painting the exterior.
We had an afternoon flight, and had had a fulfilling week. Our next destination was Denver International. Instead of making a beeline to I-25, we chose to drive Northeast, milking the experience of rural highways for one last hour, until we hit Colorado Springs. There, Grandma and Uncle John kept Northeast in the van, bound for Chicago. I merged onto I-25, commencing our return trip to Civilization.
The next day, we drove East along Highway 160 through the San Juan Mountains. A quiet green river valley in a bowl of pine trees. We lunched at a cafe in Del Norte, which we learned was pronounced “del nort,” then we headed North. There were a few delays for road construction on the two-lane roads, and one delay due to someone flipping a pickup truck. We made Bishop Castle with twenty minutes to spare before it officially closed at 6pm.
Chess match in Del Norte
Bishop Castle is built on uneven ground. Grandma waited in the car as we crossed the drawbridge and climbed up the spires to the Great Room of what could pass as a rustic cathedral if there were a congregation around to enjoy it. The place was hand-built in the middle of nowhere in defiance of the government and its pesky permitting and construction safety standards. You visit very explicitly At Your Own Risk.
The dragon is capable of spitting fire.
Younger Brother understood a world-class playground structure, and proceeded up and up and up and up the dubious spiral staircase, trailed by Mom, who had selected the destination. Older Brother and Dad carefully picked our way down and tried to spot our loved ones from six stories below. I left a donation at the gift shop. The place is a work of art: art of course is in the eye of the beholder. To my eyes, the place is a monumental tribute to poor judgment.
The object of my quest was to ride the Durango and Silverton Narrow Gauge Railroad, a train I had missed on a couple of occasions. This trip being the occasion of my fiftieth year on the planet, I splurged for two nights and two rooms at the General Palmer Hotel, next door to the train station. Who is General Palmer? A Civil War veteran who built the Denver and Rio Grande Railroad is who. The original ambition had been to build a line from Denver to Mexico City. Americans know the Rio Grande as the Mexican Border, but it flows to that role from Southern Colorado down through New Mexico. Anyway, he had to battle the Santa Fe railroad. The battles were fought in state and federal courts and with guns in the Royal Gorge and Raton passes. Ultimately, the narrow-gauge Denver and Rio Grande curved not South to Mexico, but West through the Rocky Mountains to tap lucrative mine traffic. They built a branch line to Silverton, where Silver and Gold were mined. (“Silver … mined by the ton!”) The last of the mines closed in 1992, but the first tourist train, “The Silverton,” began running in 1947. Durango sprouted a tourist district near the station in subsequent decades. The Durango and Silverton was spun off in 1980, and when the world isn’t on fire, steam trains run daily from Durango. Though, in the winter, they only run as far as Cascade Canyon.
The General Palmer is a comfortable hotel, ideally located for catching the morning train at 9:15. The gentle toots next door remind you that Train Time approaches, so finish breakfast! There were three options for tickets: First Class 21+, where you get to sit at a table far from any children and drink, I guess; First Class, which is a glass-top observation car built a decade ago; and Coach Class, which is upholstered seating in vintage passenger cars. I wanted to ride a properly old train, and the old coach cars have toilets, so I opted for thrifty seats with handy access to bathrooms.
The Engineer inspects D&S steam engine 482 at Durango station.
The desk clerk, himself a father, gave me a list of budget-friendly family activities. First on the list is a hamburger place on the other side of the downtown area that will serve you a burger for $3.50. That sounds swell, but when you’re travelling hamburgers become the stopgap food for when you’re hungry and desperate for something predictable. Our first night in town we dined at a saloon in the other fancy old hotel a block away. We were waited on by “saloon girls” in corsets and fishnets and sensible flat shoes. The ladies were upstaged by a guitar player. At each table there was a two-page menu of songs that he knew, and he knew others as well. We had fun singing along between bites of tasty food. The second night, after our train ride, we went to another restaurant a block away that was the sister of a concert venue. The service was stellar and the delicious food a little more creative than we had hoped. My wife had the prime rib, and I indulged a boozy milkshake for dessert.
A “postcard view” of the Durango & Silverton chugging up the mountain, the Animas River far below.
Between those dinners we caught The Train, which is the whole point of visiting Durango. General Palmer serves a breakfast buffet next to a gallery looking out at the railroad. Eat your eggs and amble over to the train at 9am. Fifteen minutes later, you start to move and smile at the gusto with which the engineer whistles the train’s way through Durango. Up the river. Higher. Higher. Before very long you’re chugging along cliff faces between a river gorge and rock walls. Trees and rocks and river, and on our journey, snow that grew from a hint of dust to a flurry of floppy wet April flakes as we climbed the mountain. There’s a reason the train only runs halfway to Silverton in April: the mountains of Colorado get extra months of Real Winter.
D&S 473 poses for photos on the Wye track at Cascade Canyon, on a wintertime excursion before the return to Durango.
It is a five-hour excursion. The passengers in coach class began to mingle. Our section was older men from the Midwest with familiar relationships to the University of Illinois and Purdue. The chatty great grandpa who used to hang drywall in Florida asked the conductor his age: seventy-eight. Great Grandpa was a mere seventy-six! Folks wandered to the snack car for something to do and we took turns standing in the open-walled observation car, gawking at the scenery and testing our camera skills until numb hands coaxed us back inside. The observation car was two back from the Engine, and as the engine chuffed over a bridge it shot off extra steam on either side. What’s going on? In a moment, we saw the rainbows!
My Sweetheart and I together on a snowy bridge over a river at the end of the world.
The train backed into a wye track at Cascade Canyon, and we had 45 minutes to frolic. I walked around the train, took selfies with the engine. The snow fell faster. The Earth was quiet. I walked back and found the end of the track, then up a short trail to a bridge over the river, just downstream from where a tributary joined. Most folks by this time had returned to the warmth of the train. My wife and I enjoyed a quiet moment with the snowy river. Back at the train, I lingered alone, enjoying the scene, the quiet, and letting the snow accumulate on my shirt. As the conductor came along, preparing for departure, I climbed back up the stairs, for our return trip to The World.