A few weeks ago, CoDe Magazine's Publisher, Markus Egger, was granted an opportunity to have an e-mail interview with Microsoft Chief Executive Officer Steve Ballmer. Markus raises some interesting questions that are in the minds of many developers these days.

CoDe (Markus Egger):Mr. Ballmer, There is so much written about offshore development these days - I know Microsoft has offshore development operations in various parts of the world...how is it working out, and what advice would you give to US software engineers that might enable them to remain valuable?

As a global company, we are constantly working to improve our ability to serve our customers worldwide as efficiently and cost-effectively as we can. Although the majority of our core development work will stay in Redmond, we are growing our presence in key regions to enable us to increase local customer satisfaction and our ability to innovate. And by tapping into the growing technical talent pool outside the U.S., we can optimize for cost efficiencies that allow us to employ more people in the U.S., and invest even more in innovation.

In today's economy, software engineers - like everyone else - must continuously hone their skills and enhance their areas of expertise. The global economy offers great opportunities if we're prepared and flexible enough to take advantage of them.

CoDe: Steve, do you feel that INS and Homeland Security restrictions are in any way negatively affecting the US with regard to our ability to acquire the worlds best software engineering talent? How is Microsoft adjusting its business practices given that work visas are harder to get than they used to be?

We obviously understand and support the government's security efforts. We're continuing to create new jobs, and most of our new hires are U.S. citizens, but some of the people with the skills we need are from other countries. Many of the foreign citizens we hire are graduates of U.S. universities, yet the U.S. is just not graduating enough engineers overall to meet the needs of U.S. technology companies. China, India, and Japan all graduate a larger percentage of the world's software engineers, compared with the U.S. And we owe it to our customers to recruit the most qualified engineers we can find.

Like many other technology companies, we bump up against the current limits on visas that allow us to temporarily employ highly skilled foreign nationals in the U.S. The allotment of visas for 2005 ran out in February. At this point, we're managing to get the people we need, but it's not easy.

CoDe:There have been many instances where Microsoft has faced operating system competition. The open-source movement is perceived to be one of Microsoft's toughest competitors in recent years. This is particularly true for Linux, and now Sun has indicated that they will open source parts of Solaris. In the past, you have made it very clear that Linux is another competitor that Microsoft is happy to compete with. Can you tell us a bit more about how Microsoft is trying to compete with the open-source movement? What are the unique challenges, and what, in your opinion, makes Microsoft Windows the better platform for developers to stick with?

First, it's important to note that while we compete against Linux and specific open-source software products, we don't see ourselves competing against open source itself. We recognize the benefit of multiple development models, and support developers' choices in the model they select - though it's important to recognize the benefits and drawbacks of each model.

We've worked with our customers and the industry to provide access to source code in ways that make sense for everyone. Through our Shared Source Initiative we're providing access to code in a variety of ways - ranging from view and debug options under our Windows Enterprise Source Licenses to modification and full derivative licensing options under some of our Windows CE offerings.

To your question on competition, as open source has evolved, we've seen the dialogue go from an emotional debate to one that is now more fact-based and pragmatic. We are working to ensure that customers have access to evidence on how we are continuing to innovate and deliver products and technologies that offer them the very best business value?especially when it comes to cost and security. In a majority of cases, the Microsoft platform has a lower total cost of ownership than Linux, even though there is a widespread, erroneous perception that Linux is free. That's why our focus is on giving customers the facts they need to understand the overall business advantage and value associated with choosing Microsoft (for instance, take a look at http://www.microsoft.com/windowsserversystem/facts/default.mspx).

For developers, we need to ensure they have the data that shows why they should continue to bet on Microsoft. We offer the best tools to make developers productive. The fact that our platform has the penetration it does gives developers lots of opportunities. We have great programs to support ISVs and developers, like MSDN, Channel 9, our ISV buddy program, and error reporting for ISVs. Moving forward, you'll see Microsoft deliver even better support for productivity, in the forms of the .NET Framework 2.0 and Windows Longhorn releases, and great tools such as the Visual Studio 2005 Team System.

CoDe:Asides from obvious advancements such as the upcoming Windows "Longhorn" release, what is the "next big thing in technology" for Microsoft?

From our perspective, the "big bet" we're making is integrated innovation. No other company is investing for the long term as we are on delivering truly integrated solutions - technology that "just simply works" for customers and which addresses key customer issues and pain points such as manageability, ease of use, security, and so on. Integrated innovation is about a customer experience where using Microsoft products together gives you a "whole" that is far greater than the sum of the parts. For Microsoft, this is truly a cross-company effort. It will take the server and client operating systems to deliver great usability and manageability features. It will take applications that deliver compelling scenarios and extend our platform's value. It will take excellent tools that developers and ISVs can use to easily and quickly build new applications. And it will take integration across the Windows client and Windows Server System to comprehensively address the issues that customers care most about ? like manageability, ease of use and security.

CoDe:In the world of software development, one topic that seems to be ever-present and ever-controversial is that of development methodologies. Anything from the Rational Unified Process to Extreme Programming (XP) seems to be hyped as the next silver bullet for the modern way to build better applications. In the past, Microsoft appears to have been somewhat tight-lipped about the subject. Now, Visual Studio 2005 Team System has been announced, which seems to be a comprehensive and flexible lifecycle tool. However, due to the systems flexibility, it does not make a strong statement about any particular approach. Is there a unified strategy within Microsoft for Software Lifecycle Management? Do you think standards and processes followed by Microsoft are valuable for companies of much smaller size? How does Visual Studio 2005 Team System fit into all of this?

First, the Team System absolutely includes development methodologies. We will actually include two methodologies in the product: a "formal" methodology for large teams and those who want good, rigid processes, and an "agile" methodology patterned after Agile and Extreme Programming principles. Of course, the methodologies themselves are fully customizable, so that companies and partners can tailor and extend the methodologies for their own needs.

As for Microsoft's own methodologies, we do follow many of the principles espoused by our commercial methodologies (security testing, code reviews, unit testing, etc). But just like our customers, our individual product teams tailor their methodologies to account for a number of factors, including size, scope, and sophistication of the project, experience of the team, duration of the project, and more. There are many variables that go into a software project and, as we've learned at Microsoft, no single methodology is suited for all teams and all projects. This is where we think our approach is more appropriate for the industry: rather than building a tool around a rigid, inflexible methodology, we've taken a more flexible approach that lets customers adapt the tool and processes for their needs.

CoDe:What companion devices or other computerized devices are you using? PocketPC? DVR? SmartPhone? Car computer? MSN Direct watch? Do you still take your TabletPC everywhere you go? When do you think that these devices will become so prevalent that they will surpass PCs (and PC-based technologies) in number of devices sold?

I love my Pocket PC and I use my Tablet PC constantly. SmartPhones may eventually surpass the number of PCs, but PC growth is far from over. Today there are some 600 million personal computers around the world. By 2010, we estimate the number will grow to one billion. So there's huge, huge opportunity across the range of devices. We are, as you noted, also doing some great things with Windows Automotive. Microsoft technology is currently in 23 cars lines from 12 different automakers. And MSN Direct is a specialized wireless service that delivers personalized information - news, weather, sports, stocks, personal messages, appointment reminders and more - through Smart Watches.

CoDe:Has the adoption rate of TabletPCs been up to your expectations? It seems that TabletPCs have gained popularity in the developer community. What are your predictions for the future?

We've seen early success with the Tablet PC in a number of key industries, including health care, financial services, and education. The consumer market is starting to take off too. Recently developments give me confidence that most mobile PCs will have Tablet functionality - pen and ink as a natural input - in the coming years. We just launched Windows XP Tablet PC Edition 2005, and we've received great feedback on the improvements we've made in usability and our handwriting recognition technologies. And we're starting to see the price difference fall dramatically between Tablet PCs and notebooks. Averatec recently introduced a consumer oriented Tablet PC at about $1,300 that is selling very well, and we see this as a significant step to making Tablet PCs more accessible to consumers and students.

You're absolutely right about the interest and traction we are seeing in the developer community, and we are very excited about that. As you know, it's developers that drive the platform. Today we estimate that more than 400 ISVs are working with our Tablet software development kit, and close to 100,000 developers are using the platform in some way. In addition, there are several vibrant online developer communities like DevX and TabletPCPost.com, where you can download more than 100 Tablet applications today. We're also seeing a slew of component vendors, like Infragistics, leveraging ink in their products. Overall, we've seen a great increase in the number of tablet applications coming to market now, and we expect to see this trend continue as the community continues to realize that Tablet PCs are fully functioning mobile PCs with additional capabilities.

CoDe:If you had to bet on either TabletPC or SmartPhone as being the best platform for a relatively experienced software developer to spend their time focusing on for the next 3-4 years, which one would you choose and why?

Fortunately we don't have to choose between two really wonderful opportunities. Both platforms have a tremendous future.

CoDe:I've spent some time with the Longhorn alpha and I can see that it will be a substantial shift from the Windows XP / Windows Server 2003 products currently available. How long do you think it will take the majority of corporations to adopt it?

As we recently announced, we will be shipping the Longhorn client in 2006. We're very excited about this, and I'm confident customers will respond to some really important advances in security, deployment, management and reliability, and to a platform that creates developer excitement with the availability of even richer APIs.

We also announced that the new presentation subsystem codenamed Avalon and the new communication subsystem codenamed Indigo will be made available for Windows XP and Windows Server 2003. This availability will expand the scope of opportunity for developers by enabling them to write applications that can run on hundreds of millions of PCs. Our storage subsystem, code-named WinFS, will be in beta testing when the Longhorn client becomes available, and will be released after that.

These fundamental improvements will make Longhorn very compelling for business customers, and we're doing a lot of work to make it easier for corporations to take advantage of all the new capability we'll deliver.

CoDe:It has been suggested by Microsoft that there may be another client version of Windows that will come out between Windows XP and Longhorn. Is this designed to be a migration path to Longhorn or is it primarily a way to keep making corporate America's investment in Win32 applications and the Open License v 6.0 more valuable?

We just delivered Windows XP Service Pack 2, which I think is a huge release for us and for our customers. Besides its tremendous security enhancements, SP2 includes significant enhancements to Windows XP Tablet PC Edition and Media Center Edition, which I would also characterize as important new releases. We just delivered Windows Media Player 10, and we're working on a new version of Windows XP Media Center Edition that will build upon what we delivered in SP2. All of this work has been discussed internally, and I think there has been some characterization of this in the press as a "new release" of Windows. The next version of the Windows client is Longhorn, and that will arrive in 2006.

CoDe:Non-Microsoft development tools seem to be very common in schools and universities. This creates somewhat difficult scenarios when software companies try to hire young developers who have just completed their education and have very little experience with the Microsoft platform. Recent MS initiatives (such as Visual Studio Express) seem to be addressing this issue. Can you give us an overview of the strategy Microsoft has to fix this problem and how well the effort is progressing?

We we're committed to making Windows the absolute best environment for students to learn. While we've made our software more accessible to students who want to program via MSDN Academic Alliance, we still have more to do to make our tools easier to use and learn. We're also doing more to invest in the kinds of content that make Computer Science (or even just programming) attractive to students. And we're working to become better partners for faculty and teachers.

To date, more than 3,500 university and college departments teaching computing in the U.S. have adopted MSDN Academic Alliance, enabling them to provide licensed copies of all Microsoft operating systems, developer tools, and server products at no additional charge to all their faculty and students. In the past year, we launched a curriculum repository (http://msdn.microsoft.com/academic) with more than 800 lesson hours of re-usable, classroom tested CS content using .NET. We have been providing training for faculty for several years now and, going forward, will offer more training options that are flexible to meet the needs of educators. We're working hard to extend these programs beyond the college level, to high schools. We currently have provided grants to five states for a state-wide license for our developer tools, along with curriculum, support, online community, and in-person training for teachers.

As you mentioned, Visual Studio 2005 is a key part our effort in this area. But that's really just the beginning. The Express products are a very strong investment in easy-to-use, easy-to-learn, and easy-to-acquire developer tools for students and hobbyists, young or old. We will also build a ton of content partnerships around the Express products that will result in fun, interesting projects for people to build. We've already started this with Amazon, eBay, and PayPal...but look for more in the coming months.

We're also spending a lot of time helping students build communities to connect with each other locally and from around the world. theSpoke is available in 15 languages, and students can congregate and share their experiences and knowledge with each other online, as well as start their own clubs at school. I really like the Imagine Cup as a competition to showcase student achievements in technology. The winner of the competition two years ago now has his own company based on the application he wrote for the Imagine Cup. We just finished this year's Imagine Cup in Brazil, where we had more than 10,000 students from over 90 countries competing. We're expanding this to include more competitions, and I look forward to being amazed again at the innovations that will be come from students.

CoDe:What is your favorite Xbox game?

I don't have much time for gaming, but my son absolutely loves Halo.