I know this question has been debated many many times before, but what do you feel about the future of C++? With the emergence of managed code in the form of Java and .NET, where productivity is noticably higher, do you think C++ is falling behind for desktop application development? This is it's forte, but is it still relevant? I doubt anyone uses it anymore for web applications. Atleast on Windows, Microsoft seems to be giving less attention to MFC and is encouranging all developers to move to .NET. You already have Java in the Unix world.
What makes this debate interesting is our varying background. Mohnish and I do have a managed code bias so it is very important to know what Dinesh and Hrishi feel.
Personally I feel managed code will be adopted even more in the future and at a later stage C++ will loose its hold on desktop applications. This will happen sooner in Windows especially after Longhorn. On linux this should take much more time, simply because of mistrust of Java, Sun.
Another question is much on dev on Win will be done using Java? Java 5.0 (formerly Java 1.5) is now in beta and has many new features and enhancements as shown here. Speed is claimed to have been increased drastically. More importantly "Many areas of the rich desktop client have been enhanced including an updated, more modern, cross-platform look and feel." So the ugly and slow java apps might be a bit less uglier and more faster. I cannot claim that Java will hurt .NET on Windows, but as Mohn pointed out, Java is being taught in lots of universities. Those guys might become comfortable with Java. So as we all are resilient to change, some dev on Windows might be done in Java. Also a lot of API's are being added to Java which will make it an alternative to .NET. Otherwise I suppose most C++ devs like Dinesh will jump on to .NET unless they really need platform independence which for desktop apps doesn't seem to be the biggest driver.
Ps: have yu guys seen maestro? The Nasa space rover simulation app.