Recent Pictures

I continue to take pictures, but haven’t posted here for a while. Here are some of them.

Gilligan has had an eventful spring. She has made peace with Hazel but not with Ginger.1 Ginger would rather run, which results in a chase – romping fun for Gilligan. Then one day, Ginger was lying on the couch and Gilligan decided this was the day to lie on the couch with her instead of bark and chase. Progress!

Like most labs, Gilligan is a sweetheart. She cuddles with all of us. When I sit on the chair with the ottoman, she jumps up and lies across my feet. But she has a special place in her heart for Heather. Heather seems to be a good pillow.

Gilligan had a recent visit to the vet. She came home with a plastic “cone of shame.” After a day of Gilligan ramming it into walls and furniture, Heather got her an inflatable tube that goes around Gilligan’s neck. It doesn’t have the same ability to prevent scratching with her hind legs, but she likes it and doesn’t try anything. In fact, it seems that Gilligan feels pretty wearing it.

Mousse also visited for a weekend. She loves our backyard and walks. :-)

Pioneer Courthouse Square had a flower sale. Rather than bringing the plants ready to sell, they came pre-bloomed, that is, before they had bloomed. Over the course of a week or so, the flowers bloomed in preparation for the sale.

Jamison came home for the long Memorial Day weekend, and brought 9-10 college friends with him. Had he been in high school, we might have taken pictures of the whole gang. Instead, we captured the artwork one did while here on an Etch-A-Sketch.

On the way to work, I take pictures. The other project manager and I have done some walking 1:1s around Portland. It’s a beautiful place to be.

I hope you’re taking the time to notice and enjoy the sights you see. Have a great week!


  1. In fact, Gilligan and Hazel clean each other. :-D 

Breathe SVG

Playing with SVGs is fun. Making them by hand and optimizing them, even more so.

The “Brent Logan” with the embedded heart in this site’s heading is an SVG. The heart at the bottom of each post is an SVG. This “breathing” circle is an SVG.

I’m amazed how small SVGs can be. This circle, including the animation, is less than 240 characters. That’s smaller than a tweet.

Here’s the code:

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><circle cx="1" cy="1" r="1" fill="#08c" style="animation:b 9s infinite"/><style>@keyframes b {0%,to{transform-origin:center;transform:scale(.2)}50%{transform:scale(1)}}</style></svg>

I started this exercise animating the heart to “breathe.” I wanted something to watch and synchronize my breathing with to relax and destress. I knew SVG would be a quick way to get there. So I modified the “beating heart” SVG I already had.

Here’s the modified “breathing heart” code:

