Mac and Java.
I bought Mac Book black. And I am used to this box. I like that I can use Unix-like environments.
But I think somebody who insist MacOS is more powerful than Windows are wrong. The fact that Windows can run on Mac Hardwares does not represent that Mac is powerful. But, it proves that Windows is powerful. The flexibility of Windows is amazing. Otherwise, MacOS cannot be installed on any other IBM compatible PC expect Mac Hardwares.
I, sometimes, experienced that when I plug-in my external HDD MacOS cannot detect it. Although I don't know the reason exactly, I think it is the problem of MacOS or Mac Kernel. Becuase when I'm using Windows on my MacBook, Windows has never failed to detect it.
I like MacBook and MacOS because I can use Windows, MacOS, and Unix-like Environment - I can use even PORTS like FreeBSD. But what I feel uncomfortable is that Mac has duplicated system data; One for MacOS Environment, and another for Unix-like Environment; One for Windows on BootCamp, and another for Windows on Parellels Desktop.
Since I was a game programmer, I like C++ very much. Whenever I made a program with C++, I was always exciting. But in my graduate school, people love Java more. I regard them, but I think they too much worship Java, blaming C, not C++. It is unfair to compare Java with C. Because C is not OOP language. They have to compare Java with C++, not C.
Yesterday, I knew Java has template meta-programming-like syntax after version 1.5 as well as C++ has. I'm interesting in it. I'll more dig out.