Big smiley planted in the title of this one BTW.
I've been working on the CDT for coming up on 8 years now. It's been quite a long journey, and what keeps me motivated is that I don't see the end in sight yet. For CDT to be successful, the companies and individuals using CDT need to be successful. And until I see everyone happy with it, our job isn't done.
Now there are a lot of successes already today. CDT is still a key part of the IDE strategy for a huge handful of platform vendors, especially in the embedded and mobile space. And we have nearly 600,000 downloads of CDT, so I assume the downloaders are being successful (or they're having disk problems and need to download it all the time, maybe). But if things were so rosy, I wouldn't be hearing all the complaints about CDT and Eclipse in general that I do.
The biggest complaint I get from the user community is how hard it is to set up CDT for their platform, especially developers using Windows. That's where Wascana comes in. There's also a variety of environments that don't come with out of the box support, like Qt and Mac Cocoa.
Commercially, a lot of what I hear is about customers who would still rather use command line tools than our commercial IDEs. That tells me two things. One, that these people just don't like change or learning new things. But more importantly, it tells me we don't provide sufficient cost/benefit for them to make the jump. And really, the benefit has to be much greater than the cost and that means not simply doing the same things you can with the command line, but taking it to a next level that an Integrated Development Environment gives you. I joke with the product managers here at Wind that we need to put the capital back in the 'I' in integrated. I'm not joking...
So to help bring the nay-sayers on board, my strategy with the CDT is to make it ubiquitous. I'd like to see as many developers as possible in the world able to used it, and like to use it. That way, when we come to them with a commercial offering, CDT in the product becomes a value point.
Ensuring the CDT works out of the box is a big part of that strategy, especially for platforms that don't have commercial support. Linux is covered very well by the Linux Tools project at Eclipse, Wascana for Windows, and I am trying to find time to get it working well for Mac (Objective-C support included). Qt is a natural for cross platform development, so is CMake and Autotools build environments. And I'm helping with CDT support for Android native development. These are things CDT should support out of the box to enable my plan for world domination :). And that's what motivates me to keep plugging away.
Good Luck Doug! I would really love to make the switch from Visual C++. I loved using Eclipse for Java in a previous life. The current things that are holding me back are
ReplyDelete- My own lack of knowledge on how to set up CDT and GCC settings (I tried using precompiled headers before and failed)
- Inertia to move a large project from VC++ to CDT and perhaps a little fear that performance will be worse using GCC (this could be just ignorance on my part). Performance is critical as I'm writing a game.
- No Visual Assist (It's a fantastic refactoring tool), I just can't live without it :)
Good luck!
All the best,
Ash
Thanks! That's actually something else I'd like to get done, support for the Windows SDK which includes the Visual C++ compiler. There is a solution in the works but no ETA.
ReplyDeleteCDT has a lot of things that Visual Assist have, like refactoring, just not as complete and polished.
I guess having the VC compiler would allay my possibly unfounded fears about speed.
ReplyDeleteThe first thing I look for when looking at CDT release updates is the refactoring section. The big ones for me are rename, create from usage, create implementation and create declaration.
CDT is a great project, I wish I could contribute, but my wife would kill me if I started yet another project! :).
I do think that there will be a tipping point when CDT becomes just polished enough, there will be a load of developers that will switch all at once. Kind of what happened for Java, it became a no-brainer to use Eclipse.
There are so many people writing native code these days too, which can only be good for CDT.
Keep up the good work!