<svg viewBox="0 0 23 22"><path stroke="#c23" stroke-linecap="round" stroke-width="13" d="M6.6 6.6q1 3 5 6 4-3 5-6" style="animation:b 9s infinite"/><style>@keyframes b{0%,to{transform-origin:center;transform:scale(.2)}50%{transform:scale(1)}</style></svg>

Although it’s only 290 characters, I knew I could go smaller, hence, the breathing circle.

Along the way, I learned interesting things about defaults, browser prefixing, and CSS animation. Good times!

Update. I got the breathing circle down to 147 characters! That’s barely larger than an old-style tweet.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="-4 -4 8 8"><circle/><style>circle{r:4;animation:b 9s infinite}@keyframes b{50%{r:1}}</style></svg>

Yeah, I did lose a little along the way: the circle is now black and the smaller size changed slightly.

Using what I learned on the breathing circle, I was able to get the breathing heart down to 232 characters. That’s smaller than the blue breathing circle at the top of this post!

<svg xmlns="http://www.w3.org/2000/svg" viewBox="-12 -10 24 22"><path d="M-5-3q1 3 5 6 4-3 5-6"/><style>svg{animation:b 9s infinite;stroke:#c23;stroke-width:13;stroke-linecap:round}@keyframes b{50%{transform:scale(.2)}</style></svg>

I kept the heart’s color as-is!

Update 2. I kept reading that the xmlns namespace attribute wasn’t necessary for an SVG that’s embedded directly within an HTML document, but I couldn’t make it happen in WordPress without the SVG code getting munged. That is, until I tried putting it in an HTML sidebar widget. Only 112 characters!

<svg viewbox="-4 -4 8 8"><circle/><style>circle{r:4;animation:b 9s infinite}@keyframes b{50%{r:1}}</style></svg>

Interestingly, the success is not universal. It seems to work everywhere except Firefox which complains about r as an invalid property. It’s not interpreting it as an SVG. I also discovered that uBlock Origin notices its initial size is zero pixels and blocks it as a potential web tracker.

HBR: “What Anxiety Does to Us at Work”

What Anxiety Does to Us at Work.” A good, short list by Alice Boyes at HBR.org of negative tendencies when under stress:

  • You misjudge the view others have of you.
  • You’re defensive about feedback.
  • You avoid situations then get perceived as difficult.
  • You react negatively when presented with unexpected ideas.

As a good reminder, if the anxiety is office-wide, it’s likely others are exhibiting the same tendencies. Definitely worth a quick read for the detail and helpful suggestions.

Final Game of Thrones show prediction

My prediction: Bran Stark wakes up, for real this time, and realizes the last eight seasons were just a coma dream. No red wedding, no white walkers. He even dreamt the wrong reason for his fall — he was just clumsy. Everyone loves everyone else and the final episode is a happy family reunion.1

No spoiler warning on this one. If I’m right,2 we all deserve it.


  1. Okay, probably not. But that’s my prediction based on … nothing. I haven’t watched a single minute of the TV show. I read the first four books of the series and even started the fifth after reading this review. But then, I quit. Convince me to watch the series. ;-) 
  2. There’s not a chance I’m right, but wouldn’t it be fun if the episode went the bloody way it’s going to and then my prediction played on the side during the final credits? :-D 

Scenic Loop

Headed home from Walla Walla, Suzi and I made a few stops in the Gorge. The first was Mayer State Park where I’ve taken a few pictures. A group was preparing to paddle to Hood River, a distance of probably eight miles. They were in long, slender kayaks that an online search says are called “surf skis.” One of the skis had an outrigger pontoon so the paddler used an oar instead of a kayak paddle.

When they left, we did too. We headed to the scenic loop between Rowena and Mosier.

We stopped in the iconic loop below Rowena Crest Viewpoint to enjoy some flowers, not knowing what was to come shortly.1 At the viewpoint and the adjacent Tom McCall Preserve, it became obvious – fields of yellow balsamroot flowers!2

We hiked the trail to McCall Point, taking pictures and making friends along the way. We also saw a bald eagle and a rattlesnake.

We tried to take selfies multiple times, but the sun, wind, and clouds all conspired against us. No worries!

After our hike, a quick trip to Doppio in Hood River capped the day. Mmm… :-)


  1. I was disappointed there were no longboarders bombing the hill. 
  2. And a fair amount of poison oak. Three days later, I think it’s safe to say I wasn’t exposed. 

Empathy

What is empathy?
What are its goals?
Its risks?

Should we offer empathy to enemies?
To those who don’t?

Is it empathy if we don’t “get” another?
But instead who we mistake them to be?
Wish them to be?
Can charity and empathy be at odds?

Is there a risk in rethinking empathy?
Is that risk less empathy?
Or more?

Invisibilia’s The End of Empathy1 tells the same story from two perspectives, one with empathy2 and one without.3 In the process, it addresses these questions. At least, it talks around them. It certainly doesn’t answer them. But you have to answer these questions for yourself, regardless. Good luck!


  1. Trigger warning. Suicide, abuse, threatened violence against women, weight shaming, misogyny. Incels. 
  2. Maybe? 
  3. Again, maybe… And that’s the point.