I am who I am today because of the people I know, what I have learned, and the experiences I have had.

Intro

Suggested opening line: “Some of what shaped how I think: ants, a marching band, a book of knots, and a three-year argument on a mailing list.”

I have done some thinking. Here’s what I believe. Done mostly for myself. Wanted to share it.

These are the people, places, organizations, and ideas that shaped how I think and work. Not a complete list. Not in order of importance. Just what I keep returning to.


Nature

Momma Nature is my oldest teacher. I keep coming back to her because she has already solved most of the problems I encounter. How do you coordinate thousands of independent actors with no central control? Ask an ant colony. How do you build something resilient without over-engineering it? Look at a watershed. How do you balance consistency with variation? Study a forest.

What I took from nature is not metaphor — it is method. Observe carefully. Notice patterns. Notice where the pattern breaks. Nothing in nature is exactly identical to anything else, but the underlying structures repeat everywhere. That turns out to be true in software, in organizations, and in music.


People

Larry Wall and Damian Conway — A lively time of open argumentation that proved to be very productive. Larry wrote the Apocalypses — design documents for each major feature of Perl 6. Damian wrote the Exegeses — detailed explorations and implementations for the rest of us. High rigor. High entertainment. A great pair. I know programming better for having been party to those discussions. They designed a language for human brains, not for the convenience of the compiler.

Randall Schwartz showed me that hard things can be made approachable without being dumbed down.1 He had a gift for meeting you where you were and walking you somewhere new before you noticed you’d moved. That is a teaching skill worth studying.

Bjarne Stroustrup and the C++ community taught me something about the value of backward compatibility and community-driven design. C++ is not a clean language. It carries 40 years of decisions, some of them wrong. But the discipline of not breaking existing code — and the community process for adding to the language carefully — created something durable. I respect that more than I respect elegance. (See also: Larry Wall and Damian Conway above.)

Michael Feathers, Emily Bache, and Llewellyn Falco — Michael defined the term and gave us the framework: change internal structure without changing external behavior.2 A vocabulary for discussion and a catalog of refactorings that has passed the test of time (25+ years). Llewellyn and Emily built on that foundation, pushing the state of practice and making it accessible — to people, and to teams. In effect, the Adapter Pattern between theory and practice.


Organizations

AT&T Bell Labs (Kernighan, Ritchie, and the Unix crew) gave us the philosophy of small tools that do one thing well and compose with other tools. That philosophy has outlasted every “integrated solution” that was supposed to replace it. The shell pipeline is still one of the most powerful programming models ever invented.

O’Reilly & Associates (now O’Reilly Media) made technical knowledge accessible. The animal books were not just reference material — they were an argument that learning hard things could be pleasurable. That matters more than it sounds.

The Free Software movement (later rebranded Open Source) introduced me to the idea that sharing knowledge is a civic act, not just a commercial strategy.3 Code shared under a license that preserves your right to study, modify, and redistribute it is infrastructure. It has rights and responsibilities attached, like a road or a water system. The community that grew around that idea built the internet we use today, and did it mostly without being paid.


Entertainment

JMU Marching Royal Dukes. Two hundred people. Early morning practices in the fall cold. The half-time show is twelve minutes. To get twelve minutes right, you run it for weeks. The phrase I carried away: Good, better, best. Never let it rest, until your good is better and your better is best. That is not about perfectionism. It is about the discipline of continuous improvement in service of something collective. When it worked, two hundred people moved as one thing. That is not a metaphor for teamwork — it is teamwork, in its most literal and visceral form.

The Folk Project. Contradancing. Callers and musicians and dancers who need each other. The caller says “balance and swing” and every pair in the room does the same thing at the same moment. Balance — acknowledge your partner, find your center. Swing — move together, let momentum carry you. I have thought about those two words a lot. They say something about what matters in life beyond survival: play, community, movement, music. What we choose to do when the necessities are covered.

November Project.4 A free fitness movement that meets in parks. No gym, no fee, no excuses — just show up. If jumping up and down at 6:29 am doesn’t get you going, the camaraderie will. And if nothing else goes well for you that day, you know that at the very least — before 7:15 — you had fun, exercise, and a confidence booster marked complete. That guaranteed win early in the morning is not a small thing. It changes the whole day.


Communities of Practice

Perl. A language community that matched the language: eclectic, argumentative, generous, and surprisingly productive. The Perl 5 → Perl 6 transition was a years-long public design conversation that I watched closely and learned from. See also: Larry Wall and Damian Conway above.

