1. 12
    Terminology isn't universal practices ntietz.com
    1. 9

      Daodejing 1: No method you can explain is universally potent; no label you can affix is a universal name.

      1. 7

        It can be annoying at times, but sometimes it can be really productive to have someone in the room that’s willing to be a stubborn pain in the ass about making people explain/define unfamiliar terms, clarify ambiguous ones, and use them consistently. Especially when people are speaking from a number of very different contexts.


        A case of lower-tech terminological chaos that always amuses (and occasionally exasperates) me is how slippery the notion of what a/the product is can be when people in the room span a lot of different contexts like content production, development, marketing, managing content platforms and web stores, accounting, and strategic decision-making.

        1. 5

          Agreed. And besides being a stubborn pain in the ass, it’s hard as hell to not give in to “I shouldn’t ask about X or else people will think I’m stupid.” One of the hardest things I ever did in grad school was learn to swallow my pride and ask, repeatedly, what a term meant when someone said something I didn’t understand, or when they said something I thought I understood but which gave me the “…uh oh, they’re using this word in a way I don’t get” feeling. Standing up in front of a bunch of random professors and giving a conference talk? Baby stuff in comparison. Interrupting the one professor in the world who needs to think you’re smart if you’re gonna graduate, and asking “sorry, what do you mean when you use the term $FOO here?” Most social-anxiety-inducing thing in existence.

          1. 2

            a stubborn pain in the ass about making people explain/define unfamiliar terms, clarify ambiguous ones, and use them consistently.

            Hey, have we met? How did you know my middle name? XD

          2. 4

            Domain Driven Design acknowledges this problem and deals with it head-on via bounded contexts.

            In large, monolithic code bases, I also find it liberating to embrace the existence of ambiguity in human language and assign different meanings to the same terms in different subsystems. Works best if the programming language has first-class support for namespaces and some affordances for aliasing / prefixing identifiers from other namespaces for disambiguation at integration points.

            1. 3

              A little while back, I wrote that we shouldn’t say “auth” but should use other terms instead.

              And in the linked article they propose “permissions” and “login”. Holy shit, yes please. I have a new favorite author.

              1. 1

                The point where I usually run into issues is actually performing a “terminological renaming”. It can have a spectrum of difficulties in the actual code, but doing it with the actual people involved is so much harder, in my experience. And that’s even taking into account that I do try to meet domain experts where they are, as much as possible.

                1. 1

                  don’t get me started on properties, attributes, and annotations in popular programming languages.