Live data from Hacker News

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

news.ycombinator.com

411–420 of 652 posts

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

#411
post #243

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…

> pollute untyped-languages' codebases with so-called-"typing" noise Yeah, this is going to be extremely controversial: your so-called untyped language actually has types in, and they're important, but only the program can see them at runtime because you've not written them down anywhere. The real solution to "repeating myself writing down types" is Hindley-Milner inference, which dates back to 1958, and more languag…

Yeah this is probably someone that doesn't like type script or type hints in python. If you're slinging dynamically typed code for your own personal project, go nuts, but if you're working with a team that 'typing noise' really helps

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

#412
post #380

Earlier 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…

> I reviewed many code written by junior people, and very often I see people adding code in random places that later may let the application to be hard to follow and everything "seems fine" to them. But is that because they're following their IDE, or is it because they're junior developers? I also see that sort of issue regularly, and as someone who is very happy with their LSP creature comforts, it's still something…

I think the idea is that very powerful IDEs and other tools make it very easy to manage complex and disorganized codebases, the downside could be that nobody would care about cleaning up that codebase. At the same time powerful IDEs make it somewhat easier to clean up messy codebases so living in a mess is a choice.

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

#413

Earlier quoted context omitted.

I'm not confusing anything. It's relatively common to call the use of dynamically typed languages without static type hints "untyped". I'm pretty sure you knew what I meant and are just trying the classic "you used this word in a way I don't agree with therefore you're wrong".

Untyped has an actual meaning, for example, most assembly languages are untyped, same goes for Forth and probably others. Then there's dynamic and weakly typed, ie. JavaScript. Dynamic and strongly typed, Ruby. Static and weakly typed, C. Static and strongly typed, Rust.

It was very clear from the context that I was not talking about Forth or Assembly.

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

#414
post #378
post #184

Earlier quoted context omitted.

> Not only do I avoid using LSP features, but I’m also opposed to their use. While they can help with navigation, they may prevent developers from experiencing and addressing the underlying structural issues in their code. LSP by itself will not prevent anything. LSP (using the terminology from OP, but any IDE really) is just a tool like any other which allows you to do things faster. It doesn't matter how organized…

When I'm coding, most of my time is spent thinking about the right structure, organization, or solution. Or, debugging something that isn't acting as expected (which, again, is mostly thinking). I spend comparably little time actually writing the code. If there is an IDE available that works well out of the box, I'll certainly use whatever automation is available. But often it is broken, incomplete, slow, inaccurate,…

>> If there is an IDE available that works well out of the box, I'll certainly use whatever automation is available. But often it is broken, incomplete, slow, inaccurate, etc. ...

I think you are unduly harsh here. As a longtime emacs user and who switched to IDE recently (ones that come from JetBrains) my experience hasn't been what you mention. Yes there is a bit of time (not huge) to get adjusted to the shortcuts and efficiently navigate the code, but post that the IDE ecosystem is not as broken as you allude to.

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

#415
Autocomplete:

It's nice, but using non-shitty libraries with good documentation is nicer.

Language servers:

Bloat.

Copilot:

Why bother with AI when I'm good at writing buggy code myself?

Remembering types and fields:

Don't trust memory. Write documentation—if only for yourself if not for your colleagues.

The language server go-to-definition feature:

That doesn't require a language server, just a cross-reference; see also ctags, bloat (above).

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

#416
This comes up from time to time and I always struggle to succinctly make the point I'm about to try and make again here:

Your brain is a good natural limit on complexity. I'm not saying there aren't goals that merit tools to manage complexity beyond what your brain could, only that you should be extremely reticent to unshackle that monster, because it's more likely to eat you than do your bidding.

Or more practically (and maybe more of a polemic): if you're maxing out the capabilities of your IDE on an average project, you goofed! We built postgresql, sqlite, Redis, Linux, Go, etc without IDEs.

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

#418

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…

> If you want to make the case that the artisan shouldn't use tape-measures, laser levels, power sanders, power saws, dust masks, wood glue, clamps, they should use a pencil behind the ear, a thumb's width and a handsaw because that's how they learn the True Nature of Wood(tm) then maybe you're just posturing and gatekeeping, or have some sort of Amish-style religion.

Or you're William Morris, who was kind of ridiculous and pretentious, but was making a valid point at the same time.

https://en.wikipedia.org/wiki/Arts_and_Crafts_movement

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

#419
for me "artisan" devs see coding as a craft, avoiding modern tools to "stay sharp" or stay closer to the metal. its cool admirable but really not adapted for complex modern systems. Tools exist for a reason—maximizing productivity and reducing cognitive load.

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

#420

Earlier quoted context omitted.

untyped languages (Python, Ruby) Both of those languages are strongly typed. It seems you're confusing the fact that the type checking happens at runtime (that is to say, that they are dynamically typed) to mean that they're "untyped", but that's just not the case. If one is confused about the languages one is using at this level, then modern tooling features aren't likely to help much.

I'm not confusing anything. It's relatively common to call the use of dynamically typed languages without static type hints "untyped". I'm pretty sure you knew what I meant and are just trying the classic "you used this word in a way I don't agree with therefore you're wrong".

It's relatively common to call the use of dynamically typed languages without static type hints "untyped".

And it's relatively common for people to be simply wrong, or to be careless in their word choice in regard to lots of other matters.

I'm pretty sure you knew what I meant and are just trying the classic "you used this word in a way I don't agree with therefore you're wrong".

It wasn't, i.e. I wasn't considering the possibility that that was what you meant. This is the first time I've encountered this broken usage of the term.

Post reply on HN