5 ms·
What do you do with the terminal that you can't do with your IDE? I think you underestimate the number of developers who basically use IDE plugins to do everyt
by smackfu 12y ago
What do you do with the terminal that you can't do with your IDE?
I think you underestimate the number of developers who basically use IDE plugins to do everything.
- zaphar 12y agoProgramming an IDE plugin is far more difficult than a sed or awk script with a much higher development start up cost. You can do a whole lot with an IDE but saying it has the same amount of power as a good unix shell is somewhat disingenuous. If you want to be able to extend your coding environment in an infinite number of arbitrary ways then a shell beats an IDE every time.
- cpwright 12y agoRenaming a java variable or permuting arguments in IntelliJ is far easier than trying to do the same thing with grep/sed. IntelliJ happens to work with both Windows and Linux, but I've found that I'm certainly more effective programming Java in an IDE than without.
- zaphar 12y agoIf all you have to do is Java then absolutely. I hop into IDE's all the time for refactoring work VS or Monodevelop for C# IntelliJ for java and so on. But I work with much more than just java and C#. Shell utilities that work with plain text can deal with a whole lot more than java. Claiming that an IDE occupies the same place as a shell in a developers toolbox misses a lot of the reason why shells are useful.
- cpwright 12y agoI'm not saying a shell isn't useful. I don't use an IDE for any of my git workflow (I actually find git to be poor on Windows, which is a good reason to choose Linux); but for navigating the code. Shell utilities that deal with plain text often get the nuance wrong, because they don't have the full syntax tree to deal with. Mostly you're using regular expressions; which often get you close but not quite right. For navigation, people often would use cscope/ctags something else anyway; and text searching often isn't as good as a semantically aware find. I don't use an IDE beyond vim for my C++ work; but am considering clion. So far I'm not entirely convinced, it doesn't handle some of the more complex C++ constructs correctly.
- zaphar 12y ago90% of the stuff I need to do are minor changes that don't need the nuance that requires a full Syntax tree. The other 10% I fire up an IDE for and make the change. For vim and C++ I recommend YouCompleteMe[0]. It gets a lot of it right. [0] https://github.com/Valloric/YouCompleteMe https://github.com/Valloric/YouCompleteMe
- GrinningFool 12y ago>> If you want to be able to extend your coding environment in an infinite number of arbitrary ways then a shell beats an IDE every time. Blanket statements like that generally serve to underscore either a lack of experience, or lack of willingness to accept other viewpoints. Simply prefixing it with "in my opinion" lessens that effect to great degree.
- dagw 12y agoWhy make it an either or proposition? I can run a shell from within my IDE if I need to.
- farresito 12y agoThere are a lot of things that you can do in a terminal that you can't in an IDE. Terminal gives you way more flexibility. Try using a GUI for git and then the terminal version. Can't be compared. The downside is it might not be as intuitive and might be slower than the GUI version for the most important things. I still disagree with the original poster, who judges someone by the OS they use instead of the code they write.
- jameshart 12y ago"Can't be compared" True. The terminal version can't give me a graphical view that displays the commit timeline for a file, color coded by contributor and weighted by commit size, with simple mouse-hover annotation to show me the commit message, and a single click to take me to the related diff, colored to visualize code age and authorship, with hyperlinks to related code files. (* features may not exist in any actual git client, I'm actually describing an SVN browser I once helped write that was never made available publicly) Anyway, the terminal version of git runs just fine on Windows, so... why not have both?
- farresito 12y ago> Anyway, the terminal version of git runs just fine on Windows, so... why not have both? That's exactly my point: that each of them offers different features and both are complementary :)