"The KDevelop team is proud and happy to announce that KDevelop 4.0 is finally available as stable release. KDevelop comes with lots of innovative features, even though many features from the 3.5 series were dropped due to a nearly complete rewrite. In particular the developers have focused on building an excellent C++ IDE instead of trying to integrate lots of languages and features halfheartedly. Of course KDevelop 4 also builds an excellent basis for other languages, the best proof for that is the PHP plugin that is released alongside KDevelop 4.0. KDevelop 4.0 has an excellent C++ code understanding engine, which allows the IDE to understand your code better than you do, and which is then used to assist you by releasing you from tiresome tasks."

Visual Studio is the single best IDE in existance with the most integration of advanced features. C++ syntax highlighting is old news. Microsoft has had drag-and-drop GUI design for MFC (which sucks, btw) since before 2000. The problem with community-based large projects like this (5 years in development for KDevelop4??) is that people don't get paid to do the boring work with nagging bosses that makes products really polished. Community products are labors of love, not products that meet customer requirements.

That being said, QTCreator is nice, but lacking for now. XCode is getting closer, but is still not quite VS2008-quality.

Visual Studio is the single best IDE in existance with the most integration of advanced features.

Is that supposed to be a joke? When I first started coding in Visual Studio I was completely shocked at how little it did in comparison to the Java IDE's i was used to working with. Luckily I found Resharper (add another $150 to the cost) which added back in most of the missing functionality.

I'll admit that VS2008 isn't bad, it seems like every new release now adds in the features that Resharper gave the previous one, and it's much better than it used to be. But I'd hardly call it the pinacle of IDE's that all others should strive to match.

I don't care that you could do drag and drop interface design for mfc a hundred years ago. Being the first doesn't mean being the best, and the fact is that as a C++ ide visual studio for the last ten years has gathered a lot of additional annoyances, performance and stability problems without getting any useful new feature.

I've been using it professionally since visual c++ 6.0 and went through every version since then so I'm speaking from experience here. Extensive and frustrating experience.

Your remark about polish and the little things that make an application great is also quite funny.

Here's why it is such a pain in the ass nowadays, and yeah, it include many little annoying details. Perhaps open source developers aren't great to fix that kind of things, but neither is microsoft.

Visual studio is generally slow and take ages to do things like opening a solution or reloading projects after a subversion update. It dutifully asks for for evey project if you want to reload it, if for some reason you wanted to reload half of the project in your solution.
The project setting windows is still not resizable, despite it often having to contain lengthy lists of include path or libraries. Non-resizable dialogs are about as laughable in the year 2010 as amigaos' lack of usb 2.0 support.

Starting the debugger takes ages. Sometimes even launching a program takes ages.
After using it for the entire day, sometimes you try to change a project setting and it whines with a cryptic message because it exhausted some handles. Handle exhaustion, in 2010? Nice work.
So, then you have to restart it and suffer through a 5 minute solution loading... Again.

Sometimes it also just crashes.

When I right click something a project in the solution, it pops up a giant menu that contain a bunch of crap I never use, great interface design there.

The c++/cli forms editor is slow and doesn't manage to succesfully parce the source if you ever changed anything in it. Of course, since it generate things according to a craptastic model of "everything in a .h file and then the user have to insert his code in the middle", it's guaranteed to break whenever you do anything with it.

The completion is unreliable as hell, I rarely bother using it.

Some things that are vital to find your way through large projects and source files tend to become unexplainingly slow when dealing with large projects and source files. We have some files in our project where opening the search window takes 20 seconds, the kind of file where you want to open that window to locate anything. It's sometimes faster to do a project wide research.

Visual studio's project management is (and always has been) a pain in the ass because project files pointlessly contain a list of files in the project, and it's a regular source of svn merge conflicts.
Mixing together the project management and the build system is also a pretty bad design requiring you to click a million times in a million windows to set up anything mildly complicated such as a custom build step.

We've tried visual c++ 2010 also, to see if anything was improved. The only thing was that the search window stopped taking ages to open for no reason on some files.

For the rest, no noticeable improvement anywhere, but a bunch of extra exciting annoyances.
On an out of the box installation the pop up menu you get when right clicking on a project is even larger, but now if your mouse pointer is near the top or bottom of the screen the menu isn't shifted up or down to fit entirely on the screen, it gets truncated and you have to hover an arrow to scroll through it. Of course, the most frequently used item in that menu (properties) is at the very bottom.

Another hilariously ill-thought change in vs 2010 is in the still not resizable project properties window.
You know those usually long and important lists like the include paths that are impractically stuffed into a single line property field?
It used that clicking them showed a small button to open a window to edit the list. Now it's an arrow drop down button with two option: inherit from parent, and edit.
So not only you have one extra click to edit those, but if you accidentally select the first option, it clears the entire list.

I don't understand how people can say that this is a good ide for C++ unless they never used anything else. Feature-wise it's been stagnating for years, while the performance decreased and the usability got worse with each major release.

I actually believe that this ide is one of the major reason why people say that c++ sucks.

Microsoft has had drag-and-drop GUI design for MFC (which sucks, btw) since before 2000.

And NeXT (now Apple) has it since the 1980s.

The problem with community-based large projects like this (5 years in development for KDevelop4??) is that people don't get paid to do the boring work with nagging bosses that makes products really polished. Community products are labors of love, not products that meet customer requirements.

KDevelop's problem isn't that it's a community project. The whole KDE is a community and not a corporation.

It's the amount of contributors. KDevelop has AFAIK only roughly five.
I don't know about today, but at least a few years ago most KDE developers didn't even want an IDE. They preferred VIM inside the Terminal (a poll among KDE devs came to this conclusion).

I have even been playing with Vim and the Ruby plugins lately, though more for novelty and nostalgia for the days when I was using both XEDIT on VM/CMS as well at on UNIX at the school mainframe terminals...

As a ruby dev, though, I check a lot of other IDEs out from time to time and keep coming back to Kate. And of course with Kate's integration into KDevelop and the Qt bindings, KDevelop is more like a juicy fast Kate with Ruby GUI drag and drop tools, which is kind of nice...or "Kate with benefits" to mix metaphors...

Personally, I am surprised more Ruby guys don't use it...and when Quanta is in it full swing I can see them using it too...