avatarharuki zaemon

Patterns pitfall

By

Collection of technical books, c. 2018
Collection of technical books, c. 2018

I’ve seen a number of posts recently both supporting and criticising Team Topologies and Dynamic Reteaming. I didn’t write either so I can’t say for sure what was intended. What I have observed though, is they’re essentially patterns books.

Like other patterns books, the problems I see aren’t so much with the book as the misapplication of the patterns (yes, we’re “doing it wrong”). In my experience, people tend to read patterns books and feel the need to apply every pattern. They want one of everything.

I’m old enough to have experienced this first hand with Design Patterns and Analysis Patterns in the mid ‘90s, and again with Patterns of Enterprise Application Architecture and Enterprise Integration Patterns in the early 2000s (guilty as charged, your honour!), and I’m seeing it happen again with Team Topologies and Dynamic Reteaming.

I don’t think I’ve read a patterns book and thought the patterns were right or wrong. They’re usually descriptions of useful ways of approaching various problems, or in some cases simply observations of how people have solved them. Frankly, they all look appealing in some way, and that’s part of the challenge: patterns are heavily context dependent, and adequately conveying that context through a book is difficult.

Do you need a factory, or a unit of work, or a tiger team, or a platform team? I have no idea. I do know that just because a book talks about a pattern doesn’t mean you should use it.

Understanding patterns absolutely helps us understand the problems we want to address, identify the patterns we’ve already implemented (not necessarily by design), and compare that to what we think we need.

Above all, resist the urge to have one of everything.

UPDATE 1: John Cutler prompted me to point out that I’m absolutely in the loved Team Topologies camp. It’s one of the books I regularly recommend people read.

UPDATE 2: Peter Sommerland pointed out I’d missed an important and influential series, Pattern-Oriented Software Architecture.

Seven quick links for Saturday afternoon

Shared by

How Good Is ChatGPT at Coding, Really? More evidence (as if we needed it) that current “AI” is more like a digesting duck than an intelligent coding companion.

The Emergence and Dynamics of Psychological Safety Over Time. I’ve often experienced a boost in psychological safety as “the new guy.” I’ve also experienced that sense of safety decline over time as the “reality shock” hits. Unsurprisingly, being aware of this phenomenon can help us implement practices that reduce the seemingly inevitable dip in psychological safety for new hires.

The #1 block to teamwork is defensiveness. Defensiveness is a major obstacle that prevents people from working well together in teams. When people get defensive, their thinking becomes rigid and they become less effective at problem-solving. Recognising our own personal warning signs of defensiveness is crucial for being able to manage it.

Immunity to Change – 4 Steps Model to Individual Change. I became a fan of the immunity to change model after I read the book. I’ve observed people who seem quite reticent to change dismiss the concept. Personally, it’s one of the things I credit with helping me overcome my own barriers to change.

Accessing inflight Wi-Fi for free via your air miles account’s “name” field. Perhaps the least efficient way to use the internet, an ingenious person invented HTTP over Air-miles Profile (via Dan Moren).

Axe Tree Felling for Log Cabin Hand Tools Winter | 1.0. Ever since I read My Side of the Mountain as a kid I’ve wanted to live in a log cabin in the woods. I’ll almost certainly never build one myself so this is the next best thing, I guess.

What Beats Rock Game. Surprisingly addictive. I thought it was just random at first but the creators put more thought into this than I expected (via Benji).

Three quick links for Saturday evening

Shared by

‎⁨Erica State Forest⁩, ⁨Gippsland⁩, ⁨Victoria⁩, ⁨Australia⁩ c. 2024.
‎⁨Erica State Forest⁩, ⁨Gippsland⁩, ⁨Victoria⁩, ⁨Australia⁩ c. 2024.

I spent most of the day walking and tinkering with this site and not much time reading, so this is all you get.

How to Raise Your Artificial Intelligence. Large language models (LLMs) like ChatGPT should not be thought of as intelligent agents, but rather as cultural technologies that allow humans to access and utilize information in new ways (via Benji).

