How does CodeWarrior stack up against other IDEs? (I suppose I am focused on Windows as the platform, but any information is good information!)
As usual, the answer is "it depends". CW has two main markets: people developing for the Mac, and people developing for smart phones and such. The first is because CW is almost the only industrial-strength C/C++/Java IDE around for MacOs 9 and earlier, the second is because CW is a Motorola product and has all sorts of nice features for targeting small devices. Particular wins with CW are pluggable VM's and base libraries for Java (or am I getting confused with VAJ Micro edition?), and a built-in MIDP emulator. Otherwise, it's pretty ho-hum stuff. The editor is particularly poor by contemporary standards (although it has been improved in recent versions). The support for builds, version control and such are only what you'd refuse to buy an IDE without. There's the kind of clunky files-in-projects-with-targets model that's been around for decades and isn't significantly better than make. The visual diff tool is nice, though. There is a version (only for the Mac, I believe) that allows some kind of mixing of C++ and Java source, but I've not seen this.
As an example, we do Java and C++ development on Win NT, but targeted at PDAs and smart phones. We use VAJ and Visual C++ almost all the time for composing code. Integration builds are done with a javac and a gcc tuned up for the target platform. We have CW in reserve for the very rare occasions when we need to do some specific thing on a PC that only CW does there. -- KeithBraithwaite
CodeWarrior is also the only real environment for developing for the Palm. As such, we use it. Unlike Keith, we develop primarily in CodeWarrior because we optimize for the Palm. (*) It's not as good as say VisualStudio (but, really, what is?), but if you don't like it, you can always operate the IDE via OLE. I've written a small Perl script to do this just to see how difficult it is, and it's pretty easy. But that's mostly because Perl is easy to use, and Win32::OLE is easy to use. The CodeWarrior documentation extends as far as, "Load up OLE Viewer, read the generated IDL from the typelib, go nuts." I still prefer project management in CodeWarrior over the typical command-line, (make)file-based junk you get in the *N*X world. Unfortunately, I've got to do that as well. Even more unfortunately, CodeWarrior doesn't export makefiles. But that's where the Perl script comes into the picture... -- SunirShah
(*) Pop quiz: Can you tell which sides of the great pond Keith and I live in from our respective targeted HandHeld platforms?
Since I didn't identify our target platforms, you can only if you assume that we don't target Palm because we don't primarily use CW! Which, right now, would be a correct assumption, as it happens. Sunir makes a very interesting observation about the hand-held market though. Psion and the Symbian platform are very solid in the European market. So both Ericsson and Nokia use Epoc for their phone+organizer products. While Motorola won't touch it. It's doubly interesting now that PocketPc is looking like a winner. Pocket PC is firmly in Palm's market (pen-based organizer with add-on wireless blob), rather than the Psion/Ericsson/Nokia one (keyboard organizer + phone, with the two merging). Meanwhile, MIDP is emerging as a de facto standard for apps targeted at these "communicator" devices. What's the chance of Micorsoft tolerating a good MIDP-compatible environment on Pocket PC? There will be big winners and big losers, but it's far from clear who will be which, yet. -- KeithBraithwaite