ZDNet UK


Skip to Main Content

ZDNet.co.uk - Winner of Best Business Website 2007
  1. Home
  2. News
  3. Blogs
  4. Reviews
  5. Prices
  6. Resources
  7. Community
  8. My ZDNet

 

ZDNet UK RSS Feeds


IT Jobs

Application development Toolkit

C# gains support

Stephen Shankland, CNET News.com CNET News.com

Published: 11 Oct 2002 14:08 BST

  • Email
  • Trackback
  • Clip Link
  • Print friendly
  • Post Comment

Microsoft and its allies have quietly expanded an effort to gain acceptance for C#, the software giant's competitor to Java and a foundation for its next-generation Internet services.

To convince potential customers that C# is a sound, independent technology, Microsoft has already succeeded in getting it recognised by an international standards group known as ECMA, formerly called the European Computer Manufacturers Association.

Microsoft has now used that as a stepping stone to gain the imprimatur of a more widely recognised standards group, the International Organization for Standardization, or ISO, which governs standards for items as diverse as dental equipment, nuclear fuels and shoe sizes.

Last week, an ISO subcommittee cleared the way for final ratification by the full ISO of C# and the required underpinnings called the Common Language Infrastructure (CLI), said John Montgomery, group product manager for the .Net Developer Platform at Microsoft. The move from ECMA to ISO is made possible by a "fast track" agreement between the two groups; Hewlett-Packard and Intel are also supporting the effort, Montgomery said.

"There are government organisations that recognise ISO standards, but not ECMA standards, so having C# and the CLI be ISO standards will help those governments adopt these technologies," Montgomery said.

"The meeting concluded with agreement that the standard is now complete," he said. Final ISO ratification is expected in January.

Standardisation lends some heft, credibility and permanence to a technology that still is very new. It also could allay fears that adopting C# and its related technology might mean becoming beholden to Microsoft. And while standardising C# isn't likely to make or break the software, standardisation is an area Microsoft can influence more easily.

"This is one issue amongst many, but one that Microsoft actually has fairly direct control of," said Illuminata analyst James Governor.

"If Microsoft really wants to successfully drive C#," he added, "the biggest problem may prove to be developer learning curves." Software developers are on the front lines, but C# also needs the confidence of system administrators, chief information officers and the software industry in general.

C#, like Java, is a language that lets a program run on a software foundation that shields it from the particulars of the underlying computer. That makes it easier to write a program that will run on a wide variety of computers. With Java, that insulation comes through software called a virtual machine and through libraries of prewritten software; C# comes with its own libraries and other components that make up the CLI.

In the 1990s, Sun Microsystems launched Java as a way to undermine Microsoft's Windows dominance. Sun hoped, but largely failed, to get programmers to write software that worked on a Java infrastructure rather than on a Windows infrastructure. For example, a Java program could run unchanged on computers that used Windows, Mac or Unix operating systems.

Microsoft is fighting back against Java with C#, itself part of the foundation of its .Net vision to power next-generation Internet services. The .Net plan involves letting PCs, servers and other digital devices find one other on networks and invoke services such as booking reservations or debiting credit cards. C#, like Java, is designed so that a program can call upon other program modules elsewhere on the Internet.

Advantage Microsoft
Java has hordes of fluent programmers, years of field testing and thousands of software packages built atop it. But Microsoft has its own advantages.

First, by virtue of its monopoly in desktop computer operating systems, Microsoft has a superior mechanism to distribute the infrastructure needed to run C# programs, CLI or its big brother called the .Net Framework. Microsoft is adopting that very strategy, including the .Net Framework, with Service Pack 1 for the Windows XP operating system.

Second, Microsoft has persistence. The company is famed for producing software that is inferior at first but that years later becomes dominant -- for example Windows, which lagged behind the Apple operating system, and Internet Explorer, which was a pale imitation of Netscape Navigator.

Rival Sun enjoys pointing to the number of registered Java programmers -- 2.6 million at present -- as evidence of its success. But the company clearly recognizes the threat of C# and its associated software.

C# and the .Net Framework are included as evidence in Sun's antitrust suit against Microsoft. Sun asserts that C# is a hook planted in desktop Windows, where Microsoft is dominant, that tows Microsoft into areas where it's not as powerful -- namely, software for higher-end networked server computers where Sun is powerful.

Microsoft is using the standardisation effort to indicate that C# isn't a Trojan horse for Microsoft software but rather a neutral technology open to all. To the same end, it has also released a version of the CLI -- the software apparatus to run C# programs -- under its "shared source" license. That licence permits people to see how Microsoft programmers wrote the software and to tinker with it, but not to sell products using it.

Microsoft has attracted some unusual allies to C# and the CLI, including advocates of open-source software who often are opposed to Microsoft's proprietary approach to software. Among the allies is desktop Linux specialist Ximian, which with help from Hewlett-Packard and Intel is working to clone much of the C# environment in a project called Mono.

Sun argues that standardizing the CLI is misleading, though, because it's only a subset of the .Net Framework.

"It's like saying we're going to give a brand new car to the information technology industry, but we're going to keep the keys. That's not what standardisation is all about," said Sun spokesman David Harrah.

Where Sun stands
Java, which had a comparatively ungainly interface and has suffered sluggish performance, didn't dent Microsoft's power on desktop computers, but it has caught on in mobile phones and servers.

Sun had pledged to make Java a standard, first through an ISO subcommittee and then through ECMA, but reversed course in 1999, saying it wasn't willing to hand off control of the technology. Instead, it formed the Java Community Process, which lets other companies help control Java but still gives Sun a position of power.

Sun's reluctance to let go of Java, which peeved allies as powerful as IBM, was not an act of mere egotism. Microsoft had licensed Java for its own use but had modified it in a way that undermined its promise of working identically on different computer types. The issue was at the heart of a four-year legal battle between Sun and Microsoft.

Microsoft's coaxing of its technology into the world of standards can be seen as a victory in its long-running struggle. The ISO subcommittee's approval is "pretty major," Montgomery said. "It represents the agreement of the international technical committee members that C# and the CLI are ready to be ratified by the ISO managing body."

But it's not yet the victory that counts.

"ISO is a stamp of approval, which certainly helps," and ISO is better recognised than ECMA, said Illuminata's Governor. "But I believe it would be a mistake to assume that having the ISO check box ticked will make all the difference."


More enterprise IT news in ZDNet UK's Tech Update Channel.

For a weekly round-up of the enterprise IT news, sign up for the Tech Update newsletter.

Have your say instantly, and see what others have said. Go to the ZDNet news forum.

Let the editors know what you think in the Mailroom.

  • Email
  • Trackback
  • Clip Link
  • Print friendly Print with Dell

Did you find this article useful?
33 out of 88 people found this useful


Full Talkback thread

0 comments


Company/Topic Alerts

Create a new alert from the list below:



Related Jobs

Analyst Programmers x 2 Posts

Analyst Programmers x 2 Posts 23,665 to 28,992 (inclusive of local weighting allowance) Ref: 08/1832 Youll be a highly motivated individual and have ...

Graduate Opportunities with Prophet Plc - C++ Programmers

Graduate opportunities with Prophet Plc Job Title: C++ Programmers Location: Meriden, nr Birmingham and Coventry Salary: Competitive, with benefits ...

S&P (Security) IT Specialist

Ideally candidates will have: - Outstanding client, people management and coaching skills - Enthusiasm and commitment to delivering quality results ...

Discussions

keithmv keithmv

Password Deadlock

Saturday 26 July 2008, 12:02 PM

2 comments

Featured Talkback

The fact is: Software developers today are really designers and not coders. The reason that business anlaysts exist today to model solutions is because they understand the value of designing software before writing it. All too often developers create code that has little value because they do not understand that business classes interact with other classes within the confines of a working model or pattern.

By: 1000165269

Read full story:
Making sense of agile modelling