This question was asked a while ago on stackoverflow.com, the programming website built on the same engine that powers askubuntu.com.
The accepted answer to the question
What [C++] IDE do you propose (given your
experiences), and why?
Actually, I recently made the switch
from Visual Studio (years of
experience there) to Linux and the
first thing I did was try to find a
And then I noticed that this simply
isn't how you work there*, and I threw
everything out, spent a few days
reading manuals, set up my shell
(bash), set up a GVIM environment,
learned the GCC/binutils toolchain,
make and gdb and lived happily ever
There are certainly disadvantages but
I am sure that I work much more
productive since making the switch.
*) It really isn't! And that's not an anachronism either because the
toolchain described above is
incredibly mature and powerful. Any
IDE has to replicate hundreds of
unique features to get anywhere near
the power of these tools that have
been honed to the point of perfection
for decades. The learning curve might
be quite steep, but much less so than
As a new C++ developer who has tried out various IDEs on both Linux and Windows, I wholeheartedly agree with this answer. As well as the points made in the answer given above, I'll add a few of my own here.
While IDEs are designed to make programming easier, that isn't necessarily a good thing. This may sound rather outlandish and somewhat pretentious, but programming is an art, an act of creation, and like any other art form, you can't create a masterpiece unless you fully understand the medium, and IDEs hide too much of the underbelly of programming from the programmer. If you want to understand programming, then you're best to 'get back to basics', so to speak. One guiding principle that many industrial programmers use with regard to tools is start with the basic tools and only move on to more complex ones when you feel you've outgrown those one.
Personally, I use Gedit whose functionality I extend with some of the plugins.