Sunday, April 2, 2023

Book Reflection - Four Thousand Weeks: Time Management for Mortals

 I just finished a book - Four Thousand Weeks: Time Management for Mortals by Oliver Burkeman.  It was time well spent - see what I did there?

I related to it quite a bit - it largely assumed an audience of people who are averse to being idle.  People trying to optimize their way to self-worth and counting their days and hours by what still remains on the to-do list that includes such meaty goals as  “save democracy” and “learn all the programming languages”.   Those of us who never feel like they’ve “earned” a break, who only slow down when they have a documented illness and only then because they don’t want to do something silly like get hospitalized where you REALLY couldn’t get anything done. 

My main takeaways from the book are: 

  1.  We can’t do everything.  As the title suggests, we will die.  Instead of trying to fit it all in, just work on accepting this.  Of course, this is something I’ve known forever with my brain but doesn’t seem to be absorbed by all of my cells as truth.   So I’ve been trying to work on this, mostly in the case of places to visit, things to learn, or hobbies to start.  I grieve each thing as I consider it and know that probably won’t be able to do it.  I sit with the thought, appreciate the fact that I appreciate that it’s something cool, grieve a little bit that one day I will die and then try to settle my mind back to a shorter list of equally cool things rather than continue in the grief/disappointment space.

  2. Don’t spend too much time choosing - don’t let the perfect be the enemy of the good.  A short note you actually send telling someone you think they do awesome work is better than the perfect letter you never write.  This is, again, true because one day we will die.  Or the other person will die. 

  3. Be mindful of how we are spending our time - Make sure you are making conscious choices and not continually scrolling on our phones, especially about things that bum us out and sap us of the energy that we could be using to do the things that actually could make the world less of a bummer.   The sum of our individual moments of attention will eventually be our life lived.  

The book was humbling and comforting and empowering.  I gave it 5 stars on Goodreads and will likely think of it often.  

Friday, August 27, 2021

Three Voices, Four Lessons, Fifteen Years

I wrote down a few “lessons learned” a few months ago when I hit my 15 year anniversary with the Statistica product (working for companies StatSoft, Dell, Quest, and TIBCO along the way).

I put off finishing it and publishing it because a voice in my head said there are more important things going on in the world than navel-gazing about my career. But then a competing voice says "You can't be a thought leader unless you have thoughts, and you know, tell them to people". Fair point, says Voice 1. Voice 3 says "What's all this 'thought leader' business? What happened to you?" Voice 1 and 2 do a jaunty PowerPoint about building our personal brand.  Voice 3 rolls her darkly lined eyes and hits "Publish"

Takeaways from 15 Years of Working with Statistica

You have to create your own boundaries.  Unlike a restaurant when you go home when the dishes are clean and the floors are swept, software development work is literally never done.  Know when you’ve done enough for the day.  Make sure you’re taking care of yourself.  Burning out helps no one.  

Sometimes you can create your own opportunities - No one has more incentive to make sure you’re doing what you want to do than you do.  If you see a way you can add value in a different department that’s more interesting to you, have a couple of conversations and make a plan.  Chances are, they’ll want to keep you, even in a different capacity, rather than lose you to a competitor. 

Keep an eye on the market.  I’ve seen many amazing people let go just because the business is changing directions.  Even if you are in love with your current job, periodically choose a “next best alternative” that you would pursue if your job went away.  Skill up in these areas.  

Keep in touch with people - Your coworkers are a little like siblings.  You spent time under the same roof (or virtual roof these days), living through events, sometimes traumatic, sometimes hilarious.  They knew you when you were young and inexperienced and did their best to protect you and support you through your awkward phases. They watched wistfully as you became the teacher buddy to new hires, the way they had done for you what seemed like yesterday.   They looked up to you, while you hope that they don’t see the terror that you still have no idea what you’re doing, except that you do, but you also know the depths of what you don’t know.   With every interaction, we shape one another into the professionals we become years down the line.  They’re as much family as anyone you eat Thanksgiving dinner with. 

I don’t have a witty conclusion planned, as I am still very much in the process of learning more lessons.

Saturday, June 6, 2020

We Can Stop Producing Bad Apples

"There are a few bad apples" - We hear over and over again from people in power.  It's said with the intention of ending the conversation and not going deeper.

Where is our pride?  Where is our curiosity?  Where is the drive and challenge to make things better instead of justifying how things are?

If Honda Odysseys exploded every now and then at a steady rate, would we say, oh wow, those are a few bad Odysseys out there. Shrug. 

No.  We would be mad as hell. 

Manufacturers know we would be mad as hell. That's why they deal with their processes in a reflective manner - if something goes wrong...they can drill down and solve it. 

Bad apples are a symptom, not an inevitable outcome. 

We attempt to solve "bad apple production" in business -- process analysis, lean manufacturing, five-whys, "shifting left" in software/application production.   Judging by the number of conferences I get invited to and the amount of marketing material I receive, this is a huge industry. 

