Sunday, February 7, 2010

Dissecting the Anatomy of Modern Programming Languages

If you're new to programming and you're having a difficulty learning the current mainstream languages, chances are, you've hit a wall and haven't gotten an idea on where to start. Hopefully this article will help you lower that wall and better understand the concepts surrounding these languages.

Having been into development as a profession for almost five years now and as an avid fan of programming languages, despite all these new languages constantly being released, there are only two core syntax you need to learn and these are the following:

- C/C++
- Basic

Having yourself enriched with the fundamentals and mastery of these two core syntax, you'll most likely achieve an ease of understanding with almost any new programming languages being released in the computing industry.

C is a very old and yet one of the most influential language of all time. Of course having limitations of its own, it has evolved into C++, hence the "plus plus" sign. With the demand for object-oriented programming style rising and a variety of flavors of operating systems and platforms coming out, Sun has developed a multi-platform language based on C++ popularly known as Java. With a syntax very much close to the heart of a lot of developers, and a nifty feature in which you can run a compiled version of your source code basically on any platform as long as you have the Java runtime installed in it, Java has been successful in the revival of the C syntax as the premiere language of choice by the developers.

Microsoft, who has been on the background with Sun's success and having been developed Visual Basic, Visual FoxPro and Visual C++, attempted to encourage developers to migrate to Microsoft products by implementing Visual J++. However, of course with Java's main advantage of running executable programs on any platform and J++ unable to bring this advantage to other platforms, it has been short-lived. But all this changed with the advent of Microsoft's .NET framework. Embracing the C++ syntax, Microsoft developed perhaps one of the most influential languages they've ever developed, the C#. C# is a language also based on the C syntax. And with the .NET framework and almost similar approach to Java, the company has finally and perhaps successfully attracted Java developers to shift into C#.

With Java being stagnant for quite some time now and programming on the internet increasingly becoming popular, some developers were not ready to jump into the C# bandwagon. Hence, PHP emerged. PHP is a server-side scripting language which is open-source meaning anyone can fork, view and modify the language itself to suit for themselves. It mostly resembles the C syntax and is quite a popular choice as it is the cheapest to maintain in terms of development costs for companies investing in the internet. And with PHP becoming a force to reckon with, of course companies have offered their own brand of server-side scripting. Sun released JSP (Java Server Pages) which resembles Java, only an implementation on the internet and Microsoft released what many of us know now as ASP.NET.

Still doubting on studying the C/C++ syntax? How about searching for Google's new programming language - Go and Microsoft's "Adobe Flash"-killer Silverlight? These two are also great grandsons of the C family and will presumably be something worth watching out for.

On the otherhand, while C has been embraced by most of the developers, many have still yearned for a syntax which is English-like and that of COBOL. BASIC was developed by a variety of companies but one of the most common was of Borland's implementation. BASIC stands for Beginner's All Purpose Symbolic Instruction Code. One of the most popular implementation of it was Microsoft's Visual Basic. With Windows becoming more and more popular as a household operating system, developers wanted a rapid application development language and Visual Basic was the right tool for them. It even evolved into developement of Macros which are small snippets of implementation of Basic into Microsoft Office products which were for the purpose of achieving automation.

Although Basic was quite frankly less popular than C, Microsoft has still been its advocate even implementing it on the web through ASP (Active Server Pages) and even on the advent of the .NET framework, they've improved the support for Basic with the implementation of Visual Basic.NET which was a popular choice for developers who were Visual Basic developers and at the same time haven't been ready enough to jump into C# during those times. Quite a handful of development tools have evolved from Basic and one of the popular ones was Mercery QuickTest Pro which was an automation tool used mainly for testing purposes.

As years go by, the emergence of a very powerful and dynamic language known as Python was released. It is an open-source language which I'd like to categorize as a mixture of C and Basic. As a friend of mine suggests, it is a cleaner version of Java, hence many developers were quick to embrace it and one of its proud customer? Google. I'd probably say it's quick to learn Python for its strict advocacy for readability but you have to give it a try for yourself and see how great and promising this is.

C/C++ and Basic. If you want to go and delve deeper into the world of programming, welcome aboard. Embrace these two syntax and you'll likely be quick to learn new programming languages surfacing every now and then. Hope this article provided quite a heck of a history to prove that these two are the foundations of modern programming languages.
Digg Stumble This Del.icio.us Mixx Furl Propeller Simpy Live Twitthis Add To Slashdot Spurl Google Yahoo Reddit Technorati Blinklist Blogmarks Smarkings Ma.gnolia SphereIt Sphinn Feedmelinks

No comments: