This thread is certainly eye opening. It reminds me of a post I saw somewhere, maybe on Reddit, where someone was describing their experience working as an intern at an old-school tech shop. All of the developers there were hardcore Vim/Emacs users with 20+ years of experience. The intern was tasked with a large-scale refactoring of some modules which the senior devs estimated would take months of work to complete. A…
Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
421–430 of 652 posts
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#422Moving beyond that, it isn't like LSP originated the "go-to-definition" feature. Indeed, this is one of the things many of us like about Emacs. You can literally jump to the definition of most any function currently in use by the environment. Can even edit it and have that edit immediately open.
But, moving back to my original line. The answer is people work in different ways. Is why some folks get really good at typing on a keyboard. Most people probably are not fast typists. But that doesn't necessarily mean the advantage a fast typists has will be realized in any actual gains.
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#423You 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…
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…
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#424Earlier quoted context omitted.
Of course that are good things and maybe I wrote in a too much harsh way. Linting features and autocompletes are nice, also autocomplete features are nice to have. The issue that I pointed mostly resonates with the idea that depending on LSP is the big issue. I personally use Neovim with minimal stuff, I run lint and tests manually and not automatically, because it feels to me like push notifications taking my attent…
This reads a lot like the old assembly language programmers (I was one) who stuck their nose up at C programmers for not knowing how computers worked because it was too high level. The entire purpose of computers is to automate things and reduce complexity
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#425The 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…
This is my mindset as well. I often need to work with text that isn't code. Maybe it's a SQL dump someone sent me, some bespoke configuration format, a collection of log files, etc. Knowing how to manipulate and navigate text is extremely helpful as a general skill. IDEs degrade to notepad.exe quality when presented with unknown formats. Personally, my recent work has been: short term freelance work, new code bases,…
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#426Earlier quoted context omitted.
This reads a lot like the old assembly language programmers (I was one) who stuck their nose up at C programmers for not knowing how computers worked because it was too high level. The entire purpose of computers is to automate things and reduce complexity
There is the very real possibility that automation masks complexity, not reduce it. And that’s what he’s saying.
https://boto3.amazonaws.com/v1/documentation/api/latest/inde...
It’s the same in every supported language since it is autogenerated from service definition files. I chose the Python version because it is all on one page. Would you rather memorize thousands of functions across hundreds of classes? Should AWS “reduce complexity” by getting rid of services and functionality?
Would you rather have an auto complete IDE or have to look up the web reference?
I’m sure it’s more complex to run S3 at scale than to build out the data center I did as part of my job to store 4TB worth of data in the early 2000s.
I would much rather run a 4 line CloudFormation template and do it in less than a second over it taking months to do it in house.
I started my programming in assembly in the 80s, should we go back to that too or should we keep using compilers and interpreters?
Should we keep programming in C or should we use manages runtimes with garbage collection?
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#427This question reminds me of the first time I met a blind programmer. I asked him how he managed to code, and he replied with something that stayed with me: a good programmer should organize software in such a way that every piece of code has a clear and logical place. The organization should be so intuitive that anyone could build a mental model of the structure and navigate it easily, even without seeing it. It felt…
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#428Earlier 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've worked on forks for certain Android devices with very primitive text suggestions that notepadqq provides and the difference in productivity between that and vscode+clangd is staggering. What do you mean there's a macro for anything?
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#429I 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…
Re: Ask HN: Programmers who don't use autocomplete/LSP, how do you do it?
#430I recently had to switch to a project in Ruby and the LSP was not working it was frustrating but I can’t say that when it started working the next day that it helped me that much more. Maybe like 10% improvement?
Command F, command shift F in most IDEs to look up the definition if LSP isn’t working just search for name and append the class, method, function definition syntax. Like “function getUser” or whatever.