Sunday, June 28, 2026

Alexa Succeeds Where I Fail (Parenting)

Thinking about "task interruption" and "transition warning" and "neutral third-party" and "unconscious conditioning" I've stumbled onto something that's been really helpful with our non-verbal child.

 

There will be times when he needs a diaper change but doesn't want a change.  If I'm pretty sure he needs one but I ask him and he says no, I'll ask "do you need a timer?" and he'll respond affirmatively.

 

I'll say "Alexa, set a timer for x" where x is anywhere from 2 minutes all the way down to 2 seconds, depending on what his mood looks like, it he needs a cooldown or if he's already 99% ready to go.

 

When the timer goes off, he often hops right up and goes to his room. Sometimes I'll have to point out the timer has gone off, but then he's compliant and we'll go in and get the diaper taken care of. But because it's not me making the demand but Alexa, he can't fight or protest. (And he knows Alexa will just keep sounding the alarm without getting tired until we turn it off.)

 

(When we were recently on vacation, I didn't have Alexa and I had to mimic the Alexa voice and the doo doo doo sound myself but it still worked.) 

Tuesday, May 19, 2026

A Rebrand Worth Mentioning

I really love this rebrand. I was done thoughtfully, explained well and just looks phenomenal. Kudos to The Help Group. I haven't been able to find any information about whether this was done in-house or with a marketing partner. 

Here's the email introducing the rebranding. You may have to right-click to view it large enough to read it. (And yes, they are violating CAN-SPAM. Well, that's something to work on I suppose.)


Here's the animated image from near the bottom of the email:


Sunday, May 17, 2026

Recent Finds

Interesting things I've read recently...

  1. A 15-Year-Old Built a $12 Electric Generator to Power Remote Homes Using Ocean Currents (dailygalaxy.com) - She got the idea from the waves under her boat and thought of her Ethiopian pen pal who doesn't have access to reliable energy. She protoptyped it, entered it in a contest, won a bunch of money (which she's sharing with her pen pal and her pen pal's school) and as part of the contest, is now working with 3M to try to bring the idea to market.
     
  2. ‘Robots don’t bleed’: Ukraine sends machines into the battlefield in place of human soldiers (cnn.com) - A look at how Ukraine is using robots in place of soldiers in battle. This is the early days of those Terminator documentaries, right?
     
  3. Daring and Dazzling, a New LACMA Floats Above Los Angeles (nytimes.com) - It's had its detractors, but the new LACMA gallery sounds pretty cool. 
     
  4. The avionics suite designed to let anyone fly a plane (newatlas.com) - Airhart Aeronautics is trying to build an interface/dashboard for airplanes that make them much more straightforward, with the idea that flying should be something anyone can pick up.
     
  5. AI is eliminating one of the biggest bottlenecks of car design (fastcompany.com) - Computers replaced models and wind-tunnels, but the processing still takes a lot of time. AI is speeding that way up.
     
  6. Mercury has a 10-mile-thick layer of diamonds under its surface (thebrighterside.news) 
     
  7. How Airports Are Preparing for Advanced Air Mobility (flyingmag.com)
     
  8. A Middle School Student Built a Sidewalk Material That Absorbs Rainwater Instead of Flooding Streets, Using Materials Most People Throw Away (dailygalaxy.com) - apparently quite an improvement on current "porous concrete" - could change the way storm water systems are integrated into roadways
     
  9. Scientists discover a universal law across every form of life on Earth, severely challenging evolution theory (earth.com) - 30,000 measurements across 2,700 species (humans, animals, plants, microbes) determined that all have a pretty consistent point where their efficacy drops off dramatically. (This has implications for the rising heat on this planet.)


Tuesday, April 14, 2026

Deceptive Subject Lines


Three recent laws (Washington, California and Maryland) are going to see Email Marketers rethinking their subject lines. While they vary somewhat in application, all three laws will inspire class action lawsuits for deceptive subject lines.  In Washington State, the penalty is $500 per email to a Washington State resident. Similarly, $500 per email for Maryland residents and $1,000 per email for California residents.  

There are some nuances (it's a little harder file in Maryland, California adds a twist to make it more difficult to get the case thrown out - but also caps the penalties at $1m per suit) but it all boils down to: does the subject line contain a provable falsehood? Doesn't matter if there's a caveat or legal disclaimer in the body of the email, does the subject line by itself contain a falsehood?

The examples fall into seven main categories:

1. Your subject line implies eligibility or pre-qualification

You claim “You qualify for…” or “You’re eligible for…” or “Reserved for you” but you haven't actually determined their eligibility or everyone qualifies. 

2. Your subject line says it's free but it's not

Your subject line suggests there's no cost, but there is a cost or other strings attached. It's not truly free. ("Free with purchase" is a big one.)

3. Your subject line promises savings or discount that might not be available

You tell readers they can “Save 25%” but the email says most won't qualify or you say “biggest savings of the year” when there's evidence of larger sales in the past year. It's ok to be vague, but if you make a claim, the claim must be accurate and it must be available to all.

4. Your subject line implies a deadline or urgency 

Your subject line says “Ends tomorrow” or “Last chance” or “Final hours” but it's not the last chance - the deal is honored after the indicated deadline or it was quietly extended or the aforementioned deadline mentioned doesn't apply to all recipients or website visitors. 

This is easy to prove by simply witnessing the deal still exists after the deadline.

5. Your subject line implies scarcity

Your subject line says “Only a few left” or “Limited quantities” or “Selling out fast” but the ofer is digital (unlimited) or you don't actually know how much inventory remains (or you know there's lots of inventory left).

For physical goods, it may be more of a challenge to prove without access to inventory or without monitoring the website over a sustained period of time to show continued availability.

6. Your subject line lies or makes a claim that isn't proven or misleads the reader

Your subject line says you're the "best" or "most popular" (compared to your peers) or suggests a ranking that doesn't actually exist. 

