What Developers Can Expect from Microsoft
The Web Platform
Cloud Computing was another topic Somasegar covered. He says the cloud is a great equalizer for small companies that want to compete against larger organizations without a lot of hardware management overhead. Services such as Windows Live Office and Xbox Live are already running on the Azure cloud. Somasegar says that Microsoft is focused on making tools that will allow developers to build software that deploys and performs well in virtualized environments like the cloud. Microsoft is also focused on building and enhancing cloud tools for distributed development teams (e.g. distributed code reviews, remote paired programming, developer/tester collaboration, and resource sharing).
Somasegar says that the rate of CPU enhancement has fulfilled Moore's Law: "the prediction that CPU performance would double every eighteen months, is now fulfilled by adding more processor cores rather than by increased performance of a single core, bringing the power of multi-core processing to low-end machines." Despite the wide adoption of multi-core processors, Somasegar says that only, "a small handful of programmers have the skills to write code that performs well in multi-core and many-core environments. In the future, parallel libraries, debugging, profiling, and diagnostic tools will enable more developers to take advantage of parallel computing resources." One comment mentioned that Somasegar's interpretation of Moore's Law is incorrect. Microsoft's Concurrency Runtime is one effort that the company is currently working on related to parallel programming.
With the massive consumer market for mobile devices, Somasegar says that Microsoft will put a great deal of effort into evolving user interface software to harness speech, camera, and touch-pad technologies. He mentions that Windows 7, Silverlight, WPF, and MFC have all embraced these paradigms and says that Microsoft will continue to innovate in this domain: "I expect user interface paradigms to continue to evolve and become more intuitive and powerful."
Somasegar indicates that Microsoft is making plans to become a bigger player in the Agile space. Visual Studio 2010, which arrives in April, will support agile processes such as iteration planning and unit testing. Microsoft also plans to expand its support for different agile methodologies.