← Back to context

Comment by mitchellh

3 days ago

Yeah understood, I'm not taking it negatively, I just genuinely wanted to understand where it came from.

Yeah this is from 2021 (!!!) and is directly related to LSPs. ChatGPT didn't even get launched until Nov 2022. So I think the quote doesn't really work in the context of today, it's literally from an era where I was looking at faster horses when cars were right around the corner and I had not a damn clue. Hah.

Off topic: I still dislike [most] LSPs and don't use them.

What do you not like about LSPs? When you do eg refactoring isn't it nice to do operations on something that actually reflects the structure of your code?

  • I use agents for that, and it does a shockingly good job. LSPs constantly take up resources, most are poorly written, and I have to worry about version compatibility, editor compatibility, etc. It's just a very annoying ecosystem to me.

    External agent where I can say "rename this field from X to Y" or "rewrite this into a dedicated class and update all callers" and so on works way better. Obviously, you have to be careful reviewing it since its not working at the same level of guarantee an LSP is but its worth it.

    • Hmm, most LSPs don't give you a very strong guarantee either (when you e.g. rename a variable).

      I suppose in some languages it's undecidable in the worst case, but it should work in reasonably hygienic codebases.

      Also, they tend to freeze or crash for no reason.

      1 reply →