jonoropeza.com

Making software and software development teams. Mostly the people parts.


Seven For Sunday: September 2019

Book I'm Reading

An Elegant Puzzle: Systems of Engineering Management by Will Larson

I ordered this book when it came out around Memorial Day. Finally got around to cracking it yesterday and, my goodness. This is my day-to-day, my week-to-week and all my years as an engineering leader. All rolled into reasonable frameworks that make even the trickiest problems appear straightforward to solve.

If you've read Will Larson's blog, the book affects a similar tone of authority and prescription, which I could see putting some readers off. I personally find it refreshing given the author's depth of experience in the subject matter.

Infographic I'm Pondering

Diversity in Tech - Employee breakdown of key technology companies by David McCandless

Post I'm Pondering

Post-Startup Life: Reflecting on My First 18 Months Living in Denver by Danielle Morrill

This post tells the story of Danielle Morrill's time since her startup Mattermark was acquired. I enjoy most things Danielle writes and this post especially; Her account is a great addition to any tech or startup founder list you might be running on Twitter.

As I reached out for advice I was surprised to find many people who are high earners but have very little savings. For them, talking to me about my plans brought up a lot of uncomfortable comparisons about life choices.

Framework

Let’s define Strategic, Tactical and Operational planning from riskope.com

Most of my experience in small, flat orgs where the operational layer either doesn't exist or, if it does, is shared in a fuzzy layer between implementers and executives.

My current shop recently scaled beyond flat, and I'm realizing that where I am requires an operational thinking. This post provides a good framework for understanding what's required of me:

Operational planning is the process of linking strategic goals and objectives to tactical goals and objectives. It describes milestones, conditions for success and explains how, or what portion of, a strategic plan will be put into operation during a given operational period.

Quote

Peter Drucker, on the importance of observing, instrumenting and measuring:

That which is measured, improves

I've noted this truism before. Sometime over a decade ago I helped turn around a bleeding sales lead funnel. I started off by noting that we had no visibility into the data we were collecting. Within a period of implementing reporting (oh Crystal Reports, how I don't miss you), the numbers started getting better. We made many tweaks and changes, but nothing we did ever improved the numbers as much as simply reporting on and making the numbers visible.

I'm thinking about this again as my current shop has moved into a period of, as Will Larson puts it, reclaiming our unreasonable software. How simply by measuring and reporting on a category of metrics such as performance, they often start to improve. (This isn't magic. There's heavy correlation between having hired the right people + created the right culture and the ability for improvements to spontaneously appear in a newly measure system. Lots of blood sweat and tears are involved at the tactical level. Etc.)

Here's a fun note about this quote: Apparently Drucker never said it.

If something is widely attirubtued to someone, does it matter if they never actually said it? Is this a sort of Placebo Effect For Anecotes And Quotes?

Tweet

Consider the scale and scope of problems in complex systems that are fixed by simply rebooting...

Vonnegut said “Another flaw in the human character is that everybody wants to build and nobody wants to do maintenance.”

Respect those who work to keep that uptime approaching 100%
— cur1os1T (@cur1os1T) July 24, 2019

Poem I Find Relevant

Thirteen Ways Of Looking At A Blackbird by Wallace Stevens.

It’s often tempting to apply our initial perspective on a problem without pausing to diverge. This week I was reminded by this classic Stevens poem that there are always multiple points of view to examine any situation from. 