A Father-Daughter Swearing Lesson | “The F-Word”. This made me smile the whole way through, then laugh out loud at the end (also via Benji).

The Real Life Bananaphone! I contemplated pre-ordering one of these when they were first announced. I’m glad I thought better of it.

Six quick links for Friday evening

Shared by

Simplify update meetings. Replace the typical unproductive staff meetings that could be handled via email with participatory “mini-pitch” sessions. This format can help team members practice concisely explaining their work, ensure everyone understands the team’s priorities, enable quicker identification of issues, and promotes cross-team collaboration.

Strategy at Human Scale. Companies need standardisation, compartmentalisation, and subordination. At the same time, they need to rethink these practices to be more “human-scale” by enhancing connection to the customer in a way that makes employees feel like willing participants rather than cogs in a machine.

Path dependence and identifying seedlings. “if you’re patient, if you don’t try to fight nature too much, and if you can let go of a rigid vision of the ideal outcome in favor of allowing things to emerge […] we can learn what to nurture and what to eradicate”

The science behind DORA. I’m using DORA metrics more regularly now to measure how we’re tracking towards our engineering objectives. I’ve tried all sorts of ways to do this, and I keep coming back to DORA surveys that are so simple and grounded in a mix of scientific rigor and practical considerations.

Sequoia Capital has doubts AI will be profitable any time soon, if ever. There’s at least a US$500Bn revenue shortfall between what the AI industry needs to break even, and what the major players could even dream of generating (via The Sizzle).

Merlin Bird ID. We’re using this app on our vacation. With a location-aware catalogue and a few simple questions, it’s been almost trivial to identify all sorts of birds.

Six quick links for Thursday morning

Shared by

Experts vs. Imitators. Imitators don’t know the limits of their expertise, can’t answer questions at a deeper level, can only explain things using the vocabulary they were taught, and get frustrated when you say you don’t understand.

An allegory of solution fixation. The solution fixation trap is a bias that leads people to focus on proposing and evaluating solutions before fully understanding problems. High-performers take the time to gather relevant information and perspectives before discussing solutions. I’ve written previously on the need to slow down and create space to work through problems more effectively.

Top 10 Ways to Foster Psychological Safety in the Workplace. Psychological safety looks different for everyone and should accommodate diverse needs and preferences. Key practices include leveling power gradients, establishing shared team agreements, prioritizing active listening, using clear and compassionate communication, valuing and encouraging speaking up, framing work as experiments for learning, regularly reflecting on lessons learned, and defining clear behavioral boundaries.

Only a fool gets rich twice. Having a life-changing amount of money in a single stock position comes with significant stress and uncertainty about what to do. Cognitive biases like anchoring, endowment, and familiarity lead people to holding out for even more, then losing the majority of the value waiting too long. When given a chance to sell a concentrated position you should sell 20%-80%.

The Shareholder Supremacy. “Shareholder supremacy” and “financial nihilism” have poisoned the tech industry and the broader economy, and led to the proliferation of disconnected, short-term focused managers who run companies in ways that harm workers, customers, and society, while enriching themselves and shareholders. This reminded me of Roger Martin’s A New Way to Think c. 2022, and an article he wrote in Forbes c. 2011.

Doctor does actually mean someone with a PhD, sorry. I love Dr Eleanor Janega’s Going Medieval. This time … it’s historically inaccurate to claim that only medical doctors should be called “doctors.” The term “doctor” originally referred to those with a PhD, who were university professors and teachers. Originally, medical practitioners were called “physicians,” not “doctors.”

Parable of the Talents by Octavia E. Butler

Reviewed by

I admitted defeat and returned the book, unfinished. It’s one of the few books I’ve ever given up on.

The second book in the Earthseed series, I found Parable of the Talents a hard slog from the start, and it didn’t seem to be getting any better.

I really enjoyed Parable of the Sower and still recommend reading it. Thankfully, it was told in such a way that it needed no sequel.

Seven quick links for Monday midday

Shared by

In defence of traditional swearing. This came up during a discussion on Mastodon. Needless to say, I disagree with the author.