Sustainable Ballard.5 Three peace activists, frustrated that the Iraq War was driven in part by oil dependence, got tired of being against things and asked: What are we for? That question sparked chickens, potluck meals, goats, local banking as a service rather than extractive usury — and a neighborhood-scale demonstration that a different future was possible to build. Founded in 2003, it became the first neighborhood sustainability group in Seattle and a founding organization of SCALLOPS (Sustainable Communities All Over Puget Sound). Not protesting. Not opposing. Making. The proof-of-concept approach to civilization: if you want to live in a different world, start living in it.


Human Interactions

Liberating Structures (Keith McCandless and the Seattle user group) gave me a framework I didn’t know I was missing.67 Human interaction at work is designed — either intentionally or by default. Most organizations accept the default: status meetings, presentations, open discussions dominated by the loudest voices. Liberating Structures is a catalog of alternative structures: small precise formats that change who talks, when, and to whom, producing outcomes the defaults cannot reach. This is not soft stuff. It is engineering applied to conversation.

Core Protocols (Jim and Michelle McCarthy) decompose the behavior inside a meeting into small named protocols: Check In, Investigate, Propose, Decider. It is an odd idea until you try it. Breaking “meeting” into component parts lets a group examine and improve each part separately, the same way you refactor code. I found the Decider protocol alone worth the price of admission.

Non-Violent Communication (NVC) showed me that aggression in conversation is often invisible to the person using it.8 When you assume a win/lose framework, your language encodes that assumption — in requests that are really demands, in observations that are really accusations, in “feedback” that is really judgment. NVC offers a different frame: everyone’s needs are legitimate; the question is whether we can find a path where everyone’s needs get met. Maybe not everyone’s wants. But their needs. That shift in assumption changes what is possible.

Lean Coffee (Jeremy Lightsmith and Jim Benson).9 Kanban for conversations. Born in Seattle in 2009 — no predetermined agenda, no speakers, no steering committee. Participants write topics, dot-vote on what they most want to discuss, then work through the list with a timer. Let smart, curious people self-select and self-direct a conversation on the topics that matter most to the assembled group, and you spark passion. Contain it with the lightest possible structure and you get something as elemental as duct tape or bailing twine for human creativity and enlightenment. It spread worldwide and kept going for years because it works.

Open Space Technology (Harrison Owen).10 The principle: whoever shows up are the right people; whatever happens is the only thing that could have. Open Space removes the predetermined agenda entirely and trusts the assembled group to create the sessions they need. It sounds like it would produce chaos. It produces the opposite — focused, energetic, self-organized conversations that a traditional conference format cannot match. AONW (Agile Open Northwest)11 applies Open Space to the agile community in the Pacific Northwest, and is one of the best gatherings of its kind.


Ideas

The GNU Manifesto.3 Richard Stallman’s argument was not primarily about software. It was about the responsibility of skilled people to build shared infrastructure, even when the market would not pay for it. Libraries, roads, scientific research — these things exist because we agreed, as a society, to fund them outside of market logic. The GNU Manifesto applied that argument to software. I don’t agree with all of it. But the core question — what do you owe the community that made your skills possible? — is one I keep returning to.

Reinventing Organizations (Frederic Laloux).12 Different organizations operate in genuinely different modes — not better or worse along a single axis, but different, with different assumptions about control, purpose, and trust. Laloux’s contribution was to name these modes and show how each is internally consistent. An organization running in one mode will experience another mode as threatening or incomprehensible. That explains a lot of organizational friction I had previously chalked up to bad management.

The Design of Everyday Things (Don Norman).13 Objects have affordances — built-in signals about how to use them. A door that should be pushed has a flat plate, not a handle. A dial that should be turned is round. When affordances are well-designed, they are invisible: you just use the thing correctly without thinking. When they are wrong, you pull when you should push, and you feel briefly stupid, and that is the designer’s fault, not yours. Norman’s argument is that this is not trivial — it is a language operating below spoken language, and it shapes safety, efficiency, and whether people feel competent or foolish. I cannot look at software interfaces the same way after reading this book.

Standards. Unglamorous and underrated. Mail servers interoperate because SMTP is a standard. Electric plugs fit outlets because committees agreed on dimensions. Threads on a bolt match the threads in a nut because someone specified the ratio. Standards are the shared infrastructure of the physical and digital world, built by committees, usually invisible, noticed only when missing.


Design Patterns

Design Patterns (the Gang of Four book).14 The patterns themselves are useful. What changed my practice more was the idea that a vocabulary for design is itself a tool. Before the book, talking about code structure required long explanations or code samples. After it, you could say “that’s a Strategy pattern” and a conversation that would have taken twenty minutes took two. Names create shared understanding, and shared understanding enables collaboration at a higher level.

Introduction to VLSI Systems (Mead and Conway).15 They found the underlying simplicity in integrated circuit design at a moment when it seemed impossibly complex, wrote a textbook, and in doing so created an open infrastructure for chip design. The result was a generation of custom chips designed by people who had not previously been able to afford entry to that field. It is a story about how a well-placed abstraction can open up an entire industry.