Your subject line suggests the email was supposed to be an internal email that was accidentally sent to subscribers.

Your subject line implies an error, correction, apology or retraction when you didn't actually make a previous public error.

7. Your subject line implies personalization or makes the reader think it's transactional when it's not

Note: This is more specific to California or nationwide via CAN-SPAM, but it's good to keep in mind. 

Your subject line suggests that the email is a "Re:" (reply) or "Fw:"/"Fwd:" (forward) when it's just a marketing email.

Your subject line makes the reader think it's a receipt or transactional message but it's just a promotional message.

Your subject line makes the reader think it's in service to their account or membership but is actually just a promotional message.

To sum... don't be a deceptive marketer. People who feel misled vote with the "unsubscribe" or "this is spam" button. Build a long-term relationship with your readers, don't try to get one over on them. It's not clever, it's frustrating and we see you. 

AI helped me with the research on this article and AI created the image inspired by Parks & Recreation.


Saturday, April 11, 2026

120: Block Party Prison Fundraiser Timid Efficient Punishment

 Getting started: https://www.dylandrakes.com/writing-prompts and https://www.name-generator.org.uk/ 

  • Genre: Crime/Prison
  • Location: Block Party 
  • Conflict: Having to Punish Someone
  • Occupation: Fundraiser
  • Positive Trait: Efficient
  • Negative Trait: Timid
  • First1 (Pro): Nadia
  • First2 (Ant): Max

Two minutes on the clock... and go.

The block party had been a success. Well, it was sort of almost still a success. Only Max had apparently convinced half of the businesses to contribute to a non-existent fundraiser. And it had been going so well. It was well-attended, lots of families, lots of kids, lots of people lined up at the booths. The air smelled of popcorn and cotton candy, but also so many food trucks. And maybe even a little bit of exhaust from all their rumbling generators, but that was food trucks for you.

Nadia seethed. This was going to make her look bad. To hear the shopkeepers tell it, the story was simple and Max was so believable. And he was her co-chair for the event, so if a fundraiser was part of the festivities, why not chip in? 

She wanted to march right up to him and... well, she didn't know. She fantasized all kinds of violence, but, she wouldn't. She couldn't. But what could she do? She needed to confront him. He didn't know it yet, but he'd been found out and this was going to land him back in prison.

Grrr! She stamped her feet, now angry at herself for her inability to just confront him. To stick her finger right in his face and tell him what a bad thing he'd done. But instead, she felt weak and wanted to run to her car and hide and hope that the shopkeepers took the justice into their own hands.

And now, an AI:

The sun beat down on the pavement of Block C, where the "Block Party" was less about burgers and more about survival. Nadia, the yard’s most efficient fundraiser, clutched her ledger. She didn’t deal in contraband; she managed the protection pool, ensuring every inmate’s "subscription" was paid to the Shot Caller.

Nadia was valued for her math, but cursed by her timid nature. Her hands shook as she approached Max, a brute who had spent his commissary budget on tattoos instead of his weekly dues.

"Max," she whispered, her voice cracking. "You’re short. The bosses... they noticed."

Max laughed, leaning against the chain-link fence. "What are you going to do, Nadia? File a complaint? You’re a bean-counter, not a hitter."

The yard went silent. Nadia felt the cold gaze of the guards and the even colder stare of the syndicate leaders by the bleachers. She had been given a direct order: No exceptions. To maintain the system she had so carefully organized, she had to punish the deficit.

She didn't use a blade. She simply signaled the kitchen crew. By dinner, Max’s "protected" status was officially revoked. As the heavy hitters moved in to reclaim his bunk and his dignity, Nadia looked away, her heart hammering against her ribs. She had balanced the books with ruthless precision, but the cost was a weight her quiet soul wasn't built to carry.

And the AI's thoughts...