Surfaces Concave & Convex. Concave contexts are ones in which there is natural momentum toward a positive, desirable outcome. Convex contexts are ones in which there is natural momentum away from a positive, desirable outcome. It is critical to recognise which shape you are operating on and act accordingly.

ChatGPT is bullshit. We should describe LLMs as “bullshitting” (in the Frankfurtian sense) rather than “hallucinating” in that they convey a certain impression of themselves without being concerned whether anything at all is true.

Using AI at Work Makes Us Lonelier and Less Healthy. There is some research to suggest that employees who use AI as a core part of their jobs report feeling more isolated, drinking more, and suffering from insomnia compared to employees who don’t use AI as extensively.

Constant Change Is Rewriting the Psychological Contract with Employees. Employees’ willingness to support enterprise change has collapsed. While it’s fair to say that companies must focus on continuous reinvention, effort is required to support the workforce to adapt and thrive in this new world.

NASA’s ISS Spacesuit Situation Turns Grim. The spacesuits used by NASA on the ISS are over 40 years old with only 18 fully functional units remaining. There have been multiple incidents of water leaks inside astronauts’ helmets during spacewalks!

Cardiorespiratory fitness is a strong and consistent predictor of morbidity and mortality among adults. From the annals of no shit Sherlock: higher cardio-respiratory fitness (CRF) is associated with a 41-53% lower risk of all-cause mortality when comparing high vs low CRF.

Fourteen quick links for Sunday afternoon

Shared by

Dolomites, Canazei, Italy, c. 2024.
Dolomites, Canazei, Italy, c. 2024.

I’ve been travelling for work and had quite a bit to catch up on (and still do) …

5 Things I Learned About Leadership from the Death & Rebirth of Microsoft. When Satya Nadella became CEO of Microsoft in 2014, he transformed the company by changing its culture and strategy. He encouraged a growth mindset, made customer-centric decisions, and empowered Microsoft’s engineering teams.

How Good, Kind, Caring People Became The Bad Guys. A phenomenon known as “spontaneous trait transference” leads to people blaming and turning against those who try to warn them about problems or negative situations. I’ve watched first-hand as leaders become increasingly resentful towards those who point out problems. Turns out, it’s a fairly common psychological bias, one that takes deliberate effort to overcome.

Manage for congruence, harmony, and legitimacy. The key to effective organisational change is aligning on vision, problems, and the intention to address them collaboratively, rather than imposing solutions. Leaders should focus on cultivating the capability for collective observation, evaluation, and confrontation of challenges, rather than directly redesigning organizational structures.

The Pac-Man Rule. The Pac-Man Rule states that when standing in a group, you should always leave room for one more person to join the conversation. When someone joins the group, make room for one more. Such a simple way to create space for others to participate.

Seven Years Later: What the Agile Manifesto Left Out. It’s another 13 years since Brian Marick’s talk, and it still resonates with me.

Software Art Thou: Real Engineering. I’ve been watching Glenn Vanderburg iterate on this talk for what must be almost 15 years, and I appreciate it more each time.

Mathematicians Are Excited About a Newly Discovered Shape. A 2D Reuleaux triangle is a shape with a constant width but a smaller area than a circle. Mathematicians have now discovered a 3D equivalent that has a constant width but a smaller volume than a sphere of the same dimension.

What Does A Great Cup Of Coffee Taste Like? I’d pretty much watch anything by James Hoffmann and the production of this particular video is off the charts.

I accidentally created the most powerful Bond theme. I love anything James Bond and I genuinely can’t get enough of reinterpretations and remixes of the theme tune.

Everything you’ve been told about the ‘Chickenpox bomber’ is wrong. Because of course it is. While there’s some truth to the story of mathematician Abraham Wald’s survivability recommendations, many details are incorrect or exaggerated and embellished over time.

Was There A Trojan Horse Hidden In Section 230? A novel lawsuit against Meta argues that Section 230(c)(2)(B) could provide immunity for creators of middleware tools that enable users to restrict access to content on social media platforms.

