Hacker News new | ask | show | jobs
by wenc 2863 days ago
> I think it's a symptom of times changing. People don't want to code in vi/nano anymore.

Not sure if that is true. Many people are still using vim for many newer languages. I think it depends on the language.

Some languages are simply more IDE-reliant than others. Statically typed languages with a large vocabulary (Java, C#, Scala) tend to benefit more from IDEs than simple, dynamic languages like Python and Ruby.

And there are newer languages like Go. Go was designed to not require an IDE while not being opposed to one.

I think the language server idea is a brilliant one and probably something we'll see more and more of, because it makes a language completely editor/IDE agnostic. It would allow folks using vim or VS code to debug or refactor as cleanly as full-blown IDEs. I suspect this will lead to a decline in the specialized IDE market (Jetbrains).

2 comments

All languages can benefit from a good IDE. It's not related to the language. However very few languages actually have good IDEs, either because they are designed in ways that are hostile to static analysis (scripting langs) or because they just don't invest in tooling (Go, Rust).

Kotlin is unusual because JetBrains invested heavily in their IDE support from the start and developed it hand in hand with their plugin, so there's nothing in the language that is hard to statically analyse in a fast way.

As a Kotlin user it makes it a very pleasant language to develop in. You should try it.

As for IDE agnostic language servers, I think you'll find they find it hard to compete with IntelliJ or similar advanced IDEs simply because the "protocol" for classical IDEs is very fast, high throughput and complex object APIs. The featureset of something like IntelliJ is enormous and they can iterate very quickly. It'll be a long time until there is strong competition to it especially with a standards based out of process server-type design.

I agree with GP. I do not want to use a language that does not at least have a plugin in IntelliJ. I remember the amount of dumb errors running the code has decreased tremendously after started using a serious IDE. Not going back as I'm dependent on it and feel scared of coding without its checks and utilities.