Essentially the idea is to study problems, patterns, and prevention.  What inputs are causing the bad apples?  Is there an interaction of factors most likely to produce the bad apples?  How long can bad apples be out in the world being bad apples before they are realized as bad?  What happens when we suspect an apple is bad?   What can we change to keep bad apples far away from hurting people? 

The goal is continuous improvement.  Reflection, learning, adjustment. 

There's nothing in these methods about digging in your heels, defending the processes that were optimized for one outcome (protection of White people) when it turns out we need to optimize on a different outcome (protection for All)....Nothing about shrugging and accepting your high bad apple production rate. 

So why are we seeing this behavior in public policy matters?  What's the difference?  

So far, enough of us haven't been mad as hell. My hope is that we are getting there. 

Get mad.  Stay mad. 

Saturday, December 28, 2019

Purpose Brainstorming

I hadn't researched Dan Buettner's Ted Talk to figure out whether he was appropriating or appropriately celebrating the Japanese concept of "ikigai" - basically a reason to get up in the morning - an overlapping of where your interests and talents intersect with the world's needs. Until today, when I searched and saw some evidence that it was an oversimplification of a complex concept...of course.

But I'll link to it anyway, since I found it to be a useful construct to inspire thinking.

Time has flown.  Y2K seems very recent and it was freaking 20 years ago. I was a sophomore in college.  Taking interesting courses in public policy, economics, psychology.  Serving in Student Congress.  Working in a psychology lab.  It was a busy time, but also one filled with hope and possibility.

But soon, I would become more realistic/pessimistic/jaded....or maybe it was lazy.

I was so burned out on school, that I didn't want to go to grad school until I felt called to do a specific something.  My interests were and have continually been so varied that focusing on anything in particular seemed like a waste.

I worked in DC for a summer - I enjoyed the experience but learned how much governing was a team sport - you picked your Republican or Democrat side and modified your thinking and behavior accordingly.

City planning/economic development/government seemed the same in many ways - you compete with other cities for limited resources, luring companies into your town, where it may or may not be the best thing for the residents.

If I were in college today, what would my plans be?  Hard to say that I would have done anything different, besides adding computer science and more math into the mix.

As I reflect toward the end of the year, because it takes a certain amount of calm and rest to think about the higher rungs of the hierarchy of needs, I have been thinking about purpose.

What I Like

  • Mostly listed above - social sciences, ethics, philosophy 
  • Technology and math, not for its own sake but for advancing something else that I care about 
  • Watching something work that I made
  • Standing up for others who aren't being listened to 
  • Writing 

What I'm Good At

  • Problem solving/isolation - experimental design 
  • Thinking of things that can go wrong 
  • Moving things forward
  • Chaos minimization
  • Googling and trial and error 
  • Learning from the past 
  • Writing

What I Can Get Paid For

  • It's irritating that the best-paid jobs are largely BS and that the jobs that have the greatest positive impact on people are lower-paid.

What the World Needs

  • Critical thinking
  • Recognition of patterns
  • Civic engagement
  • Willingness to take a stand for principles 
  • Connection 
  • Engaging education 
  • Hope 

No real common themes here, but perhaps I am blind. 

  • Writing about unintended consequences for public policies? 
  • Work on technology that makes education more engaging or otherwise promotes a healthy democracy? 
  • Run for office for the sole purpose of saying the things that need to be said, drawing from history? 
  • Organize some small groups for people who need connection?
  • Work on technology and the underlying organization that helps people get resources they need to make their lives better - mental health services, in-home care, etc - any process that's difficult to navigate? 

Wednesday, January 2, 2019

Routine: Living resiliently

I love routine.  I have a system that keeps me sane. Much of my work and home life is structured by Yanado tasks linked with my work and personal Google accounts.  Things I need to do all go there. Things I want to do go there too.

My personal list of tasks helps me keep in touch with my friends, keep my dogs correctly medicated, keeps me learning, keeps me volunteering, keeps me exercising.  My work list of tasks does the same thing - it reminds me of the commitments I've made to others on the team, keeps long term goals in my view, and helps me respond to emails in an order reflecting their importance.

And then things happen to throw off the routine.  We get sick...we get a new puppy who requires newborn baby levels of attention...we get in a car accident and have to take it easy and find time to buy a new car, we get an emergency high-priority issue at work.

While my routine was thrown off over Christmas, I had extra time to read. I read Team of Teams: New Rules of Engagement for a Complex World by General Stanley McChrystal .  It had some useful leadership lessons and also introduced me to a distinction I hadn't been consciously aware of - robustness vs. resilience.  Robustness is strength to withstand obstacles...Resilience is the ability to adapt as obstacles arise and evolve.

This year, I've seen a change in vocabulary around New Year's Eve -- Intentions rather than Resolutions.  The thought being that once you've broken a resolution (e.g. I resolve to floss every night) then it's done; there's no point in continuing.  You can always return to an intention (I intend to floss more this year).  Perhaps a more resilient approach to behavior change.

