Live data from Hacker News

Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

news.ycombinator.com

321–330 of 652 posts

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#321

I work with two types of LSP/LLM-averse programmers: 1. The HLSP user This group does use an LSP, it turns out, only via you as the conduit: you are their Human Language Server Protocol. They'll ask, ‘can we pair today?’. From that point, navigating code, looking up method names and signatures, and flagging syntax errors before runtime or compile time is your job. How they find their way around when you're not there…

I might be in group 2, rely heavily on command line tools and vim to do what vscode and a load of plugins provides younger programmers.

My answer to the fairly common question of "how do you do it" is always the same though.

I always relay that it's taken an evolving 20 year career to learn all that voodoo, I never imply it's simple to gain that knowledge nor do I encourage others to change their working patterns to match mine. I do like showing off a few tricks though!

One thing I do always mention though is the longevity of vim + the command line. I went through a period of swapping IDEs like most junior devs, now I have a setup that I feel can last me till retirement and I can just continually invest in learning to use the same tools better

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#322

I work with two types of LSP/LLM-averse programmers: 1. The HLSP user This group does use an LSP, it turns out, only via you as the conduit: you are their Human Language Server Protocol. They'll ask, ‘can we pair today?’. From that point, navigating code, looking up method names and signatures, and flagging syntax errors before runtime or compile time is your job. How they find their way around when you're not there…

LSP enables you to program as you go along, without ever understanding the structure of the whole program. If you don't want to use an LSP you pretty much must understand the whole program you are adding code to

As wikipedia likes to say, quotation needed.

If anything, code-aware tools let you learn the structure of the whole program quicker because you can quickly drill into and explore any arbitrary part of your program (and libraries)

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#323
post #132

The shell is my development environment. I open up new terminals and shells willy nilly. I find cli tools like find/fd/grep/rg are useful because I rarely need to find only the definition of a function, but rather other call sites too, to find out how it is being used. I think being surrounded by the code and being able to slice and dice it leads to a certain kind of familiarity that a tool that takes you right there…

I have an alias for `vim -p $(git grep -li "$1") +"/$1"` that allows me to quickly open files that contain a given string.

I used something similar for a long time, but the past few years I've been using Path Picker.

  rg string | fpp
  git status | fpp
  git diff head~1 | fpp
And with Zsh suffixes you can even drop the pipe.

https://github.com/facebook/PathPicker

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#324

Earlier quoted context omitted.

I agree on turning it off to find out. I disagree with almost all of your takes though. If you work without it, I would similarly suggest turning it in for a month. > You’ll learn where all the reference docs live for your language, libraries, and frameworks, and along the way you’ll learn more by actually reading the docs. I know where they are. I use them every day. But reaching for them to check every argument if…

>If you work without it, I would similarly suggest turning it in for a month. In the past when I've tried to use IDEs, I've often given up within minutes because they would keep doing things that disrupt my flow - like popping up an entire menu of autocomplete suggestions in a way that obscures other code I'm trying to read, or autotyping a close bracket that I would have typed anyway by muscle memory, or not making…

> In the past when I've tried to use IDEs, I've often given up within minutes because they would keep doing things that disrupt my flow

All the things that can be turned off/tuned. Strange that you don't spend the time learning the tool you admonish others for using

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#325
post #54

Earlier quoted context omitted.

Which is why I mentioned that I am coding in Rust. They are the same docs.

I think the point they are making is that you only read what is shown you instead of seeing the full docs and being encouraged to follow rabbit holes and browse nearby info. Speaking for myself, this has been one of the largest boosters in my own career: visits to a docs page that led to me basically reading the whole docs.

> you only read what is shown you instead of seeing the full docs and being encouraged to follow rabbit holes and browse nearby info.

I can use a convenient shortcut to go as deep as I want in the codebase, including libraries. Meanwhile crowd with clinical case of tool aversion will spend time fuzzy-searching and manually sifting through text.

Who's encouraged to explore more?

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#326

Earlier quoted context omitted.

some colleague some time ago argued that one can write code without much/any spaces, because, "you can see, it's colored differently".. sounding like, "i am breathing". All these IDE+- things may be nice-to-have but most soon become crutches, and then you cannot live without them, and only walk their walk, not yours. Just turning off syntax coloring freaks recent developers.. even quite good ones.. i observed it. The…

> " All these IDE+- things may be nice-to-have but most soon become crutches, and then you cannot live without them, and only walk their walk, not yours. " ... and? Cars have automatic chokes, power assisted steering, hydraulic brakes, airbags, seatbelts, auto-dimming mirrors, self-running wipers, and it's fine. People argue that driving a stick-shift is more authentic but even they use syncromesh and clutches, they…

You're erecting a pretty detailed strawman here. It's not that "raw dogging" code makes you a better developer; it's that specifically jump-to-definition and autocomplete make it too easy to create code bases that may as well be huge bags of functions and classes, and that skipping the mental work of organizing the code limits the fidelity of the mental model you can build.

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#328

You should try turning off those features yourself for at least a month and see what happens ;) You’ll learn the answers yourself, much better than us trying to explain them. You’ll learn where all the reference docs live for your language, libraries, and frameworks, and along the way you’ll learn more by actually reading the docs. You’ll learn the value of good project organization and file naming, and explicit impo…

Turning off especially the autocomplete would be a good exercise for many. I've worked with developers who relied on the autocomplete in Visual Studio to the point where they'd wear down the tab key. They'd rarely consult the documentation and do endless type conversions or attempt to construct the objects required for the API that sort of sounded like what they needed.

I think meeting developers like this will make you dislike autocomplete. If you know what you're doing though, it is amazingly helpful and can save you many wasted hours on silly syntax errors.

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#329
post #249

Earlier quoted context omitted.

This works for small projects. I've worked on projects where "hold the entire project in your head" might be somewhere between very hard and impossible. Work the right abstractions, it should be possible to hold the relevant parts in your brain. Still, when you're new to a large project, an ide goes a long way.

Would you consider the Linux kernel a small project? That's an example of one where a large number of people working on it do not use IDEs.

I wouldn't. Good point!

Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?

#330

You should try turning off those features yourself for at least a month and see what happens ;) You’ll learn the answers yourself, much better than us trying to explain them. You’ll learn where all the reference docs live for your language, libraries, and frameworks, and along the way you’ll learn more by actually reading the docs. You’ll learn the value of good project organization and file naming, and explicit impo…

This a fun idea, but honestly… who has the time for that? I’ve got features and bug fixes that need to be delivered quickly. Taking the slow road (especially if intentional) puts a target on my back for dismissal.

If keeping my job requires relying on the latest tech and tooling, that that’s what I’m going to do.

Post reply on HN