Ashley’s Book of Knots (Clifford Ashley).16 Over 3,800 knots. Every one hand-drawn. Ashley spent eleven years on it. A knot, like a well-written subroutine, is an elegant solution to a specific problem in a specific context. The book is a catalog of those solutions, and also a work of art — the kind of sustained, devoted attention to craft that makes you want to bring that same attention to your own work, whatever it is.

The Ants (Bert Hölldobler & E.O. Wilson).17 The definitive work on ants, by a quantum leap. Won the Pulitzer Prize for General Nonfiction in 1991 — the only professional science work ever to do so. Like Ashley’s Book of Knots: meticulous observation, nearly a thousand hand-drawn illustrations, decades of devoted attention to one small corner of the world. Wilson was no one-trick pony: he also founded sociobiology, coined “biodiversity,” and won a second Pulitzer independently. What I took from it: some people spend a lifetime becoming the world’s foremost authority on one small thing, and in doing so illuminate everything.


Platforms

GitHub.18 The town square. The bazaar. The flea market where you find reusable parts to build something bigger. Version control became social: open exchange of ideas, with vetting, forking, and composing. The pull request workflow changed how open source collaboration worked — not just technically but culturally. Visibility, asynchronous review, a record of decisions. Enabled much bigger steps by making reuse visible and trustworthy.

Open Source. See Organizations above. Worth naming separately as a platform because it is: a set of licenses, norms, and tooling that makes shared code infrastructure possible at scale.

Emacs. Not just an editor. A platform — one I have not outgrown in forty-plus years. Most tools solve a problem and are done. Emacs is a substrate for building the tool you need, and then building another one on top of that, indefinitely. What I took from it is the distinction between a tool that solves a problem and a platform that supports an ever-changing way of working. That distinction applies far beyond editors.


Technical Practices

Test-Driven Development (TDD). The name makes it sound like it’s about testing. It isn’t — or not primarily. Test-first is a discipline of thinking before doing: you have to know what you want before you can write the test that will confirm you got it. The tests are the artifact, but the practice changes how you design. I wrote worse code before TDD. Not because I was less skilled, but because I was not forced to think clearly about intent before implementation.

Refactoring. The discipline of changing code structure without changing its behavior, in small safe steps. Not cleanup. Not rewriting. Small, verified, reversible steps. Michael Feathers, Emily Bache, and Llewellyn Falco each found different ways into this practice and made it teachable. The insight that you can improve code you did not write, incrementally, without breaking it, without a big rewrite — that is one of the most practically useful things in software.

Dojo. The learning format, not the place. Knowledge workers learn best by doing, alongside others, with feedback. Not from a sage on a stage. The coding dojo — working through a problem together, rotating driver and navigator, talking through decisions — is a model for learning that respects how people actually build expertise. It does not scale from assembly-line assumptions about work, which is part of why it is underused.


References

  1. Schwartz, R. L., foy, b. d., & Phoenix, T. (2016). Learning Perl (7th ed.). O’Reilly Media. https://www.oreilly.com/library/view/learning-perl-7th/9781491954317/ 

  2. Feathers, M. (2004). Working effectively with legacy code. Prentice Hall PTR. 

  3. Free Software Foundation. (1985). The GNU Manifesto. https://www.gnu.org/gnu/manifesto.html  2

  4. https://november-project.com 

  5. Sustainable Ballard. (n.d.). Neighbors working together for a strong and healthy community [Home page]. https://www.sustainableballard.org/ 

  6. Lipmanowicz, H., & McCandless, K. (2014). The surprising power of liberating structures: Simple rules to unleash a culture of innovation. Liberating Structures Press. 

  7. https://www.liberatingstructures.com 

  8. Center for Nonviolent Communication. https://www.cnvc.org 

  9. http://leancoffee.org 

  10. Owen, H. (2008). Open space technology: A user’s guide (3rd ed.). Berrett-Koehler Publishers. 

  11. https://www.agileopennorthwest.org 

  12. Laloux, F. (2014). Reinventing organizations: A guide to creating organizations inspired by the next stage in human consciousness. Nelson Parker. 

  13. Norman, D. A. (2013). The design of everyday things (Rev. and expanded ed.). Basic Books. (Original work published 1988) 

  14. Gamma, E., Helm, R., Johnson, R., & Vlissides, J. (1994). Design patterns: Elements of reusable object-oriented software. Addison-Wesley. 

  15. Mead, C., & Conway, L. (1980). Introduction to VLSI systems. Addison-Wesley. 

  16. Ashley, C. W. (1944). The Ashley book of knots. Doubleday. 

  17. Hölldobler, B., & Wilson, E. O. (1990). The ants. Harvard University Press. 

  18. https://github.com