Watching my mom, who is now retired, go about her new life is inspiring.  She's playing piano and spending a lot of time with genealogy. It led to the table topic style question when I visited this weekend - "what would I do with unlimited time/money"

Photo credit: Taylor Maley
Piano.  Singing.  Auditing university classes. Dancing.  Scanning all the photos I have only hard copies of.  Ping pong.  Bowling. Writing. Reading.  Cross-stitching.  Run for office and use it as a public forum for ranting Network-style if it becomes clear I won't win, steer philosophical discussions on the role of AI in our daily lives.

I'm not going to be able to do all this at once. And that doesn't make me a failure.  I can use tools to keep my family/spiritual/social/professional/physical goals in front of me.  Eliminate junk.  Use Facebook just enough to keep up with the big news of my real-life friends.  Don't overthink; pick something that's fine and stick with it.  Don't get sucked into drama.  Re-route myself to a goal/intention that I've found to be important. 

At the moment, these goals/intentions are growth (learning skills or facts/concepts that grow new neural pathways), connection with fellow humans (and dogs, I suppose), and reduction of blood pressure. 

Happy 2019!

Saturday, July 21, 2018

Tulsa Techfest 2018 - DevOps and Drive Thrus

On July 20, Tulsa TechFest was held at OSU-Tulsa.

There were 16 different tracks of and four different session plus a keynote plus lunch.  Not bad for a free conference in town.

The themes of the day seemed to be C#, Agile, Feature Flags, and AI.
Image Credit: Marc Carlson

The keynote was given by Donovan Brown, DevOps guru at Microsoft.  It was inspiring, despite the fact that he was super excited about their move to fire / transfer to other areas within Microsoft their manual QA team for their VSTS project.  However he did clarify that it was a special case, that the team itself was both a subject matter expert on the product and acting as end users before doing a controlled rollout to concentric circles of customers, who are presumably more and more risk averse as you move outward.

He spoke about automating all of the things, focusing on the most offensive bottlenecks first, letting developers bear the burden of whatever bad code they write, both by being responsible for automating their own tests and taking the 3am phone calls when something blows up in production.

It resembled heavily the recent discussions on Modern Testing, specifically the reduction of using QA as a safety net to enable less-than-careful behavior from developers and identification/removal of bottlenecks. 

My top takeaways now that I've had a day to process.

1) Ed Eckenstein had the same experience I had with someone cutting them off at the McDonald's double drive through.  Though, as he's done a lot of work with coaching on mindfulness, connection, and gratitude since his survival of the Oklahoma City bombing, he had a better spin on his drive-through experience.  "What is the kindest interpretation of this behavior?" -- which is an interesting thought exercise.  I bet his McDonald's opponent didn't get out of their car and start cursing at him with two children in my grudge-holding doesn't seem quite so petty.  Though his point was indeed well taken for all non-fast food related matters.

2) Even if developers write the highest-quality code to the best of their ability, QA provides value acting as subject matter experts.  Donovan Brown said if his team were writing software for truckers, they would for sure still have some manual QA around.

3) I don't like the term "manual QA", which seems to me to be the label for anyone whose eyes see the software without the sole purpose of creating a script --   What's a better term that doesn't make us sound like early primates happily clicking their keyboards randomly...Subject Matter Engineers?  Air Traffic Control? Pre-Crime Investigators?

4) Continuous improvement is a team effort.  We have to support one another, both to promote a connected, low-stress working environment and to encourage experimentation. Getting better doesn't always work out on the first try.

Monday, July 2, 2018

30 Days of Automation in Testing - #1 & #2

Organized by the Ministry of Testing.

1 Look up some definitions for ʻAutomationʼ, compare them against definitions for ʻTest Automationʼ.

I googled a bit and found a nice rant that is probably not completely relevant here since it has to do with the testing vs. checking distinction.  I found the regression testing as a form of version control point interesting.  Regression testing is table stakes - it needs to be done, it's boring and time consuming.  Automate it.

Call it a check if the person you're talking with cares about the distinction. Call it a check if the acceptance criteria of creating an automated regression check is a clear programming task and it doesn't need a tester mindset to ensure that it was created correctly.  Once it's coded and checks what it's supposed to check, then and only then shall we call it a check.  But ensuring that the check checks what it's supposed to check, either with clear acceptance criteria or by double checking the check....that's a testing activity.

My thoughts on automation in general are to use whatever makes your job easier or less boring.  Don't turn off your brain just yet though.  You have to know what your automation is DOING.

The tool may be making pretty graphs and tables of load test results, but don't trust the numbers unless you know that it's really timing what you intend it to be timing.

Know whether your checks are passing because your software is still awesome or because the logic of your test code is always "everything's fine!"

2 Begin reading an automation related book and share something youʼve learnt by day 30.

I have a work project going on related to JMeter, so why not Performance Testing with JMeter 3 - Third Edition?  I'm an ACM member with benefits to use the OReilly/Safari/Packt collection of books, so I won't lose any money at least :-)