Blockchain Rasputin over here is mad that moderation exists. Speaking of content moderation, I’m no fan of Jack Dorsey and the title says it all, really.

Neil deGrasse Tyson Explains The Three-Body Problem. I didn’t know what the three-body problem was until I watched this. If there are less divisive personalities who explain it equally well, please let me know and I’ll gladly share those.

The 10 Shortest Flights in the World. Spoiler: Loganair‘s flight between Westray and Papa Westray is currently the World’s shortest flight, lasting less than 2 minutes on average and covering just 2 miles.

Parable of the Sower by Octavia E. Butler

Reviewed by

★★★

The Friction Project: How Smart Leaders Make the Right Things Easier and the Wrong Things Harder by Huggy Rao, Robert I. Sutton

Reviewed by

★★★★★

Eve: How the Female Body Drove 200 Million Years of Human Evolution by Cat Bohannon

Reviewed by

★★★★★

Eleven quick links for Saturday morning

Shared by

Passkeys: A Shattered Dream. This matches my experience using passkeys. It was hard enough getting my family to use a a password manager. Harder still to get them to use a different password for every service. Passkeys are so far the worst of all worlds.

Using Legitimate GitHub URLs for Malware. Due to the way GitHub comments work, a malicious actor can upload malware and have it appear to come from the owner of the repository, even after the comment has been deleted.

Cultures of Growth - Mary C. Murphy. Mindsets are environmental/cultural as much if not more so than individual. Genius mindset cultures can crush (too soon?) even the strongest growth mindsets. I enjoyed this enough that I’m now reading her book.

Notes on Complexity - Neil Theise. Negative feedback loops are necessary to achieve adaptability in complex systems. Unconstrained positive feedback loops (like those we see in companies going for hyper-growth) lead to collapse.

Gaining depth perception. Someone regained depth perception with the help of prism glasses. Imagine not having depth perception in the first place?!

Navigating the symmetry of trust. Trust-building is intricately linked to risk symmetry: trust flourishes when perceived risks are roughly equal; is difficult to cultivate when risk is highly asymmetric; is hard to maintain when risk symmetry is ambiguous.

Novel attack against virtually all VPN apps neuters their entire purpose. Novel in the sense that it’s been feasible since about 2002 but only recently discovered by researchers.

Hierarchy is Good. Hierarchy is Essential. And Less Isn’t Always Better. I’ve been skeptical of this current trend to “flatten” organisational hierarchies. It has seemed to me more about cost-cutting and command-and-control than effectiveness. Research suggests I’m not wrong.

Seeing like a CEO. CEOs (much like administrative states) often attempt to make everything legible, to them. In doing so, they can overlook important characteristics of complex systems that make their organisation effective, adaptable, and safe.

Transformations That Work. If you’re going to continually disrupt your workforce with change, you’d better be sure it’s worth it.

The Tech Baron Seeking to “Ethnically Cleanse” San Francisco. Confirming all my biases about Silicon Valley. Srinivasan seems like the latest (and presumably not the last) in a long line of Musks and Andreesens.

Eight quick links for Monday morning

Shared by

Dieter Rams pointing at things he doesn’t like. This had me in fits of uncontrollable laugher, literally for days.

Lofi Girl. I often have this playing in the background. I listen on Apple Music but here’s a YouTube station with links off to other streaming services.

How Jess (a software developer here in Australia) created 2D pixel art water. Being a kid of the ’80s I love this style of game. Being the parent of a kid who loves to code this style of game, I’m always on the lookout for inspiration and learning material for them.

But they were doing fine: autistic burnout. We’ve absolutely observed all this in our ASD child. It was validating to learn we weren’t just imagining it.

How the codpiece flopped. I love how the “solution” to wearing individual stockings on each leg was not to sew them into one piece, but rather to wear increasingly large and ornate codpieces.

LIGO has surpassed the quantum limit. LIGO (or Laser Interferometer Gravitational-Wave Observatory) consists of 4-kilometer-long vacuum tubes, and detects ripples in space-time that are generated by colliding black holes and neutron stars, millions to billions of light-years away.