For next time, it suggested I:

  • More Show, Less Tell (I'll probably continue to get this for awhile)
  • Sharpen Verbs
  • Deeper POV and Tigher Conflict for Timidity
  • Sensory Contrast (perhaps the sweet cotton candy smell vs the sour feeling of betrayal).
I didn't ask for feedback last time, but I did notice how last time the AI had more sensory (especially smell) than mine, so that was one of the things I tried to improve upon this time.

I also overused "lots" and there was some structure I wish was better. Part of that might just be the nature of the short time-frame and the inability to go back and add or change anything.

Social Hacking

 I was reading this book that took place well in the future, but the ?gonist (don't know yet if he's good or bad) called up a new employee, said he was from HR and told them that they hadn't finished their compliance training. They weren't going to be able to issue paychecks until the training was completed.  Most likely it was a small thing - at the very end, there's a "submit" button that lot of people miss.

So while he on the phone with the employee, directed him to a website, had him sign in, click the "submit" button and then they were all good.

Except the website was fake and now our main character had this new employee's username and password.

Made me realize...

If you think someone might be performing social engineering against you, if you're directed to a site in a scenario like this, always enter your password wrong the first time. If the site accepts it, you've just prevented yourself from being hacked.

Conversely, if you build websites like this to hack people, always make it reject the first password attempt and make them try again. That will catch people who follow my earlier advice (and because people type their passwords wrong accidentally all the time), and for people who did type it right, now you have the correct password submitted twice and you can be much more assured that you have a good exploit.

Sunday, March 29, 2026

task frustration

 I consistently have more tasks than I can handle and I had yet to find a solution that really works. I track everything in Remember the Milk, a pricey web app that seems like it's been in maintenance mode for the past few years, but after investigating newer more modern platforms, it still seems like I need the complexity and flexibility that RTM offers. (This seems to be similar to how SFMC is a better fit for me than the more modern current ESPs.)

Usually I'll have over 100 taska and I'll get the most important stuff done, but there's a lot that will remain online. And like a lint roller, each day rolls on, collecting more stuff that needs doing. 

I've tried taking tasks offline to a lst of things I want to get done, I've tried nearly-religiously tracking the number of things I get done so that I can make that the max that can be on the list, I've tried planning out lists for upcoming days (which meant creating lots of duplicates). None of these have worked or been manageable long-term.

So, I don't know if this latest round is going to work or not: I'm trying to pare down what's allowed on future days. No future day can have 10 items on it before we roll into it. I'm still carrying over a list and a lot of items have recurrence, but when I cross them off and they reappear on a future day, I'm looking at the future day to decide if that really belongs on that day, or if it can be postponed.  

So now I'm doing a lot of postponing. Slowly the ball of rollover tasks is getting smaller and tasks of a lower priority are getting pushed further and further out. Like all my past attempts, I feel optimistic for this. But... like every time before, the hopefulness is slightly less. 


For instance, an "introspective, family or identity" blog post (like what I'm writing right now) is something that's supposed to happen approximately after two weeks. But the last time I crossed it off on my list looks to be early May 2024. When the big pile of rollover is too big, it's easy to ignore everything that's not urgent and let it all roll over and over and over.  Hopefully by protecting the future a little better I'll actually do the next one closer to mid-April 2026 vs January 2028. 


Thursday, March 26, 2026

Installed Package Rotation (Salesforce Marketing Cloud)


Sept. 30 is a new date you need to aware of if you work with SFMC (ExactTarget). 

Installed Packages are the combination of a (1) Client ID, (2) Client Secret, (3) a set of Permissions and (4) Business Unit access that together permit authorized systems (and dictate the scope of access) to send data *IN* to SFMC. (This is also sometimes used for CloudPages or SSJS activites.)

Previously, once you established an Installed Package, it just worked behind the scenes, permitting access to systems that had the credentials until you disabled the package or changed the scope. To make SFMC more secure, there are a few recent things of note:

  1. 1. Installed Packages that were not accessed in 180 days have been invalidated. (They won't work until you rotate the credentials.)
  2. You can no longer view Installed Package credentials in SFMC. 
  3. Remaining Installed Packages all received the same expiry date of 09/30/2026 when they'll stop working -- unless you rotate the credentials before that point. (New credentials automatically expire 180 days from creation.)

To rotate credentials, you'll follow a pattern like this. (Validate this with your InfoSec teams now, not late-September!)

Step 1. Navigate to Installed Packages under setup about one week before the credential is set to expire.

Step 2. Click "Generate" to establish a new "staged" credential. The new credential will appear on screen but never be shown again, so capture it. After a 5-minute waiting period, the credential is LIVE. At this point, your Installed Package has an OVERLAP - two credential sets that both work. (I think "staged" is a poor word choice here by Salesforce because it implies "prepositioned" or "standing by, reading to use" - perhaps in the future we'll have the ability to schedule these and that term will make more sense.)

Step 3. SECURELY share the new credential with the vendor or developer responsible for the inbound connection to SFMC. They will need to update their code but it should work right away. (You should have no interruption in service.)

Step 4. Once they have confirmed the credential works, return to SFMC and go back to the package and click "Activate" which deactivates the old code. I recommend this over just letting the old code expire on its own. (Again, I think this is a poor word choice by Salesforce to call this "Activate" as it does nothing to your new "staged" credential except make it the only surviving credential.)

Step 5. Look at the new expiration date and go into your calendar or ticketing system and establish a reminder for just this side of 180 days to repeat the process.

Note: Unlike AWS, this cannot be performed via API (you must have the proper Roles & Responsibilities within SFMC). 

Should you do this all at once for all your Installed Packages? It depends. There may be some economies of scale, but if one or more of your implementors have problems, your time performing Customer Support could be a big distraction.

Cross-posted: https://www.linkedin.com/feed/update/urn:li:activity:7443077624660230144/ 

Wednesday, March 25, 2026

120: Insecure Spontaneous Unpleasant Wilderness Coffeehouse Car Valet

Ok, let's give this a shot.  Thank you https://www.dylandrakes.com/writing-prompts

  • Genre: Wilderness
  • Location: Coffeehouse
  • Conflict: Being assigned an unpleasant task
  • Occupation: Car Valet
  • Positive Trait: Spontaneous
  • Negative Trait: Insecure

"Oh, it wasn't that bad," Fred admitted. But then he thought about it. "Well, it sort of was. The owner was nice, but that car was an absolute mess."

Penny stirred her coffee but said nothing. 

"But yeah," Fred continued, "I maintain cars for people. Not like private-jet people, but the first-class flyers, the sailboat owning crowds." He paused and then added "Some nice cars." Was this going well? He couldn't tell.

Penny smiled, but still said nothing.

"What about you? What do you do for work?" he prompted.

Several expressions flitted across her face in rapid succession but he had trouble catching them. 

Finally, she took in a deep breath, smiled and began to talk about her job as a park ranger and Fred realized that maybe going on about cars and his rich employers might have been at odds with her experiences. But, that seemed to have broken the ice and now she was positively radiating as she spoke of her love of nature and being able to get paid to spend her time outdoors. By the time the coffee was done, they'd committed to a second date: hiking. 

And since Gary and Nelly had pushed them together for this surprise date and were sitting by the door of the coffee shop, as they were leaving Fred and Penny were quite pleased to tell Gary and Nelly it was a double-date and they had a hike to look forward to in their future.

And just for fun, here's Gemini's take with the same prompt and characters...

The smell of burnt espresso beans usually felt like home, but today the Roasted Bean felt like a cage. Fred adjusted his damp car valet vest, his hands shaking slightly—a physical manifestation of the insecure voice in his head telling him he wasn’t cut out for this.

"Change of plans," Penny barked, slamming a rusted key ring onto the counter. "The mountain pass is blocked. We’re moving the fleet through the Blackwood wilderness trail. Fred, you’re driving the lead truck."

Fred froze. The Blackwood trail was a jagged ribbon of mud and unpredictable rockslides. Being assigned this unpleasant task felt like a death sentence for someone who usually just parked sedans in level lots.

"I... I don't know the terrain, Penny," Fred stammered.

"Gary and Nelly are already at the trailhead," she countered, eyes narrowing. "Don't overthink it, Fred. Just drive."

As he stepped out of the coffeehouse, the biting wind of the high country hit him. Suddenly, his spontaneous streak—the one that usually only surfaced when ordering off-menu—flared up. He didn't check the GPS or wait for a briefing. He hopped into the lead 4x4, cranked the engine, and roared toward the treeline before his anxiety could catch up. He might be terrified of a parallel park back in the city, but out here, where the road didn't exist, he felt a strange, frantic freedom.

Saturday, October 11, 2025

Magnolia Park, Olive Ave., Burbank and SB79

After years of everyone saying "something must be done somewhere else" SB79 was just signed into law, taking zoning control out of the hands of local cities. 

Magnolia Park and the Studio District along Olive Avenue south of the 5 freeway and north of the 134 freeway would be served by four tier 2 transit stops. (There would be one additional stop near Warner Bros. below the 134 and one additional stop near downtown Burbank above the 5.)

The tier 2 designation comes from the type of transit (bus rapid transit or quality of rail service) and the number of stops per day. Clustering is considered, so while the two train stations at the Hollywood Burbank airport don't qualify individually, they qualify together as tier 2. If HSR ever gets built, the airport would become tier 1. Of course, it's problematic building around the airport for noise and heigh restrictions, though we're seeing places like the former Frys property give it a go.

Tier 2 allows for housing of up to 65 feet (5-6 stories) within 1/2 mile of stations and up to 55 feet (about 4-5 stories) in the next quarter mile. 

Four story example (Ventura)


Six story example (San Pedro)


Of course, this doesn't mean there's automatically going to be a massive build-out to the fully allowed, but it could also mean more ADUs and more secret four-plexes. (If you walk along Keystone south of the high school and look carefully, a number of the houses have fourplexes hidden behind them. You won't see them from the street, but they help add places to live. And more places to live means lower housing costs. 

And considering Burbank has a night-time population of 100k and a daytime population of over 200k, more people living here and working here would mean less traffic. Of course, the idea is more housing near these mass transit also implies people might live here and work elsewhere. 

We've also heard the Burbank School District lament a lack of students (due to Burbank's high housing costs) and lack of funding (due to prop 13 discouraging downsizing and discouraging selling). New zoning and new housing might have a positive impact on that.

As a Magnolia Park Burbank homeowner, obviously I wanted to know if my neighbors to either side are going to sell to developers. Glendale has done this poorly in the past, you'll find neighborhoods with apartments intermixed with houses in such a way that the remaining houses will never sell for much (too small to build an apartment, trapped forever between apartments).  I hope Burbank does better. It does end up looking like my house is "safe" from upzoning, but if the new apartments are cool and maybe have retail or studio-support ground floor uses, we could see more businesses, more jobs and maybe more things open past 9-stinking-30 at night. Of course, I'd also like to see Magnolia upzoned. If they allowed for 2-3 story buildings with apartments above retail, it would be much more lively and more reason for businesses to be open longer and the existing 3-story buildings on Magnolia prove it doesn't hurt the surrounding neighborhoods.  

Anyhow, here's my map of the impacts to Magnolia park of SB79. I used the L.A. City map because they had all the circles already which was helpful and the Metro video for the station locations.



Saturday, August 09, 2025

unclutter (the pocket computer)

 

This is what I see now when I pull my phone out of my pocket. I recently came across one of those "apps that will change your life" posts. I always find those interesting, and Google knows this because it's always serving them up in my endless scroll of articles that was previously just a swipe away.

But it told me about a few apps I already had, plus a new launcher and a new background maker and I decided to give them a try as they sounded like they might be useful in my pursuit to simplify.

tapet is a series of "concepts" (for lack of a better word) - like "bricks" or "swirls" or, as I have currently, "hexagons". It creates a unique design based on that concept. Separately it colorizes the image. If you like the design, you can swipe in one direction to try different colors, swipe in another to change designs while keeping the color pattern, or swipe in another direction to call up a new design and a new color scheme. It makes it very easy to pick a new design each day just for a little bit of simple variety.

niagara is an android launcher that is really focused on simplicity. Apps are arranged in a line and they recommend around 8 max. When I connect my Bluetooth headphones, Audible and Pandora automatically appear at the top of the list. When I tap on the right side of the screen with my thumb, a list of letters and your full list of apps appear. As you wipe your thumb over the letters, it moves up and down in your list of apps. You can hide apps and rename apps. You can also place apps in folders on your desktop or in the apps list. You put widgets inside your folders. So I have a Fitness folder with a bunch of apps and when I open it, I see my step counter. When I open my Work folder, I see the my time tracker widget.

When a visible app (or an app in a folder on the desktop) has a new notification, it appears on the screen. For instance, when my our Roomba finishes its morning run, under "Home" a second line appears that says "iRobot - successfully completed...." and I can tap to see the notification or swipe to dismiss. 

All of your long-press options are also available with a swipe, so if I swipe Lose-It, all the logging optiosn appear before the app even opens. 

There's a lot of customization to the launcher and they also make it really easy to switch back to the normal launcher when needed. I found myself doing that some the first few days, but now I'm just really appreciating the simplicity and will probably pay the $14/year for the pro version.


Tuesday, July 15, 2025

task frustration

task frustration continues to be the enemy of simplify. I boil down to what I think if a manageable list of things to do and then when I go to do them, there's something in my way.

I go down my list - nope, nope, nope, nope, can't do - usually blocked by someone in the way or someone in the space I need. Eventually I get to a point where I'm like like "f it" and then I do nothing. 

It doesn't feel great. I don't have a solution for it. Any high I had hoped to get from being able to cross stuff off is gone and instead I just wander around aimless waiting for bed. Or death. 

Well, waiting for everyone else to go to bed. Then I can leave the house and go on a long walk and listen to my audiobook or music and no one bothers me. 

And then I can come home and go to sleep and maybe try again tomorrow. 

But I've got about two hours before that can happen. It would be nice to do something useful and feel productive in the meantime.

Sunday, July 06, 2025

unangry

In my last post I talked about what made me unhappy or that "unhappy" felt like a good catch-all for negative feelings.  I tried to look out for them over the next few days and I realized that often the emotion that surfaced was anger. Not like every-except-Hal on Malcolm in the Middle or Paul on Breeders level of anger, but anger none-the-less. I wondered if focusing on what made me unhappy might have the wrong effect as I tried to return to life after vacation.  

The reasons aren't new, they've been explored. Task interruption, task disruption, higher priorities and responsibilities, the times when I'm no longer in control. And that leads to frustration and anger. Or when I'm physically attacked or spit on by my child. Or even frustrations with work which don't exactly manifest as anger most of the time, but definitely frustration, anxiety and worry. 

I thought maybe to watch for the times when I felt unhappy might lead me to be able to start seeing when control is no longer mine, to figure out if there were specific things I needed to handle. (One thing I've learned but not always put into practice is attempting to write while others in the household are still up. This has been a huge source of frustration in the past - I can't always control when I'm inspired to write, but then when I get ripped away while I'm feeling creative or introspective can be so maddening. I'm being dumb trying to write right now, but I want to write. But, I'm at the keyboard fully aware that I could be pulled away at any moment, and I'm prepared for it and know it's a possibility I accepted by trying to write right now. If it happens, I can't get mad about it.)

I also went on vacation facing a perplexing problem. It was recently determined at work that what they need me to do now is not what I was hired to do. Needs have changed. That happens. It's believed that I'm still capable to do what's needed and they've expressed a desire to still work with me, but it's a change. I've been struggling with what that means.  

Thing is, I've been here before. I wasn't able to see it while it was happening before, but now that I've been through this at least once before, I now can recognize what's happening sooner, I can understand why and I can better prepare and examine my options and even more important: realizing that I have options.

In the most immediate terms, it's been things like:

  • signing out of the optional messaging system (Slack) and only being available on the official messaging system (Teams)
  • focusing only on tickets assigned to me
  • not looking at Teams or Outlook outside of work hours
  • not trying to think up or propose new projects
I was worried that it was going to feel like I was giving up or not being true to my nature but it has turned out to be quite freeing. And if it turns out I've taken it too far, they'll let me know that they do what more from me and that'll be nice validation to what else I can and have offered beyond. It's not quiet-quitting, it's not slacking-off, it's not doing my work, it's just not trying to lead from beyond my role. It's not fun, but if I'm doing what I've been told is needed, if I've been told I was doing more than they wanted, I guess it's freeing to be expected to do less. That's kind of rare in the workplace, but I still make sure that whatever I do is with excellence, even if it's less that I'd like, if it's what they want, perfect.

But I've also tried to look at home as well. I have a massive to do list which is never-ending. I sat down and looked at all the recurring stuff and where possible, I extended out the length of time between repeats, and I looked at if there was some stuff on my list I was never actually going to ever do and removed it, and in other cases, I realized there was stuff I was mentally carrying that wasn't even on the list, so I threw it onto the list. I also realized there's a lot of time that is truly mine and time I spend on entertainment or fun and that sometimes that's more important than chores, so I tried to start looking at what's really important and what I can reasonably get done in any given day. It's been freeing to preemptively admit there is stuff I won't get to and not even allow it to be on today's (or this weeks - or this month's) list.

And then there's my diet. I didn't follow it while on vacation, but it is absolutely within my control. And I'm making great progress. And it feels good. I did need that push from my wife also restarting her diet, but now we're both making progress and I'm going to crush this. Also a few weeks ago I was out for my nightly walk and came across a home gym someone had left on the curb. I went home, grabbed my furniture dolly, wheeled it home, left it in the front of the driveway for a week and after no one came by and accused me of stealing it, I moved it into the backyard and while I haven't started using it again since coming back from vacation, it's only a matter of time before I pick it up again and move beyond just dropping weight but also adding muscle. 

And sure there's still stuff outside of my control... the weather, rude neighbors, the glacial pace of this attempt at home renovations, the end of our country, bad behavior by my kid, but there's so much that is within my control that a lot of the anger, frustration and anxiety (the "unhappiness") just didn't come back after my vacation. And it's been phenomenal. 

Did I have to stop during this post to go and help a family member with something while I was writing this? Absolutely. Did it cause me negative feelings? Nope. I was prepared for it to happen.

Friday, June 27, 2025

simplify. (again)

 It's the last day of vacation which started the day after a weekend out of town on business. So it's been two weeks since I really spend much time in the chaos that is our life back home. And whenever I get away from it, I long to hold on to what I experienced away. There's a sense of calmness - even with the entire family in tow - we have less stuff, the Airbnb is always cleaner and more streamlined - we have fewer chores and we just run a load of laundry and dishes every night no matter what. And so in the calm morning today I had a chance to do some reflection and realized it was time to restart simplify. This is my regular attempts to make my life simpler. It usually lasts for awhile and then goes by the wayside. 


So, this is just my latest attempt. Let's see how well it lasts this time. I took quite a while trying to figure out the typeface I wanted and then I just started writing down thoughts and it came out pretty quickly. Over time I'll see if what I wrote down makes sense or if it's nonsense. One thing that came really quickly was that I need a way to quickly identify what's wrong when something's wrong. I wondered about some sort of think like they have in airport bathrooms where you press the frowny face or the smiley face to tell if you think the bathroom is clean. (How clean are those little devices?) I didn't have the patience to find an app to do exactly that, but it did help me realize that I needed some method to stop and evaluate when something's going wrong, before I get angry, anxious, depressed or overwhelmed. And this kind of popped into being: 



So... what made me unhappy today?

My computer wouldn't start. We were on vacation, but we had nothing planned, and it was noisy in the house and when I went out on the deck the sound of the waves were interrupted by people doing construction on a nearby house. I was unhappy. But, this was something I could control. I decided to take a drive. I made an appointment at a Genius Bar in the nearest large city and then I drove my Mac over and they fixed it. (Note: If your Mac won't turn on after a software update and you've just recently had the screen replaced, they can probably fix it for free at your nearest Apple Store by doing a "revive" on it. If you have two Macs with modern OS, you can Google the directions and probably do it yourself.)

They fixed my computer. Unhappiness solved.  

What else? I was a little bummed because we haven't done a whole lot this trip - we didn't really have any programmed events, didn't order food from a local restaurant, didn't really do anything. My wife made a trek to a nearly bookstore that was recommended in her author group earlier this week, and yesterday I had ventured out looking for wild zebras and returned home without any success, but otherwise, we'd pretty much just stayed in and enjoyed food and TV and sitting on the patio listening to the waves. 

I headed back after I got my computer fixed and called ahead to see if anyone wanted to go with my out to try to find zebras again. It turned out everyone did. So we all got in the car, headed up the coast, saw zebras, got a few photos and then the walked into a copse of trees and we never saw them again even though we waited a long time. But, I saw them, and I got my photo. That's what I wanted. (Why zebras? They were part of a rich guy zoo. After he died, they closed the zoo and the zebras were released into the wild. His family still owns an insane amount of land in the area and the climate here is suitable for the zebras, so now they just live on the land, as wild as an animal can be when allowed to roam on an 83,000 acre plot of land.)


We talked about getting food from a local restaurant, but we were pretty tired and not very hungry so we got a small treat from a local shop and then went back to our Airbnb to get everything cleaned and packed up for tomorrow's departure. 

Is happiness the right thing to aim for? What about not-depressed? Or content? Or calm? Or enriched? Or not-bored? Or satisfied? It feels like a good shorthand, especially for the reverse "I'm not happy." So it is what it is for now. We'll just see how long this lasts this time.






Sunday, May 26, 2024

RTO

My where-we-work has always been interesting.

My first job, I was still in college in Seattle. The company was still forming. I was the first officially hired employee (the other two founders still had their day jobs elsewhere and were working with a company somewhere else who wanted to fund the whole operation).  I worked from my dorm room or the library or the computer lab until I graduated and they paid me to move to L.A.  Then I worked from my apartment until we had an office. Sometimes before we had an office, people came to my apartment for meetings.

Then I worked for a church in L.A. and I had an office. I had a few volunteers who worked with/for me, some of whom would come into the office, some of whom would do all their work remotely from home. I had a few different places where I could go and work, so sometimes I'd go and hide when I wanted to get stuff done without interruption.

Then I worked for a large non-profit in Seattle. Most of us were in the office, but I did have one person who reported to me who worked remotely from Colorado. And later an outsourced team in India who would do work overnight and I'd have a call early in the morning to accept the completed work back. We had a few buildings and I walked to a lot of in-person meetings. 

After that, an agency in Seattle. Our clients were everywhere from the floor above us to a few blocks away or even L.A. or Chicago. We did a lot of voice calls, but also a lot of email.

Then I got hired by a company in L.A. and they proposed that within a year they'd move me back to L.A.  They would fly me down monthly and I'd work in the office for a few days. I had my own desk and sometimes I wouldn't really have need to interact with anyone while I was there. My supervisor didn't have any impact on my day-to-day work and the person who directed a lot of my work sat on a different floor and never came down to our floor. The rest of the people we worked with were at an agency in San Francisco.  So we'd have some voice calls, but it was mostly email. 

Then I moved down, worked out of the office, we reorganized so that we were situated together in a quad with other people who had the same direct report as me and I started getting connected with people at work. I eventually had people reporting to me and we had our own quad. We did start having daily standups on another floor as we took more of the work inhouse from the agency.

Then I moved to a company that was only in-office. Remote work wasn't permitted at all. Until COVID, then everything changed, they started hiring people all over the country and we worked for several years with people we'd never met in person.

Until I left and started working remotely for a company in Utah. Most of the people I worked with were situated in D.C. and so I regularly went to the D.C. office and rarely Utah. Lots of Teams(etc.) calls. After COVID, they called nearly everyone back to the office so now I work remotely and have someone who reports to me in the office and someone I've never met in person who lives in Indianapolis. And I'm regularly on calls with people in D.C., Utah, Indianapolis, New Hampshire, Florida, Colorado and other places people whose location I'm not sure of.  

I had a point when I started writing this. For a moment, I had forgotten it, but now I remember.

I was thinking today about this while I was at church - remotely, of course. The church is in Ann Arbor but there's a big contingent of people who attend remotely, whether from Ann Arbor or from other places.  People today were talking about Lansing and Kansas City and one woman who said "northwest Nebraska" is as specific as she can get as the local gas station has a sign that says "You are nowhere" and there's nothing near where she lives to speak of that would give anyone a sense of location.  

Anyhow, all this to say we had an online discussion after the call and I kind of lurked without saying much.  Sometimes it is hard to put myself out there and speak up. That's a challenge when I am expected to think on my feet for a living, but sometimes if the focus of the meeting isn't on me, it's easier to just listen, or to offer up a comment in chat, letting others read what I have to say and then inviting me to expand on it, or affirming or contradicting my thoughts. I didn't feel like I could necessarily relate to the conversation so I didn't want to derail it with my thoughts. Sometimes I feel like this at work - that if I jump in, I might derail things. So sometimes I add things in chat. And it works really well. Someone will read it, call attention to it, affirm (or contradict it) and ask me to elaborate. Then it flows, I've contributed and I haven't derailed or stepped on anyone else.

If we were in person, we have less of a chance for side-conversations or to line-up potential future conversations in chat even when it may benefit the overall conversation. Sometimes you want to ask another person in the meeting if they're feeling the same way you are, so that if you do speak up with an opposing viewpoint you know you won't be out there alone - or to at least vet your thoughts and know more about why you're on your own - and if it's worth bringing up in the larger group setting, or later individually, or not at all. Because if you're on your laptop or phone in the meeting, too many people assume that it's unrelated to the meeting or because they had side-conversations and assume it's counter-productive or negative about them.

I remember the leader of Zoom saying he believes everyone should be in person (of Zoom!) because he liked the give and take of live meetings and people talking over each other and the rapid nature of live conversations, that everyone is too polite in zoom calls. But what I remember from live meetings with everyone in the room is that there is a real risk of monopolization by the extroverts and the bombastic and the narcissists. If you only value the opinions of the loudest talkers in the rooms - the ones who are fine to talk over people, then by all means, force everyone into this model. But when you do, you lose the opinions, insight and perspectives of the quiet, the meet, the thoughtful, the introspective, the introverts, the polite and the processors. 

I don't mean myself, I mean the many people I have worked with over the years who were brilliantly quiet, who did not put themselves out there - but when you talked to them one-on-one or when you conversed in Slack or email, when you gave them advanced notice that you wanted and welcomed their engagement and then made it easy for them to engage, they shone, and we all benefited from it.

But if you only want the loudest voices, the ones that are happy to tell you what they think unsolicited, the ones who are confident and self-assured that they are the smartest person in the room, the ones who are energized by the sound of their own voice, the ones who know you have nothing better to do than to drop everything when they wander by your desk, by all means, shove everyone back into the office.

Friday, May 24, 2024

Delta

 I have done way too much research, but I'm changing my preferred airline from Delta to American.

Growing up in Seattle, it had been mostly Alaska. There was some Southwest thrown in there, but I hadn't really ever given it a lot of thought.

I've come to learn over the years that I never want to try Spirit, but weren't all airlines the same?  I hadn't been a regular flier.  Maybe a conference each year and then there was a period where I was working remotely and had to go into the office a few days each month so that meant a lot of flying.

But in my current job, I'm flying 5 or 6 times a year. When I did my first flight, I guess I picked American because of the time of day, but since then, I've been doing my research.

First off, all of my coworkers are flying from Salt Lake, so they take Delta. They keep telling me how great Delta is. When I go to Salt Lake, I take Delta, but it's fake Delta and it's eh. 

I recently took Avelo for a family trip and was surprised - there was more leg room than American and the seats were more comfortable. 

So I've started looking more closely at Delta. So far, I've only found two negatives:

The flight I'd take would be at 8 am from LAX instead of 1 pm.  It would get in sooner, but that long drive to LAX would be much earlier in the day.  And the credit card is $150/yr instead of American's $99/yr (which they seem to have forgotten to charge me for this year).  

But from what I can tell, Delta has wider seats, more padding in the seats, more leg room, free wifi, seat back screens (they're working to make it possible to extend cast your phone to the screen meaning you could work from the plane with just your phone and a bluetooth keyboard, instead of your laptop).  They apparently have better food choices as well.

On the negative side for American, I just keep reading more and more negative things. Like how they give new flight attendants a letter they can use to help apply for food stamps (because American pays so poorly).  Delta doesn't have a union because their flight attendants have never voted to unionize.

Delta's mechanics are so good at their jobs that they do maintenance work for other airlines - they do lots of the type of work mechanics enjoy, leaving the less fun urgent stuff to local airline mechanics.

American seems to be trying to be OK.  Delta just seems to be trying to be great.  Time to listen to my coworkers. Why did it take so long for me to listen to my coworkers? Because I have points. It's amazing how much stuff like that mentally locks you in.

Also, American's auditors are KPMG. KPMG is bad.

If anything here is wrong, it's just a mistake in my research.


Tuesday, May 21, 2024

Begrudging

 It's been way too long since I posted. It's been on my to do list and at this moment, it's the least undesirable thing on the list, so I guess it sort of wins. 

It's been a whirlwind. We were working on renovating my wife's mom's kitchen.  And then my wife's brother died. So we all flew to Boise. It went better than expected, but I didn't actually get to attend the service because it was too overwhelming for Ben. But he still did well on the planes and in the new place and we have to make any apologies to the AirBNB host for broken/damaged stuff, so that's good.

Less than 24 hours after we flew back, I was on another plane for DC. And then right after I got back, my wife and our other child were off on a planned bonding vacation. We also had a tree removed because it had broken and was leaning on our neighbor's house and some plumbing work done last week. Then there was a scare over the weekend that maybe my mother-in-law's refrigerator was dying, but everything seems OK again for the moment.  So this is the first "normal" week in awhile and I'm here for it. I've slept poorly the last few nights, but then that's not all that unusual. Well, normal if not for annual meetings with the school district and with my financial advisor and an industry peer has asked to get on my calendar. So it's still overwhelming.  5 hours of meetings today.  Bleh.

I've been working on the brick path to my mother-in-law's apartment and trying to get more drywall up on the ceiling in my office, but we have not yet returned to working on the kitchen. All the new cabinets are assembled and sitting on our back porch.  

Preparing for a trip to Salt Lake next month and already planning for the DC trip after that. Thankfully not doing the annual trip to Chicago this week.

I just want to sleep.

Sunday, January 21, 2024

120: Yellow

It had to have been on sale for a really good price, right? As much as he hated his neighbors, were they really the type of asshole who would buy a car that color? Why would anyone buy a car that color? It wasn't quite the color of a banana. It wasn't quite the color of mustard. It wasn't even the color of a yellow caution sign. It just lay there. An uninspired, ugly, boring annoying color. 

The bright color made one think of a toy, but this would be one of those toys that languished on the shelf, a depressing, uninspired color that drained the life from you just to look, improving with each layer of dust until it was shoved to the very back of the shelf and hidden behind a collection of stuffed animals. The stuffed animals hadn't been placed there. They'd just sort of migrated to that spot to hide that ugly toy.

And there it was, parked on the street, always in the corner of his peripheral vision.

How did it even come to be? In an era where car manufacturers only painted in blacks and grays and whites and dealers purchased an even more limited selection, who looked at a soiled diaper and thought "I want a color even less pleasing to the eye?"  Was there a mistake in the factory? Had the mixing machine had a failed software patch or a broken spray nozzle? Was this the winning bet in a "design a truly hideous paint color" contest?  Was the purchase itself even a part another bet?  Did someone win because the car sold at all?

Snapping his fingers he thought maybe he finally had it - perhaps his neighbors were colorblind. Yes, that must be it, he thought to himself. Perhaps they could only see in shades of gray. Perhaps the color was a nice gray, like battleship painted in eggshell with several clearcoats. That helped. Now he felt sorrow and pity for these pool colorblind neighbors and at the same time envy - they must have no idea how disgustingly banal their infectious ooze-colored car was.

Sill, he decided that was no consolation - the car would probably never be hit. Unless its color drove someone to madness, in typical everyday driving, it was more likely that anyone that looked it at would reflexively jerk the wheel away, causing the car to blissfully drive down the street leaving revulsion and collisions in its wake.

Monday, January 01, 2024

Happy Meh Year


I read somewhere that if this were the 1900s, I'd have reached the average lifespan for my gender and race. But I guess with advancements in science and medicine, now my age only puts me at 66% completion based on the current averages. I guess we're supposed to be grateful.  

So, I guess around we go again. 

I have this thing about thermostats.  I think they should only be set to numbers like 70, 72, 75, 78 or 80.  Any other numbers and you're just being too picky.  I guess if I apply that years as well then I suppose I should plan to be back here in another year making another post because 2024 is a non-number. Hopefully that means we can make it a bit of a quiet year.  I don't know if that's possible with the election coming up later this year, but I'm not running for office and my vote doesn't count, so what do I care?

I don't want to stand out, I don't want to make a name for myself, I don't want to make waves. I don't want any big changes. I really want this year to be meh. It feels like I get more and more tired so if we can just have a nice quiet non-year that's my goal. I'll read some books, lose some weight (hopefully) and see some home improvement projects completed (office fully drywalled and possibly ceilinged, a door professionally installed where we're missing one currently, a tree removed, pickets added to the front porch, maybe some furniture built), but yeah, I really want an unimpressive, quiet, under-the-radar year.

Here's to meh.

Sunday, July 09, 2023

Organizing my Gmail

 With a little bit of help from ChatGPT and trial-and-error, I have a script that helps me keep my Gmail accounts more organized.  

I have five labels:

**0**, **1**, **2**, **3** and **4**

What the script does:

For mail over 12 hours old, add label **0** and **1**

For mail over 30 days old, remove label **1** and add label **2**

For mail over 90 days old, remove label **2** and add label **3**

For mail over 1 year old, remove label **3** and add label **4**

For any mail that's read, flip it back to unread.

It runs every hour.  (Label **0** is a holdover from something else and it's less important.)


Anyhow, this allows new emails to come into my inbox and if I deal with them right away (that is, I delete them), then everything's good.  If it's not something I can handle right away, it moves out of the inbox.  

It means when I open my mail on my phone, it's never going to be overwhelming, it's just going to be the new stuff.  (I have other filters that move a lot of commercial/bulk mail out of the inbox right away because I don't need to be alerted about sales coupons.)


function processEmails() {
var threads = GmailApp.search("older_than:1y label:**3** -in:trash -in:sent -is:chat");

for (var i = 0; i < threads.length; i++) {
var thread = threads[i];
thread.addLabel(GmailApp.getUserLabelByName("**4**"));
thread.removeLabel(GmailApp.getUserLabelByName("**3**"));
}

var threads = GmailApp.search("older_than:90d label:**2** -in:trash -in:sent -is:chat");

for (var i = 0; i < threads.length; i++) {
var thread = threads[i];
thread.addLabel(GmailApp.getUserLabelByName("**3**"));
thread.removeLabel(GmailApp.getUserLabelByName("**2**"));
}

var threads = GmailApp.search("older_than:30d label:**1** -in:trash -in:sent -is:chat");

for (var i = 0; i < threads.length; i++) {
var thread = threads[i];
thread.addLabel(GmailApp.getUserLabelByName("**2**"));
thread.removeLabel(GmailApp.getUserLabelByName("**1**"));
}

var threads = GmailApp.search("older_than:12h -label:**0** -in:trash -in:sent -is:chat ");

for (var i = 0; i < threads.length; i++) {
var thread = threads[i];
thread.addLabel(GmailApp.getUserLabelByName("**0**"));
thread.addLabel(GmailApp.getUserLabelByName("**1**"));
thread.moveToArchive();
}

var query = "is:read -in:trash -in:sent -is:chat"; // Replace with your desired query
var threads = GmailApp.search(query);
threads.forEach(function(thread) {
var messages = thread.getMessages();
messages.forEach(function(message) {
message.markUnread();
});
});


}



To use this script, follow these steps:
  1. Open your Gmail account in a web browser.
  2. Click on the gear icon in the top right corner and select "View all settings".
  3. Go to the "Advanced" tab.
  4. Scroll down to the "Desktop notifications" section and enable the "Allow external programmatic access to Gmail" option.
  5. Click "Save Changes" at the bottom of the page.
  6. Open the Google Apps Script editor by visiting https://script.google.com/.
  7. Create a new script file and replace the default content with the script provided above.
  8. Save the script and give it a name (e.g., "EmailProcessor").
  9. Click on the clock icon in the toolbar to set up a time-driven trigger.
  10. Configure the trigger to run the processEmails function at your desired interval (e.g., every hour, every day).
  11. Save the trigger and confirm any necessary permissions.
The script will now run automatically based on the trigger you set up and perform the specified actions on your Gmail messages. Make sure to review and adjust the script as needed before deploying it to your Gmail account.