First Principles Thinking

(sunilsadasivan.com)

49 points | by sunils34 2 hours ago

4 comments

  • bob1029 1 minute ago
    Higher order thinking is more important and rare.

    An aggressive first principles approach often leads otherwise well-intentioned technologists into strategic / ideological dead-ends.

    Do we do things because it's the "right thing" to do in the moment, or because of the final outcome that will eventually result?

    The most ideal answer is somewhere in the middle. I am far more interested in the total area under the curve than a single instant in time.

    In lieu of intentional higher order thinking, simply working backward from your customer on a regular basis will generally accomplish the same outcomes.

  • trwhite 36 minutes ago
    I'm really struggling to see how to make architectural decisions with an agent. It's great when you're at a total loss for ideas, but when you already have some of the pieces it ultimately wants to drive all of the thinking and takes over. Then it just feels like you're deferring your experienced judgement. I've seen colleagues lose the ability to reason any more without asking the agent to do it for them, because they inherently don't see the point if the agent is going to end up doing the whole piece (and probably auditing/overruling anything they came up with on their own).
    • pkaler 10 minutes ago
      > I'm really struggling to see how to make architectural decisions with an agent.

      I walk to work and home with ChatGPT Voice and AirPods. I ask it to be Socratic and I just start rambling the top of thing on my mind. After 20 mins of back-and-forth it's usually teased an answer out of me or I've teased an answer out of it.

    • bheadmaster 15 minutes ago
      This is one thing I actually do with a chatbot, instead of an agent. Voice mode even.

      I start talking to it while doing menial tasks like cleaning or doing the laundry, and I discuss the architectual decisions and options until I come to some resemblance of a plan.

      Good side of this approach is that I can't just "skim over" or "copy paste" things - either I understood them and can repeat them myself, or I can't. It takes more time than /grill-me and similar approaches, but it's the only approach that doesn't make me want to claw my brain out.

      • infecto 8 minutes ago
        +1. I have found that most coding harnesses are too focused on the doing that using a Claude/chatgpt chat gives me a lot better quality.
    • pxc 19 minutes ago
      > I'm really struggling to see how to make architectural decisions with an agent. It's great when you're at a total loss for ideas

      I feel the opposite, like if I go to an agent without first knowing what I want to build, I'll never figure out what I'm doing or why and it'll run away from me.

      I pretty much always go back and forth and have the agent write out a plan to a file and review it myself in my text editor. I still sometimes end up with surprises I disagree with, but I don't really find it to be true that the LLM ends up trying to "drive all of the thinking".

      When I'm thinking through an architecture, I not only instruct it to refrain from writing any code, I don't even necessarily tell the agent what I'm trying to build.

    • royal__ 32 minutes ago
      How much scope do you give it? I find it's easier to stay in control when you give it scope down the chunks of work you give it.
    • NotGMan 22 minutes ago
      Why would you care about architecture? It was an issue when humans were writing code so architecture mattered in the sense that you needed a sweet spot between current requirements and future extensions.

      The agent can rewrite half your codebase in one day, so architecture stops mattering for the most part.

      • delillos 10 minutes ago
        Why try to make things that are good? Why care about anything? Why not just turn our minds over to the machines, and let them rock us to sleep like babies?
      • AnimalMuppet 2 minutes ago
        Why would you care about architecture? Ability to implement the current feature, ability to implement future features, maintainability, and (at least sometimes) performance.

        But why would you care when an AI can just rewrite it? Yes, but can it rewrite it to a good architecture? Or just to a different one?

        Does a good architecture make code easier for an AI to maintain? I don't know, but I think it's at least not proven that it doesn't.

      • bluGill 14 minutes ago
        An agent can rewrite a small codebase in half a day, I have millions of lines of code - it can't rewrite that in half a day.
    • elendilm 35 minutes ago
      I have found autonomous agents to be pathetic at architectural decisions.

      Architecture has remained so far to be one of those domains where skillset dwarfs everything by comparison.

  • cyclopeanutopia 13 minutes ago
    Lots of words, not a lot of meaning. What is this post about?
    • Vaushite 5 minutes ago
      I think it's saying you need to go back and think harder about the problem instead of putting all your effort points into a solution.
  • elendilm 38 minutes ago
    This is one of those things where one can throw around the term "first principles thinking" with relative ease.

    To actually do it is different and usually comes from having to wrestle with a problem.

    Sadly people from the academia and the public at large has a hard time understanding what this even means.

    They equate it with exam based memorization or delegation to authority. Funnily they even think first principles reasoning is an improved version of doing the same.

    But this is a blessing in disguise as it gives those who wrestle with real problems a unique skillset that can be advantageous.

    • pxc 13 minutes ago
      > Sadly people from the academia [...] equate [first principles thinking] with exam based memorization or delegation to authority.

      In what departments and at what universities? The term "first principles" comes from academia. I think you'd be hard pressed to find a faculty member in any philosophy department doesn't understand what reasoning from first principles is. I'd be surprised if any working mathematician thinks of "memorization" or delegating to authority rather than axiomatization. What experiences led you to say this?

    • woliveirajr 27 minutes ago
      And it's a skill that you'll use in other contexts. Over too learn and practice it in IT/physics, and you find out that you can use it to psychology, humans around you are dealt with another depth and different outcomes become possible