Five minutes that will make you love Thelonious Monk. I’ve been a fan since the early 2000s when a friend introduced me to Monk’s work. Maybe this will convert you too?

David Byrne’s dance rehearsals for stop making sense. As a kid, Talking Heads was one of my favourite bands. Seeing this brought back so many great memories.

Principle: Adjust levels of involvement based on the maturity of the team

By

It’s sometimes hard to know just how much involvement to have. Too much and I can come across as micro-managing; too little and I’m an absent parent who only shows up when something goes wrong. I can think of numerous examples where I’ve left it too long or I’ve expected too much of a team and things have gone sideways, or other times I’ve allowed my discomfort at having less control get the better of me and I’ve jumped in too soon.

I’m not sure I have good heuristics for how much is required at any given time. Sure, there are some possibly obvious things like: Long-running, high-performing teams already know how to operate and improve and may only require intermitent involvement; Less experienced people might need more direct involvement day-to-day. But even then, as teams evolve—new people come and go, or goals and objectives change—so too must my level of engagement.

These days, I try to stay connected by attending rituals (stand-ups, etc.), offering support if/when needed, and asking individuals and teams who, what, when, and how questions to get a sense of performance and progress. In cases where they don’t need alot, I can work on building trust and understanding, and reward them for their efforts. When I sense that a team needs more, I can lean on that trust to help them navigate the uncertainty and ambiguity, redirect their efforts where needed, provide organisational support to unblock them, and coach them through the challenges.

By staying connected to the teams on a regular basis, even in a light-touch way, I get a better sense of how they are travelling and what level of involvement they need from me. For the most part, I no longer scare people when I turn up and ask questions.

Principle: Be explicit about the obvious as well as the non-obvious; the intuitive as well as the counter-intuitive

By

There’s no such thing as common sense, so you can’t leave it to people to figure out what you think is/isn’t sensible. It’s especially difficult for them when they are presented with counter-intuitive viewpoints that challenge their beliefs—how will they have any idea which other beliefs they should hold vs challenge?

Somewhat circularly, I came to this view while reading back a list of principles (like this one) I had been collecting. I found that each time I went through the list I internalised them a little more. After a while they became familiar enough to me that I started to say to myself “well, d’uh!”

The reflection of course is: They weren’t always so obvious, even to me.

Principle: Write down principles, values, and decision-making heuristics

By

A bunch of years ago, I found I’d reached a ceiling on my personal and professional growth. For most of my life, I’d relied on instinct, gut-feel, intuition, call it what you like. This got me so far but I was at a point where it was holding me back.

Learning and growth require failure, and failure requires taking risks. When you run on instinct, you can leave a lot of decisions until the last minute. This increases the likelihood that you will be successful, but mostly because you’re choosing the least risky option. You can see the problem.

Learning and growth also require feedback, and feedback requires being wrong. When you run on instinct, you don’t need to make explicit commitments ahead of time. This reduces the likelihood you will be overtly wrong, and it’s being overtly wrong that causes reflection and introspection and long-term pattern matching.

For the past few years, I’ve been attempting to capture my implicit decision-making principles in as close to realtime as possible. This has forced me to introspect and try to understand why I’m making the decisions I am. As someone who has a lifetime of running on instinct, this can be challenging to do. But, I’ve found that as with any practice, the more I do it, the easier it becomes and the more value I derive.

Periodically reviewing and reflecting on them helps me internalise things I still believe, and challenges me to rethink things I perhaps no longer agree with. This in turn helps me learn from my mistakes, helps others understand what I’m thinking, improves the feedback and input I receive, and improves my ability to support others to develop and grow.

Being explicit about my principles makes it easier for me to hold myself accountable, and for others to hold me accountable, by making sure my words and actions are consistent and coherent.

That’s not to say that I don’t still use my instinct, I absolutely do. The difference today is that I try to be more deliberate about how I use my intuition, and more explicit about how I make decisions.

Nine quick links for Saturday morning

Shared by

Things Ray enjoyed in 2023. Always good for some inspiration.

Designing alien alphabets for Rebel Moon. Love a good Louie Mantia breakdown of his creative process.

