I now understand why so many developers on MS Windows cling to Java so tightly, it's their saviour from the hellish experience that is Microsoft Visual C++.
Developing cross-platform applications on a Mac or a Linux machine is not that difficult. Getting those same applications to build on a MS Windows platform is not that difficult. The problem is, what if someone needs to do development work of cross-platform software in the MSVC++ environment? It is possible, but the amount of work required is immense. The quasi-solution of switching to a different compiler/IDE is an option now, but what about 5+ years ago?
Java to the rescue! Well, sorta, application development in Java has many of its own gotchas and "write once, run anywhere" is malarky; but, for developers using MS Windows, Java development frees them from MSVC++ and (this is just a bonus) lets them build applications that are multi-platform. To sweeten the deal, Java has development tools and build processes that are standard on all major platforms. With more marketing than necessary, Sun was able to transform the animosity towards MSVC++ and MFC into migration to Java and AWT/Swing.
As
Qt and
GCC on Windows gain visibility, I wonder if we'll see some Java application developers downgrading (or is that upgrading?).