Subscribe to our newsletter






Better Business Bureau Reliability Program
back Programming Frameworks: Which One?
By Sharbel Lutfallah : Programmer in Windsor Ontario

When you are developing even a simple website, the issue of programming language and framework can come up for things such as contact submission forms, photo galleries or any other dynamic content components that is generated by the web-server. When you are shopping for a web designer or web developer, you will hear them say “We program in PHP” or “We develop in ASP.NET/C#”. You might wonder what’s the difference between the programming languages, and is one better than the other?

What Programmers Are Using

Before we go through the pros and cons of each framework, I think we should identify the major server-side programming languages/frameworks:
  • ASP – Microsoft technology, able to host on most servers
  • PHP – Open source, able to host on most servers
  • Cold Fusion – Macromedia framework, limited server availability
  • ASP.NET – Microsoft framework, upgrade to ASP
  • Perl – Older framework, still in use. Able to host on most servers
  • JSP – Java Server Pages. Limited server availability
  • C#, VB.NET, J#, C++ - Programming languages for ASP.NET

As you can see, there is a fairly good selection of frameworks for web developers to choose to develop their web applications in. Most developers have a working knowledge for at least a few of the frameworks, but tend to specialize in one.

Why A Programmer Chooses

Making the choice of language specialty typically comes down to programmer’s programming background. For example, if a programmer who is accustomed to developing Java programs wants to learn web application programming, they might choose JSP or J# as they are both Java based. A programmer with C++ experience might find C# really easy to understand. Moreover, a Windows Visual Basic programmer will be right at home with VB.NET or even Cold Fusion to a lesser extent. I find a lot of self-taught web programmers gravitate to PHP mainly because of the Open Source Community behind it and the code samples they can learn from.

So Which One Is Better?

So now we know what’s out there as far as programming frameworks, and why a programmer might want to use one over the other, the big question can be “Is one better than the other?”. I am sure programmers will argue that their chosen framework is better than the other to either sell their service or maybe to simply justify their decision but in actuality there are few things that one framework can do that the other can’t.

Let’s face it, most web-application’s requirements are similar; a request is made to a page, the page hooks up to a database, the database returns data, the program interprets the data, and renders it to the page for the user to view. Of course I am being very simplistic in my overview, but realistically it’s a big chunk of what we programmers do. Having worked with all frameworks, except Cold Fusion, I can say they all are fit for the task. True, some of the frameworks, especially the older ones like Perl and ASP aren’t as elegant as the more up to date frameworks like ASP.NET, JSP, and PHP but they can still do the trick!

The Learning Curve Will Get Ya Every Time…

While the frameworks are pretty equal as to what they can do, the amount of knowledge needed to accomplish the various tasks can vary greatly between the different languages. For example, Perl is a much lower level language compared to say Visual Basic, making the learning curve a little steeper. While a lot of programmers prefer the C type syntax of languages like C#, Java, and PHP, others find more wordy languages like Visual Basic or Cold Fusion a lot easier to work with. Some of the frameworks such as PHP and ASP are really easy for developers to get started in as the learning curve is not as great compared to ASP.NET or say JSP. ASP.NET can be especially frustrating to ASP or PHP programmers looking to learn the newer, more robust, framework. ASP.NET is a full fledge Object Oriented programming framework which can be a little daunting for some programmers who are used to the less complex procedural based scripting languages like ASP or PHP. Again, for the most part it really comes down to preference and the amount of time the developer is willing to spend to learn the more robust frameworks.

Which Is The Most Secure?

Hosting and security is a pretty valid concern when choosing the programming framework of a web application. Let me be blunt, they are all un-secure if the programmer is not good. I don’t care what programming language you use, if you leave your web application open to attacks such as SQL-Injection exploits, it doesn’t matter if it was developed in PHP or JSP, your database is going to get compromised. One valid observation is the problem with ‘Cut and Paste Programmers”. What’s a Cut and Paste Programmer? Simply put it’s a programmer that takes source code examples from the various Open Source projects, or website examples, and just plugs them into his/her web-application un-modified. This is very common in the PHP world mainly due to the popularity of the Open Source concept of the framework, along with the strong community support of it. Developers download free applications, change the color scheme and voila!, they are a programmer now! This all sounds great until hackers find an exploit in the code, and everyone using the code’s website gets compromised. Such was the case with the very popular PHP Nuke application… Cut and Paste programmers aside, a properly developed web-application developed by a competent programmer is typically secure regardless of the language it was developed in.

Find The Best Programmer

The most important thing to be sure of when you are choosing your web application developer is to make sure that they have mastered the application framework they have chosen to develop in, not so much worry about the choice itself. Granted, if you want to make some modifications to your existing PHP application, you should find a good PHP person. However, if you are developing a new website, find the best programmer who intimately knows their programming framework. As stated, most frameworks can do the jobs required, so long as the programmer is competent and knows the ins and outs of their chosen programming framework.