The gory history of barber surgeons. For centuries in Europe, barbers performed surgical procedures like tooth extractions, stitches, and amputations in addition to haircuts.

A self-enforcing protocol to solve gerrymandering. Someone just solved gerrymandering using a mechanism that doesn’t require a neutral third party as arbiter.

93% of paint splatters are valid Perl programs. Who knew that ;i;c;;#\\?z{;?;;fn':.; was a valid Perl program?!

A unified theory of fucks. You only have a finite number so give them to living things (people, animals, plants) who will give them back, not institutions (companies, platforms, systems) that will suck you dry.

Why bad strategy is a ‘social contagion’. Strategy often lacks a focus on real challenges and problems due to “success theater” and ends up with everybody getting a little piece of what they want to do.

Why you’ve [probably] never been in a plane crash. Annex 13 holds that the primary purpose of an aircraft accident investigation is to prevent future accidents, over the search for liability.

Stop arguing, start debating. Decision-making skills are crucial to scaling and growing a company. Skilful debate allows you to move quickly and reliably through issues, and requires planning, structure, and discipline.

No Rules Rules by Erin Meyer

Reviewed by

★★★★★

I was expecting to hate this book and instead I loved it.

Together, Erin Meyer and Reed Hastings essentially document their analysis of the key principles that drive how Netflix operates.

It became apparent fairly quickly that many company leaders are doing a bad lip-reading of how they think Netflix operates. At best, they’ve read this book and ignored some of the critical steps:

  1. Increase talent density by paying for the best, and then pay them to leave when they’re objectively no longer the best.
  2. Remove controls (like vacation leave, and decision hierarchies) and increase freedom, autonomy, and accountability.
  3. Cultivate a culture of feedback by training everyone, and role modelling.
  4. Lead with context, not control.

The book reminded me of An Everyone Culture and Principles but easier to read, more practical advice.

Facilitator's Guide to Participatory Decision-Making by Sam Kaner, et. al.

Reviewed by

★★★

I read the 3rd edition, and I believe there is a 4th edition in the works.

As a fan of participatory leadership and consent-based decision-making, I figured this would be a useful book to read and I was not disappointed.

The book is almost entirely practical with very little standalone theory. Every chapter introduces a new set of patterns, then walks through what they means, why they’re important, concrete scenarios explaining when and why they apply, and concrete examples for how to apply them.

It was fairly clear, to me, how this book has both documented and influenced the practice of what has become know as The Art of Hosting.

As with such books it’s pretty dry but as a reference, I definitely recommend it.

I finished up at Envato this week

By

I sent a variation of this internally, and posted to LinkedIn on Wednesday:

🦁 Today is my last day at Envato after a wild checks notes 7 years, 2 months, and 18 days.

💔 I have very mixed feelings about leaving. There are without doubt some amazing people here and I will very much miss working with you.

🎓 I’ve made plenty of mistakes and would like to think I’ve grown from them all. I encourage you to take a deliberate approach to your own development. Embrace change and constant improvement, be resilient in the face of set backs, and importantly (in fact the crucial step) don’t shrug off the failures as simply a necessary outcome. Instead, reflect on what you can learn from them and, knowing what you know today, what you will do differently next time.

💫 I’m super proud of the transformation we’ve been able to achieve, through an incredibly challenging few years: embracing change, focusing on improvement, and bringing many parts of the business together.

🧬 At the same time, there’s always more to do, and I felt Envato needed fresh eyes, fresh energy, and fresh DNA to capitalise on new opportunities.

🌱 Hopefully, me stepping out of the business also creates new opportunities for others to grow and succeed, and I look forward to seeing what you all manage to achieve.

🙏 I have one request, and it’s absolutely optional, of course. If you have any advice for me to take into my next role (good, bad, more of, less of, etc.) I would love to hear it. Help me be better.

📜 Lastly, it wouldn’t be me without a Haiku:

Beginners mindset
Give it everything you have
Start each day anew

👋 Goodbye, adiós, hei konā mai, tạm biệt.