[HN Gopher] Do something, so we can change it
       ___________________________________________________________________
        
       Do something, so we can change it
        
       Author : ingve
       Score  : 124 points
       Date   : 2023-08-03 14:54 UTC (1 days ago)
        
 (HTM) web link (allenpike.com)
 (TXT) w3m dump (allenpike.com)
        
       | yieldcrv wrote:
       | This matches my successful approaches too
       | 
       | I've had many potentials partners be stuck in the "we support
       | what you're doing, let's talk, and keep talking" phase
       | 
       | and when I put them in the slide deck or team page that's how I
       | learn who is really with me
       | 
       | everything from
       | 
       | "use this picture instead, let's rock!"
       | 
       | to
       | 
       | "Omg my firm can't be involved in this!"
       | 
       | Its much faster of a resolution than waiting for an undetermined
       | ambiguous level of comfort that may never come
        
       | xsmasher wrote:
       | I like this. I call it "making something solid enough to argue
       | about." Once you get out of the realm of design docs and create
       | something people can poke at the next steps become clear. Just do
       | something to move the ball up the field.
        
       | dclowd9901 wrote:
       | I spent a minute at Amazon so I'm familiar with the one/two way
       | door paradigm. It was one of the big takeaways I got from my time
       | there, especially the aspect of trying to make more one way doors
       | into two way doors. Often you don't even consider this path
       | because you're so hung up on thinking through all the
       | consequences of the one way door that you don't just... stand
       | back and check the frame, to extend a metaphor.
        
       | iterativve wrote:
       | > Do something, so we can change it
       | 
       | This is what musicians do - put in nonsensical filler lyrics
       | until they work out the rest of the song. Sometimes the throwaway
       | lyrics are even kept. The Beatles did this to great effect in the
       | Get Back documentary. It was so cool to see how the now legendary
       | songs took shape. You got to start somewhere. Everything is
       | iterative.
        
         | Cthulhu_ wrote:
         | Video games are like that too, just put in default models,
         | textures, placeholder music, and iterate until it's done. Mind
         | you, some placeholders have copyright protection, IIRC a game
         | shipped recently with copyrighted music that was used as a
         | placeholder.
        
           | [deleted]
        
       | slewis wrote:
       | I call this "keep the fingers moving".
        
       | shadowgovt wrote:
       | As a solid manager once described it, "It's a lot easier to argue
       | over an implementation prototype than to argue over a design
       | doc."
       | 
       | This was not an argument in favor of not writing design docs, but
       | instead an argument in favor of moving towards prototype while
       | waiting for people to weigh in on a design instead of doing
       | nothing with that downtime.
        
       | robertlagrant wrote:
       | > maybe you refrain from repeatedly permanently sabotaging it,
       | like some kind of ridiculous gibbon
       | 
       | Great wording. I'll pick a forgotten reference, from not really
       | that long ago. Anyone remember the Kin[0]?
       | 
       | [0] https://www.engadget.com/2010-07-02-life-and-death-of-
       | micros...
        
       | echohack5 wrote:
       | I want to agree with this post, but I don't. This person is in a
       | position of power over their product.
       | 
       | Instead, I have found that decisions work by "path dependency".
       | If something works, even if it is a poor implementation, the path
       | to get there is holy ground and the amount of effort to change a
       | 10 minute decision that was made flippintly by two business
       | people chatting in the urinals on a Wednesday is like trying to
       | siege the walls of Jehrico.
       | 
       | There's no solving this problem because it is fundamentally human
       | in nature. The egos are invested in the existing thing -- so
       | improving the proof-of-concept-that-is-now-hastily-shoved-into-
       | production problem requires that you unravel every person's
       | thoughts and pride on the current thing, regardless of the
       | seriousness of the problem. And so the problem cannot get solved
       | and change cannot happen unless something catastrophic occurs.
       | 
       | Thus, the line-worker software engineer, who has no real
       | organizational power, has to hope that the proverbial printer
       | falls down a flight of stairs "accidentally" so that they can
       | swap out the black ink cartridge to a new one that doesn't make
       | weird bleed lines on the edge of every page. That way, when the
       | new printer comes in, and someone complains that the ink bleed is
       | gone and how they liked that, that you can feign ignorance.
        
         | em-bee wrote:
         | _There 's no solving this problem because it is fundamentally
         | human in nature._
         | 
         | the solution is unity. you are right that with a someone in a
         | position in power making decisions it can be very difficult to
         | change that, but when the whole team makes a decision then the
         | whole team can also change that decision.
         | 
         | what is important here is to develop that mindset that
         | everyones input to a decision is valuable. the challenge is
         | that this requires trust that needs to be developed
        
         | majormajor wrote:
         | Devil's advocate: if nothing bad happens resulting from the
         | path chosen with that 10-minute-decision solution, is it fair
         | to call it poor from the business perspective? Or even if
         | something "mildly bad" happens, if the flip side was spending 3
         | weeks doing research until finally arriving at a 24% better
         | approach, which of those costs is higher?
         | 
         | If the team/org is too high-ego to actually treat 2-way
         | decisions as 2-way decisions after they get made, I think
         | that's a bit of a different problem. The org has to invest in
         | the "so we can change it" part of the plan.
        
           | tra3 wrote:
           | In my experience, a quick decision is often a poor decision.
           | Most of the time it's suboptimal but occasional it's outright
           | damaging. Most places I've worked at, claim that decisions
           | are reversible, but they aren't. Unless a process or a piece
           | of software is actively and visibly misbehaving, nobody
           | refactors it.
           | 
           | There's gotta be a balance between waterfall and fake agile,
           | but I haven't found it yet.
        
           | jahewson wrote:
           | Well now this is what we call a false dichotomy.
           | 
           | The version that I've always experienced in practice is "we
           | spent six months fixing bugs and it's still broken, because
           | we did not read the first page of the docs. No we do not want
           | to read the docs now. Look I found a stack overflow post
           | where some unknown, unqualified fool who is also incapable of
           | reading the docs says to do it this way".
           | 
           | Weeks of bug fixing can save you literally hours of planning.
        
           | tikhonj wrote:
           | I mean, if it was a good decision, it was a good decision.
           | But there are a lot of ways for a decision to be bad without
           | _legibly_ causing a _legible_ problem--and the  "business"
           | might be happy with that--but that doesn't make it a good
           | idea!
           | 
           | A common pattern I've seen is a team or organization getting
           | in the habit of collecting little papercuts where no
           | individual problem is bad enough to register but, over time,
           | the codebase becomes slow and painful to work on. What's
           | especially dangerous is that the state of the system informs
           | people's expectations: what's easy, what's hard, what's
           | possible at all. You get to the point where changes that
           | should be easy are seen as inherently difficult and people
           | start making strategic decisions that implicitly compensate
           | for this, masking the accumulated problems even further.
        
             | OkayPhysicist wrote:
             | Currently working on a project like this.
             | 
             | It's a 20 year old codebase, so it's gotten so bad that we
             | spend 2 weeks planning something that could take me 1 week
             | to write in the current codebase or 1 day to write in a
             | sane codebase, on a product that I could probably re-write
             | from scratch in a month.
        
           | Buttons840 wrote:
           | > if something "mildly bad" happens, if the flip side was
           | spending 3 weeks doing research until finally arriving at a
           | 24% better approach, which of those costs is higher?
           | 
           | The flip side is often to ask the people doing the work for
           | input, there's a good chance they know what's best. There's
           | often a group that can make decisions and implement the
           | decisions, and another group that can only make decisions,
           | and so naturally we divide the work so that those who cannot
           | implement the decisions make the decisions and those who can
           | do both don't ever get to make decisions.
        
           | NewEntryHN wrote:
           | While I agree with the sentiment, I can see 2 counter-points:
           | 
           | - "Nothing bad happens" might be the accumulation of risk
           | until something _very_ bad happens.
           | 
           | - Something bad might actually be already happening, only
           | silently. For example, teams suffering unnecessary difficulty
           | whenever they need to work on some part of the codebase, but
           | it's considered "normal" because that's life now.
        
         | jahewson wrote:
         | This is so true. It still shocks me and I don't know why. The
         | most frustrating version for me is when the original author of
         | a solution didn't care all that much and would admit it was a
         | hack but they're no longer around - and their successor thinks
         | that what they've inherited is some sort of sacred object built
         | on infinite and unknowable wisdom. So this obvious design flaw
         | must actually be a carefully designed feature that were simply
         | not capable of understanding. Maddening.
        
           | hashmush wrote:
           | I try to always add comments to such code that explicitly
           | says exactly that. Something like:
           | 
           | > This is a best effort hack based on X and Y. It might not
           | be 100% correct. Feel free to improve it.
           | 
           | > - Name, 2023-08-05
        
         | wpietri wrote:
         | > it is fundamentally human in nature. The egos are invested in
         | the existing thing
         | 
         | That is one thing that can happen, because it is _part_ of
         | human nature. But it is not _the whole_ of human nature. if you
         | have a culture of experimentation and two-way doors, people
         | learn to invest not in one particular experiment, but the
         | process of experimentation. They invest their egos not in one
         | particular outcome, but in the team and their long-term
         | success.
         | 
         | I get that the dominant culture in American business is
         | managerialism [1], where we all have to pretend that people
         | currently holding power are brilliant, while they have pissing
         | contests over their place in the corporate dominance hierarchy.
         | But that's not the only way things can possibly work. I've
         | lived different approaches, as has the author of the piece.
         | 
         | [1] https://www.amazon.com/Confronting-Managerialism-Business-
         | Ec...
        
         | vlod wrote:
         | Or take a risk and just replace the printer cartridge?
         | 
         | i.e. the classic line "It's Easier to Ask Forgiveness Than It
         | Is To Get Permission" ...Rear Admiral Grace Hopper
        
           | robertlagrant wrote:
           | The other thing the Rear Admiral said, which is applicable
           | here, is, "Why does everyone keep attributing quotes to me?"
           | [0][1]
           | 
           | [0] https://quoteinvestigator.com/2018/06/19/forgive
           | 
           | [1] https://spectrum.ieee.org/did-you-know-edison-coined-the-
           | ter...
        
             | vlod wrote:
             | haha. fab, didn't realize that!
        
         | golemotron wrote:
         | > There's no solving this problem because it is fundamentally
         | human in nature. The egos are invested in the existing thing --
         | so improving the proof-of-concept-that-is-now-hastily-shoved-
         | into-production problem requires that you unravel every
         | person's thoughts and pride on the current thing, regardless of
         | the seriousness of the problem. And so the problem cannot get
         | solved and change cannot happen unless something catastrophic
         | occurs.
         | 
         | Maybe. It can be as simple as loss aversion.
        
         | micromacrofoot wrote:
         | The concept of line-worker software engineers seems like the
         | problem in this parable. People need the ability to have some
         | small amount of override and the ability to make decisions
         | without risking their jobs, even if it's somewhat boxed to
         | their experience level. Leaving everything up to management
         | only is a way to ensure that little gets done and no one's
         | happy doing it.
        
         | munificent wrote:
         | I agree completely. Path dependency is such a huge component of
         | how the world is built and many people are oblivious to its
         | effects.
         | 
         | Even the freeest "two-way door" decision becomes one-way over
         | time because every day is a step farther away from that door,
         | and another step you have to backtrack in order to go back
         | through it.
        
       | SomaticPirate wrote:
       | Anyone know the subtext? What is the $44 billion dollar mistake
       | the author is referring to?
        
         | julianeon wrote:
         | The acquisition of Twitter, which, to be fair, has done down a
         | lot in value since then.
        
       | Brendinooo wrote:
       | I like this. The first and last ten percent of the work is
       | usually the hardest. If you have someone get _something_ out, it
       | gets you to that next stage.
        
         | progmetaldev wrote:
         | Or you're like me, and the beginning of a project is crippling
         | (mentally), and you analyze every "what if" leading to a mental
         | use of 20% of your actual production time. Then deadlines kick
         | in, and I work late and put extra time outside of office hours
         | in. The software actually ends up being better because I've
         | examined as many situations as I can, but it can't be good for
         | my long-term health. I feel like I'm not the only one to suffer
         | this curse. Yay anxiety, and booooo anxiety!
        
         | chuckhend wrote:
         | A lot of times its a more productive debate over the tangible
         | 'something' thats out there too (even if its wrong), rather
         | than the theoretic or a design!
        
       | robofanatic wrote:
       | what if the cost of undoing is too high?
        
         | xaellison wrote:
         | everything is reversible for the right price. Too high a price
         | = 'irreversible'
        
       | staplung wrote:
       | A _Joel on Software_ post[1] has this:
       | 
       | A terribly common error is having a debate over how something
       | should be designed, and then _never resolving the debate_. Brian
       | Valentine, the lead developer on Windows 2000, was famous for his
       | motto "Decisions in 10 minutes or less, or the next one is free."
       | 
       | [1]:https://www.joelonsoftware.com/2000/10/02/painless-
       | functiona...
        
         | hgsgm wrote:
         | That's the person who launched Vista and fled to Amazon?
         | 
         | He's also the person who once approved some request for money
         | and complained that it was a waste of his time to ask for so
         | little. I agreed, but, corporate policy.
        
         | majormajor wrote:
         | Yeah, I'm a big believer in finding 2-way decisions and
         | starting fast, but even for 1-way decisions there's a pretty
         | pervasive problem at a bunch of places of meetings that are
         | _arguments_ instead of _decisions_. Ego stroking for engineers
         | instead of getting something done.
        
           | irrational wrote:
           | The majority of arguments I've seen at work turn out to be
           | people taking past each other because they are using
           | different definitions for the same words or they are starting
           | with different assumptions. Eventually someone says, "When
           | you say X, do you mean Y?" And "Are you assuming that Z?".
           | Suddenly the argument goes away or is greatly simplifies. But
           | it takes so much to get to that point. I don't know why
           | humans are so poor at communicating.
        
             | entropicdrifter wrote:
             | Communication is NP-hard and the difficulty scales
             | exponentially with each added layer of complexity.
             | 
             | On top of all that, people in specialized roles tend to
             | invent jargon, then use it as an excuse to treat others as
             | inferior or outsiders instead of putting their ideas to the
             | test by explaining them to the rest of the world. People
             | who do that tend to be interested in maintaining an upper-
             | hand status-wise rather than actually getting shit done.
        
               | nine_k wrote:
               | Communication is only NP-hard if you have zero prior
               | context.
               | 
               | In most cases, you already have 99.9% of the common
               | language, including an acceptable common metalanguage
               | embedded into it. Coming up with mutually understandable
               | definitions is a bit of work, but it's far from
               | unsurmountable.
               | 
               | Note how many legal papers and even scientific papers
               | start with definitios. Other technical communication
               | should, too.
        
               | progmetaldev wrote:
               | One of the best things I ever did was to come up with a
               | straight-forward definition of UI components in our CMS,
               | so our designers and front-end developers could speak to
               | each other and be on the same level. When new features
               | were developed, and new components introduced, we would
               | all agree upon what made up that component and document
               | it.
        
         | m463 wrote:
         | I keep thinking about this - how microsoft's culture has led to
         | its continual survival. They respond quickly to the market and
         | ship features.
         | 
         | The products work for people, but nobody loves the products,
         | they tolerate them.
        
           | paulryanrogers wrote:
           | Windows 95 and 7 may be exceptions. I recall both being
           | refreshing and met with enthusiastism and praise. Early
           | versions of Microsoft Office as well were (at least at one
           | time) considered a step up.
        
             | applied_heat wrote:
             | Corel shit the bed with WordPerfect 5 or 6. Non stop
             | crashes. All word had to do to kill WordPerfect was not
             | lose your work
        
       | excalibur wrote:
       | > Should we pay billions to buy a company, then systematically
       | obliterate its accumulated reputation and userbase in an attempt
       | to inflate our overgrown yet still incredibly fragile egos?
       | 
       | Author explicitly said he was talking about Amazon, but I don't
       | think he was talking about Amazon.
        
         | sentientslug wrote:
         | That part was referencing Twitter, not Amazon. See the
         | following (44bn number is a giveaway):
         | 
         | > Maybe you put some conditions on your $44 billion acquisition
         | offer, and - if the deal goes through - maybe you refrain from
         | repeatedly permanently sabotaging it, like some kind of
         | ridiculous gibbon. You know, that kind of thing.
        
       | daniel_reetz wrote:
       | "Action produces information". If you "do something, so we can
       | change it" be sure to do it strongly in one direction or the
       | other, so that you set the direction of exploration, too.
        
         | apike wrote:
         | > be sure to do it strongly in one direction or the other, so
         | that you set the direction of exploration, too.
         | 
         | This reminds me of a game design technique Blizzard learned to
         | use back in the day when balancing their RTS games. Sometimes
         | they'd make a small change - say increasing damage by 4% - and
         | playtest the result. It seemed, maybe better? So they'd ship
         | it. Some time later, they'd realize they had way undershot, and
         | the ideal increase would have been 25%. They sometimes found
         | themselves buffing or nerfing the same thing over and over,
         | trying to get it right.
         | 
         | The approach that worked better for them was to err on the side
         | of first overcorrecting - say, try increasing damage by 40%.
         | This way, in playtesting they could clearly see the effects of
         | having gone too far, then back off the change as appropriate.
        
           | daniel_reetz wrote:
           | Really a great example of this strategy, which also shows up
           | in metrology.
        
       | tracker1 wrote:
       | I have found that in general, the simplest thing that works, that
       | is easy to replace tends to be some of the longest lived software
       | I've worked on.
        
         | moffkalast wrote:
         | Doesn't just go for software, but absolutely everything. A
         | temporary solution is always the most permanent.
        
       | denvaar wrote:
       | I'll admit I only skimmed this article, but I think that I have
       | noticed this sentiment as a boon during software development:
       | Sometimes I will find myself in a position where I need some
       | level of sign-off or approval from the team about something I'm
       | trying to do. If I ask for opinions without showing anything
       | concrete it's often crickets. However, if I make a pull request
       | (or even a couple pull requests show casing different options)
       | then it's much easier to find out people's thoughts. It may be
       | more work for me, but it's better than the paralysis feeling of
       | not being able to move forward, and it also helps me really
       | understand some of the options at hand.
        
         | Wxc2jjJmST9XWWL wrote:
         | I'm sorry if my comment isn't regarded as constructive... but
         | you skimmed an 'article' consisting of three paragraphs, that
         | takes maybe two minutes to read, but bothered to leave a
         | comment on it?
         | 
         | When I read "I'll admit I only skimmed this article" I though
         | maybe due to blocked JavaScripts the article didn't load for me
         | and I only read the preface of the actual article or
         | something...
        
       ___________________________________________________________________
       (page generated 2023-08-04 23:00 UTC)