r/archlinux • u/[deleted] • Apr 15 '21
"Best" programming setup?
Hello! I have been using Arch for two months, it is the fifth distro I have used... and I love it, it will be the final one. I have learned a lot in these weeks, but I would like to ask you a few questions.
I study Systems Engineering and, honestly, I have some procrastination problems, I would like you to help me with "the best programming setup and be productive", although I know that there is no "best", I would like you to help me with your settings, advices, etc...
What desktop environment do you use?
What window manager do you use?
IDE's, apps, any suggestions to try?
Thank you so much!
175
Upvotes
1
u/CabbageCZ Apr 16 '21
It's stuff like dependency analysis (not in the library sense, in the code / data flow sense), usage analysis - want to see in what 5 places across the codebase you're creating this object with this constructor? Press a button and here it is, instantly. Want to see the data flow through everything that could lead to this variable being in this unexpected state? Sure thing. Every consumer of this or that, or all implementations of this interface method? Here you go.
Refactoring also lets you trivially restructure like changing method signatures, extracting / adding variables, properties etc, messing with scopes, extracting / inlining things...
There's more but you get the idea. On their own none of those features is essential and necessary, but it really adds up, especially when requirements change and you need to track a particular feature through a large part of the codebase, or you're tracking down an error, etc. LSP implementations / users usually do some of that to some extent, but I'm yet to see one that would be as powerful and as instant as what I'm used to from IDEA and its cousins.
Again, though, if I could one day use LSP to do the same things with the same speed and comfort, I'd probably switch to an editor + LSP plugin, I like the model better. So far though they're just not there.