One thing that used to annoy me about this poem: The 13th stanza doesn’t reach a satisfactory conclusion. (Jim Harrison tells us “Life is short on conclusions and that’s why it’s often a struggle to end a poem").

It’s a partial framework on offer here. How to diverge. You’ll have to do the work to converge. It took me a look time to come to terms with this. In my younger days I wanted the full recipe, or nothing at all.

Classic Book I'm Skimming

The Practice of Programming by Brian W. Kernighan (intro available here)

This classic (1999?) describes universal engineering concepts that "are independent of language, operating system, or programming paradigm”, expressed as four basic principles that “form the bedrock of good software”:


  • Simplicity - keeps programs short and manageable
  • Clarity - makes sure they are easy to understand, for people as well as machines
  • Generality - they work well in a broad range of situations and adapt well as new situations arise
  • Automation - lets the machine do the work for us, freeing us from mundane tasks

Most of the examples are in C++, but the principles apply to modern web programming, and the examples are grokkable enough and such canonical examples of good intentions gone wrong that it's worth the effort.

Unrelated to tech: skimming the book reminded me of my favorite framework for tasting wine.

Hierarchy Of Needs Of Software Development

Hierarchy Of Needs Of Software Development by Scott Hanselman

Sometimes we need something to feel good about ourselves. If the base need of a software development team is having its work in source control? Ok, yeah. We got that one.

Overcoming The Mythical Man Month

Will Larson's thoughts on Overcoming The Mythical Man Month

Fred Brooks wrote in an unenlightened time… I read:

[Engineers] and months are interchangeable commodities only when a task can be partitioned among many workers with no communication among them... when a task cannot be partitioned because of sequential constraints, the application of more effort has no effect on the schedule.

I got to revisit this line of thinking this weekend, as I’m contemplating throwing two engineers into an epic that’s already past the point of being able to integrate them into the main line of work. My thinking is that there are two swim lanes available… thinking about it through the lens of _no communication among them_ will be my litmus test when I make the decision this week.

Blog Post I'm Referencing

6 Tips For Managing Through A Reorg from the Pingboard blog

We’re going through a transition at the office right now that looks an awful lot like a reorg. So I’ve been reading about reorgs.

Predictions I'm Pondering

2020 and Beyond Programming Trend Predictions by Indrek Lasn

  1. Progressive Web Apps Are a Force to Reckon With
  2. React Will Continue to Reign
  3. Always Bet on JavaScript
  4. Web Assembly Will See More Light
  5. GraphQL Adoption Will Continue to Grow
  6. Rust Will Become Mainstream

The first three resonate strongly with me and saturate my day-to-day. Web assembly makes sense to me, I just haven’t run into a good use case. It might be time to take another look at GraphQL and integrated backend frameworks like Apollo or Next.js. And finally, I definitely need to book a weekend this winter getting cozy with Rust.

Concept I'm Learning More About

Using SSE Instead Of WebSockets from Smashing Magazine

I haven’t kept up with push technologies as well as I might have... I realized this week that WebSockets were still my go-to answer for how to accomplish the paradigm.

Music To Code To

New Anti-Lilly & Phoniks album!

In my 20s I preferred working to punk or thrash. Sometimes in the last decade I switched to piano jazz or hip hop. The keystrokes might be a touch slower but the clarity of thinking that a good, methodical rhythm promotes is worth it to me.

Longform Reading on HCI

Bicycle for the Mind by Steven Sinofsky.

One of the engineers on my team shared an interest in Human Computer Interaction (HCI) this week; Two days later, and before I could action resetting on the subject, I came across this post that opened my eyes to how Steve Jobs and Apple's original vision for personal computers was a stake in the ground for HCI. Serendipity.

[Jobs]... says something few were thinking about which is “we’re going to start chewing up power specifically to help that one-on-one interaction go smoother and specifically not to actually do the number crunching and the database management and the word processing.”

Classic Blog Post Worth Revisiting

Hemingway’s 5 Tips For Writing Well from CopyBlogger.

Back in 2006 my daily reads were Seth Godin, Scott Hanselman, Smashing Magazine and CopyBlogger. It’s so nice to see that they’re all still going. This is a classic post that I've referenced dozens of times in aspiring to communicate more clearly.

Async Meetings

What Happened When Our Team Switched to Only Asynchronous Meetings by Victoria Gonda from the Buffer blog.

I’m intrigued about the possibilities here… though I do think (and I’m biased because I love the tool) Slack, used in a disciplined way, is great at filling the gap between Slack and Email.

There Is No Tech Industry

Green Steel: How Arkansas Became Home To America's Cleanest And Fastest-Growing Steelmaker from Forbes

Including bonus pay, the average Big River production worker earned $129,000 last year, 3.5 times the median household income in Arkansas’ Mississippi County. Big River has already secured enough financing to double its capacity to 3.3 million tons by the end of 2020.
posted in Seven For Sunday