November 2001

News and events are updated regularly.

  North America's First
South Asian

A GlobalomNet Media Production



An Independent e-Monthly
Vol. I Number 5

More than news & views -­ A complete source for South Asians


 Back to Front Page

Why C# or Why Java or Why Any Language at All !

By J.V.Ravichandran

                        Of hard critics on Microsoft who don't see sharp what is C#, but jaw on Java !

A topic that has raged the circles of programmers, students, internet surfers and the likes ever since Microsoft announced its latest venture the .net framework ! Log onto and there will be at least 3 questions from C# newbies on why C#, in the message board of the site ! There have been more C# websites cropping up in the near past than new films from Bollywood. Such has been the interest that this language has generated. 

Every language has its own purpose and use. And Microsoft's languages usually have lots of new, interesting and useful features. It is not only distressing to note that many of Microsoft’s critics have forgotten how easy-to-use Microsoft’s products and languages are, but also alarming that critics have begun to hypnotize themselves with their own viewpoints, to the extent that the need to recognize Microsoft’s efforts in the field of softwares and information technology has just vanished giving way to frustrated comments on anything by Microsoft !

The most notable point that I have usually noticed is an unnecessary and often unjustified criticism of Microsoft's languages or products being some kind of a COPY ! Microsoft has OS/2 as an absolutely original product (so it is capable of original products) and although the user-interface of Windows has/may have been borrowed from Mac interface, this alone cannot be held as reason that Microsoft copies all other products. A Morris car had 4 wheels but so does a Beetle or a Mercedes. Does this mean that all the modern cars copy Morris? An user-interface like Mac had been popular at the time and from a business point of view the incorporation of the MAC-like user-interface was absolutely necessary to attract users to switch to Windows and Microsoft's decision to offer a similar kind of an interface in its windows platform for its users is fully justified as a business move and not an effort to copy !

As far as C# is concerned, C# is not Java and cannot be considered an eliminator of Java as both are different, in terms of the platform on which they are used. Both are OO languages and the similarity starts and ends here. C# is new. Boeing 747-400 was new yesterday; tomorrow, Boeing 747-600 may be preferred. Every new product in the market has its own value and attraction and as such, to say that C# is far better than Java or Java is more powerful than C# is like wasting one's time philosophizing on idle thoughts.


C# has brought lots of joy, enthusiasm and enjoyment for the old C++ programmer who had been left out in the rapid changes in the internet and the programming world. Now, the C++ programmer is as wanted as when the language was considered the blue-eyed language of the world. And it is not exaggerating in anyway, if one says, a C++ programmer is the most technically and logically perfect of all programmers in the world. And to welcome this group of eminent and left-out programmers back, into the world of neo-internet programmers with half-OO in their bag and half-Oh in the back of their minds, is a pleasure that Microsoft
has made all its own.

C# offers a new range of newer OO technologies like the class indexer, reflection, and a few extensions of inheritance not only through interfaces but also through concepts like base class references. A combination of a set of related languages or technologies have been grouped under the .net framework and the framework, itself, is a classic piece of work. And it would be highly critical of Microsoft if one were to call the framework too a work of copy based on the JDK or the Java Virtual Platform because the .net framework is built on the model of the original DOS-like stack, .obj like metadata generation, virtual memory (of Windows) like VES (Virtual Execution System) and VOS (Virtual Object System). The data types in C# as well as in the framework is quite well-defined with the value types and reference types. Although the types are the same as before, the effort that Microsoft has taken to re-define this topic in newer terms is commendable. Of course, it goes without saying that C# is a far more perfect OOPS language than Java and is a joy to use.


As a bottom line of help to Microsoft’s unwanted and usually erring critics, it needs to be noted that it is not easy to create something new every time and it is certainly not easy to better something existing, which is how Microsoft’s late forays into the lightning-speed information technology world, must be viewed in !