FRAMINGHAM (07/03/2000) - IBM has long prided itself on supporting multiple computing platforms, including Java and Microsoft Corp.'s Windows NT. The company got a new platform and a new language to support this week, when Microsoft unveiled its Microsoft.Net architecture for linking applications and its new C# development language. Computerworld senior editor Lee Copeland spoke with Steve Mills, general manager of IBM's Software Solutions division, about Microsoft's plans.
Q: IBM already supports Microsoft technologies such as Windows 2000. How might it support C#?
A: We will certainly have to deal with it in the Windows world as we do with other things that they deliver on their systems. Their development tools, for example, we use to build applications against our middleware products, like Websphere.
Q: What about Microsoft.Net?
A: What I see in Microsoft.Net is not Microsoft changing their own architecture, but bringing much more focus to having their . . . environment more connectable and adaptable to a heterogeneous Web world. It's very much an issue of how Microsoft products will adapt themselves to changing paradigms.
Q: Microsoft.Net seems to be middleware that could tie Microsoft systems more closely. Do you think that could evoke the ire of the U.S. Department of Justice?
A: Microsoft already has a wound-up system today, as opposed to the modular approach you see in the Unix world, where you can mix and match pieces. So this is a continuation of that kind of a system infrastructure environment and encouragement of developers to - through the Microsoft tools - use the environment that Microsoft delivers, as opposed to Microsoft delivering a collection of pieces and presenting them to the market as a menu.
[Microsoft continues] to drive this notion of a highly integrated system, which might seem to be appealing in terms of what might be perceived as better integration and ease of development but presents other problems in that it is a huge stack of code. It's very hard for them to get new things out into the market because of all the interdependencies . . . and it carries performance penalties.
Q: Are you surprised that Microsoft didn't go with Java to achieve interoperability?
A: In my opinion, they made a mistake on that. They view Java as upsetting the fidelity and control point that they have in Windows and view Java as a competitor. C# may be a good piece of work. It's not a matter of whether they have done the work on it, but does the world want yet another programming language? Does the world feel that it needs yet another interoperability language?
Java is out there and fairly well-entrenched in the market. XML has emerged for doing mapping, although it's not a true programming language. It's certainly a useful mechanism for interoperability. So the question is, why another one, and I think the why is because [Microsoft] decided not to use Java.
Q: We have talked with a number of developers who are concerned about learning another language.
A: I think the Windows-centric developer might find this useful because the C and C++ environment is a fairly complex one. One of the problems you see developers having is coming from the Visual Basic world. They find the transition to a pure C/C++ environment difficult, but yet they have to make that transition if they want to build more scalable server-side applications.
Because Visual Basic is not a strong server-side programming language, it was never really designed to provide the kind of shared, multitasked and multiprocessed environment that is typical of what you write in C.
Q: What types of challenges do you think C# will address?
A: C# does address the issue of improving developer productivity and programming in C environments. There are certainly positive attributes . . . but for anybody who is thinking multiplatform there is Java. They can run Java on NT and other platforms, so why would they want C#?