A Visit with the Visual C++ Team
I spent a fun two days up at Microsoft last week at the Visual Studio .NET C++ Authors Summit, wherein the Microsoft team shows us how cool VS.NET is for C++ and browbeat us to write a book on the topic. Since I’m already planning to write ATL Internals, 2/e with Kirk Fertitta, I couldn’t talk them out of the XBox I so richly deserve. On top of that, they tortured me by taking me to the Microsoft store where they have XBox games for only $10! Those bastards…
If you’re a C++ programmer, VS.NET/VC7 brings a lot to the table. And according to Nick Hodapp, a PM on the VC team at Microsoft, many, many of you are C++ programmers. Microsoft quoted some 3rd party studies that say that there are about 3M C++ programmers out there (compared to 5M VB programmers and a whole lot less Java programmers). From a 3rd party survey of VC++ customers, Microsoft found that 90% (!) of them will be doing the same or more VC++ work in the future (about 22 hours/week). They also found that about 75% of VC++ users are MFC programmers (which isn’t growing) and 35% of them are ATL programmers (and is growing). Given the number of ATL7 books shipping right now or in progress (ours and a few more), and the increase in the audience, that made Kirk, my Addison-Wesley editor and me very, very happy.
Here are some other interesting tidbits from that survey for you:
- 68% of VC++ developers build client-server apps
- 61% build desktop apps
- 51% build peer-to-peer apps (This number slays me. What are these guys building?!?)
- 36% build embedded/CE apps
- 35% build NT services
While we were there, various members of the VC++ team attempted to rock our world in terms of the new and improved features VC7. Sometimes they succeeded. For example, Pranish Kumar told us how the ATL Server version of the Nile benchmark web application was 10% faster than the hand-turned ISAPI version in 1/4th the development time, which is why the Microsoft site uses it for some of their “through-put challenged” areas. Also, Terry Leeper showed us how make mini-dumps for VC++ projects that you can send to the developer’s who persist in saying “but it works on my machine…” He also showed us how you can pause threads during debugging, load symbols on demand, set breakpoints in DLLs that aren’t loaded at start-up (without that annoying dialog box) and just how much the new optimization features can speed up your code (they did an amazing demo with a recompiled Microsoft codedec that nearly doubled the frame rate with no code changes).
For those of you into ANSI compliance, Microsoft showed off an early internal build of their compiler that raises VC’s over all compliance rating to among the highest in the industry. They are able to compile all of the popular 3rd party template libraries, e.g. Loki, Boost, Blitz++, POOMA and a complete STL.