Three universal keys behind the open source Web Application Frameworks movement

Open source frameworks create 'super' web-based apps

grow
Image by : 

opensource.com

If you wanted to assemble the world’s finest fruit basket, you wouldn’t pick all your produce from the same orchard. You would gather the best from multiple sources: Washington apples, oranges from Florida, and pineapples from Hawaii.

Applying the same philosophy, many programmers and developers are now combining the best coding from multiple open source Web Application Frameworks (WAF) in order to create their own custom-made websites, content management systems (CMS), and other web-based apps and services. Call it cherry picking at its finest.

These "chimera" applications, in essence possessing the DNA of more than one WAF, represent a popular alternative to using proprietary coding or even an open source CMS to program one’s web-based app or website.

Fewer restrictions

There are three universal keys behind the open source WAF movement: better control and customization, lack of overhead, and interoperability with other open source software.

Developers who prefer not to comprehensively code all aspects of their product may be perfectly comfortable using proprietary software to create their web-based product. However, this shortcut comes with a price: a lack of freedom to customize these pre-programmed solutions and the overhead involved in changing whatever actually can be modified. This is true even of a free, open source CMS, which saves on costs but still is regimented in its application structure and how it operates.

On the other hand, open source WAFs, such as the recently launched PHP-based Joomla Framework, allow programmers more finely tuned control of their websites or web-based applications. This allows them to refine, tweak, and reconfigure while still leveraging the framework’s tools.

But perhaps the most exciting trend in this space is the ability of developers to actually combine individual tools or coding from multiple open source frameworks or libraries (provided they operate in the same language) in order to create and optimize a hybrid solution that best meets the programmer’s objectives.

For instance, as a developer, one might leverage application and router packages from Joomla, session management capabilities from fellow WAF provider, Symfony, a database package from another competing provider like Doctrine, and a logging solution from yet another, perhaps Monolog. Not only does the programmer avoid spending laborious hours writing code for these processes, but also these packages all seamlessly work together, despite originating from different sources.

In fact, certain PHP-based open source framework providers who also offer content management systems—this includes major players Joomla and Drupal—are either beginning to or plan to adopt and incorporate code from other PHP-based frameworks. Doing so will allow them to build a better all-around product to offer users.

Learning from the open source community

The large-scale interoperability of open source WAFs has led to an array of integration success stories. For instance, Joomla recently became the first PHP language-based framework provider to provide code that allows users to connect with the API (application programming interface) of web-based hosting solution GitHub.

Among the great advantages to leveraging open source frameworks is the knowledge and skill sets developers can glean simply by studying their coding and learning how programmers implemented different bits and pieces to create their final product.

It’s also important to observe how support from the open source community makes such web-based apps and services possible. Nothing is proprietary here—there is no "secret sauce" that can’t be shared.

It’s this kind of collaborative environment that fosters creativity and innovation among today’s programmers—more and more of whom are leveraging best-of-breed solutions while freeing themselves of the constraints of closed-source solutions and traditional open source CMSs.

Such progress calls for a celebratory fruit basket… as long as the contents inside are the best of the best and ripe for the picking.

 

Topics

About the author

Michael Babker
Michael Babker - Michael Babker is a Joomla! developer and a past Production Leadership Team member, contributing code to the CMS and Framework. He works to raise the overall quality of Joomla's code, ensuring a stable and quality product for every user. Michael has been recognized with the 2012 J!OSCAR "GitHub Junkie" Award for his contributions. You can follow him on Twitter at @mbabker.