Shaggy, you are probably right in almost everything, but VB6->VB.NET and C++ future. Regarding VB, .NET doesn't produce native code, and regarding C++, I believe it's safe for the future. Even if MS drops it, most (if not all) C++ code can easily be moved to Linux. And that's probably what will happen if MS keeps treating costumer like they are doing lately.

Mobile is another story, specially for MS. Unless they provide something simple and efficient so developers can easily make programs for it (like VB), they will die before VB6.