Drupal - The word I heard in my office in 2007. From then i Started adopting the Drupal in my profession. The early days when I started developing drupal 5 projects,I faced hardships as much.
For example if we code form. A form in php is very simple, define the Form HTML with action attribute pointing to a PHP page, and the php page will manage all the server side functionality. But in Drupal you have to define the form in a array and you need to follow the hook system of drupal to handle the form server side validation and submission. To understand the Drupal form you must have the all knowledge of Drupal hook system then you need to understand form api(which is a separate tutorial).At the begining stage I was not able to relate any way the approach of PHP(or any platform) form submission and the drupal form.
Next When it comes to theme, Drupal has separated the logic and HTML. You will have a theme function or template file to put your HTML. Which is also very new to me. I use to put all HTML and PHP in the same page.
You will understand from my above views that, at early stage how poor I'm, I don't have proper knowledge about MVC also.
But as days pass on, I slowly started learning Drupal, at the same time I understood the MVC concept, Web standards, Re-usablity, Scalability, Performance, Cache, Security, etc.As all these are properties of Drupal.
By following all above said concepts, features and best practices. Drupal taught me all those concepts and features in easy way.Now I can build a framework.Thanks to Drupal.
If I praise Drupal, then I must not forgot the community, which is working for the development of Drupal framework. All my praise to Drupal goes to the Drupal community. Now I started giving back to community. As a first step I donated some Dollar’s to become Drupal Association Individual member. The Second thing is now I started writing tutorials about Drupal.This Blog is the first step to the tutorial.In coming days I will write about Drupal, Web2.0, Jquery and Mobile technology.