Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

As I learned some basic programming languages I came across tens of IDEs, and tens of compilers. Most people you ask will tell you "Go with that IDE or go with the best" etc, however they do not provide a proper statement as to why this is important. I understand a good IDE will provide you with functionalities to save time and money, such as debugging or quick-word-fill, but I doubt that's the whole reason a programmer picks a good IDE.

At school we work on old compilers (Money probably isn't the reason) because the theory "As long as you learn it's good" works.

The bottom-line question is: How important is it to pick the best IDE for your programming language? YOu have Eclipse for Java, C++, Python and more, but can't you simply use a different one? What difference does a good IDE to your programming skills or your programming time?

share|improve this question
12  
There's no objectively best choice for IDE per language. Whether an IDE is 'best' is purely a personal opinion. –  GrandmasterB Mar 7 '12 at 19:03
2  
Please be more specific about which IDEs you are comparing. As far as I am concerned, with .Net there is only one IDE; Visual Studio. –  Jon Raynor Mar 7 '12 at 19:04
    
The ide doesn't really matter. Most of the time it's just making it slower to write code. Notepad and commandline compilers is what half the world is using. –  tp1 Mar 7 '12 at 19:05
1  
Give each IDE a fair shake and use whatever you like best. –  Bernard Mar 7 '12 at 19:07
2  
@tp1 I can assure you a decent IDE (so one that is not merely a notepad + compiler as some open source ones I've tried) will make you write (and debug! how can you forget that?) code faster. The only thing that's slower is the learning curve but that pays off quickly –  stijn Mar 7 '12 at 19:14
show 6 more comments

5 Answers

up vote 9 down vote accepted

What difference does a good IDE to your programming skills or your programming time?

Potentially a lot. If you get to know the features and capabilities very well, you can greatly improve your productivity. But if you ignore the advanced features and treat it like a pretty text editor, then it will be a little better than using Notepad and a CLI compiler.

Of course, you should be able to learn to use ANY IDE efficiently. For me that mostly that involves becoming familiar with the most commonly used commands and learning their key-shortcuts (or making my own bindings if they don't exist). If the IDE has tools for refactoring and generating code, that can also improve your productivity if you can get the IDE to do repetitive tasks quicker than you could ever do on your own.

Not all IDEs are made equal though, and so you might find that no matter how good you get with one, it might never be as productive as another (for the same kind of work) because there are some features it simply doesn't have.

share|improve this answer
add comment

It's fairly subjective to say how 'important' the decision is, but consider this:

You will be investing a huge amount of time inside the IDE/editor. Small slowdowns caused by IDE problems quickly become large slowdowns over time. Additionally, you should not feel like the IDE is ever working against you as that takes the fun out of programming.

If you ever have the choice, pick the best IDE/editor/compiler you can.


At school we work on old compilers (Money probably isn't the reason) because the theory "As long as you learn it's good" works.

New compilers contain bug fixes and possibly new language features. You're learning more outdated information than those who use new compilers.


Finally, if you pick an editor like Emacs/Vim then you can use it for any language that arises and with blindingly fast speed.

share|improve this answer
add comment

How important is it to pick the best IDE for your programming language?

In my personal opinion, it is very important. With a good code parser, it can greatly speed up programming. With auto-completion feature on, it means less typing and automatically it shows all possible methods (potentially learning something new).

With correctly setting the code formating, it makes simple to correctly indent the code, without worrying much about part of the coding standards.

share|improve this answer
add comment

The question even goes beyond the IDE, sometimes the tools that plug-in to the IDE make all the difference. Using a tool like ReSharper with Visual Studio can not only speed up your programmer, it can help you refactor and even learn the language. For example, it notices code that can be turned into LINQ and then will do it for you. It can also enforce coding standards.

One of the things that makes Eclipse so useful is that it is so extensible, it supports multiple languages, and plug in for source code control, static checking tools and even bug tracking tools. The Mylyn plugin is an example of a very cool tool that can help you work more productively by yourself or with a team. Plus Eclipse runs on multiple platforms. The Eclipse CDT package is free so there's no excuse to use outdated compilers due to budgetary constraints.

Sometimes your IDE is picked for you based on what your target is, this is especially true in the embedded world.

share|improve this answer
add comment

From my experience, the best time/money saver is not the relevance of IDE to language but the relevance of IDE and language to YOU.

A C/vim master using vim to develop C is far more productive than a Java/Eclipse master using Emacs to develop Cobol.

That said, if you work in a team, it is worth considering using the same tools among the whole team. This makes cooperation easier when two people work on the same computer with an environment that both know well.

Moreover, some platforms ship with a dedicated IDE: Xcode on Mac for Objective-C/Cocoa development.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.