Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think the point is that with *nix you aren’t just stuck with what some product manager at JetBrains thought was a cool feature.

And when you want to brew something up from scratch, or do the same task for the nth time, you don’t have learn how on earth this IDE implemented it, or learn a whole new API.

Take for instance an IDE’s find usages function, often a simple grey -r from a judiciously chosen directory gets you the same thing, but faster and more flexible (if your mind is wired that way, I suppose).

Edited to complete fragment...



Any sane IDE 'find usage' is miles above your simple grep: just try that on any sypbol with a name common enough, and compare the results...


This winds up not being a big deal if you use grep a lot because you'll tend toward greppable names.

More importantly though, in a codebase big/complicated enough to need "find references" functionality beyond what you get from grep, do you not also have comments, reflection, and all manner of other garbage that you need to search for via some mechanism anyway?

For a few languages (more on the way) you also have semgrep as a way to add something a bit more powerful than "find references" into a normal shell workflow.


I have used `grep -r` a ton on our codebase and purpose-specific tools like “find usages” are always more to the point while `grep -r` can easily be misleading.

Also you can’t just tend toward greppable names (whatever that means) if you share a codebase with developers who are on Windows and wouldn’t be able to tell grep from sudo.


> I think the point is that with [Unix] you aren’t just stuck with what some product manager at JetBrains thought was a cool feature.

But you see that’s exactly what you are, because you can’t refactor Java code with what you call “Unix tools”. So your only option is to install actual IDEs on Unix.

And “find usages” finds... actual usages (e.g. method calls), not simple text matches which can end up being 80% noise. For `grep -r` you might try `Ctrl+Shift+f` instead.


> But you see that’s exactly what you are, because you can’t refactor Java code with what you call “Unix tools”.

"refactoring java code" is really not an exceptional task that vim (or emacs) cannot handle.

In situations where grep -r is too stupid, ctags exists.


As well as ctags, one can also use the GNU "idutils" suite of programs.


Fortunately there's a terminal window baked right in there if you find yourself needing other tools.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: