Home opinion-and-analysis The Linux Distillery No FOSS please, we're Microsoft: checking out the .NET source code license

Author's Opinion

The views in this column are those of the author and do not necessarily reflect the views of iTWire.

Have your say and comment below.

Get all your tech news delivered to your mail box five days a week
iTWire UPDATE - it's FREE!


Since early this decade, Microsoft has been promoting their software framework, the .NET platform and its associated libraries. Now up to incarnation v3.5, Windows developers worldwide have rejoiced at the framework source code finally being made available. Yet, does this reflect any trend towards open source by the Redmond giant? How generous is the license and what does it mean?

Some background: previous versions of Windows have consisted of a bundled set of libraries, known as the application programmer interface – or API. To differentiate it, the first 32-bit libraries became known as the Win32 interface and the previous Windows 3.1 16-bit APIs were retrospectively titled Win16.

Yet, by the end of the last millennium Microsoft decided the burden of providing backwards compatibility hampered their freedom to innovate and deliver a modern programming milieu. Consequently, the .NET framework was birthed which essentially provides a runtime environment with a rich suite of functions and features. It sits atop the Windows framework itself and interprets .NET programs, fundamentally converting instructions at runtime.

The rise of a new framework necessitated the need for a new set of programming languages which would generate executable code in the right format; this then brought into being the Visual Studio.NET collection of languages – Visual Basic.NET, J# and C#, among others by other vendors. It’s now possible to find .NET versions of Delphi, Python and even COBOL.

These languages still share a similar syntax to their forebears but the primary difference is they make use of the provided .NET libraries to implement their functions and interfaces, and they emit code designed to run on the .NET runtime.

Fairly or unfairly, Microsoft’s strategy received some criticism at the time as being a copy of Java – which works in the exact same way; the Java compiler outputs code which is designed to run in a Java Virtual Machine. A compiled Java class should, in theory, run on any platform provided it has a Java interpreter available for it. Like .NET, Java came with a rich set of class libraries to provide graphical controls and many other useful objects like network communications classes, mathematics functions and many others.

However, whether Microsoft did or did not copy Java, there certainly were two notable implementation differences.

Firstly, Visual Studio has only ever been a Windows product. The .NET framework – at least, as supplied by Microsoft – is a Windows only product. By contrast, Sun Microsystems intended Java to be universal and spruiked a mantra, “write once, run anywhere” reflecting the goal that Java programs could be written on any machine and would run on any other machine, no matter its operating system or hardware architecture, provided a Java interpreter existed.

Secondly, the source code to the Java class libraries was made available right at the beginning, in a shy little file called “src.zip” whose importance could easily have escaped notice by many. Unpacking this archive brought forth a treasure trove to all Java programmers: the complete code to all the very class libraries they were working with daily to bring about frames and windows and sockets and vectors and the like.

Is Microsoft following in this stead? Read on!

CONTINUED




 


RECRUITMENT & RETENTION REPORT 2013

HIRE OR FIRE? BUY OR BUILD

2013 is well underway and Australian companies need to know whether they should invest in IT skills training or pay a premium for the people they need.

If you want to know which choices are being made in your sector, what skills are hard to find, which sectors intend to hire or fire and where the IT spend is going, this free report is must have.

GET YOUR REPORT NOW

David M Williams

joomla site stats

David has been computing since 1984 where he instantly gravitated to the family Commodore 64. He completed a Bachelor of Computer Science degree from 1990 to 1992, commencing full-time employment as a systems analyst at the end of that year. Within two years, he returned to his alma mater, the University of Newcastle, as a UNIX systems manager. This was a crucial time for UNIX at the University with the advent of the World-Wide-Web and the decline of VMS. David moved on to a brief stint in consulting, before returning to the University as IT Manager in 1998. In 2001, he joined an international software company as Asia-Pacific troubleshooter, specialising in AIX, HP/UX, Solaris and database systems. Settling down in Newcastle, David then found niche roles delivering hard-core tech to the recruitment industry and presently is the Chief Information Officer for a national resources company where he particularly specialises in mergers and acquisitions and enterprise applications.

Connect

http://bs.serving-sys.com/BurstingPipe/adServer.bs?cn=tf&c=19&mc=imp&pli=5460041&PluID=0&ord=[2000]&rtu=-1