Currently at my job I am working on several projects taking legacy procedural PHP code and integrating it with Drupal 6. This has led me to think about everything recently in terms of how do I Drupalize it.
Drupal is extremely convenient for doing this because of its powerful API and tremendous community. Web applications that I am positive took a good amount of time to build can be recreated with Drupal by installing a few modules, integrating some custom code via custom modules, and voila. It is a little harder than that but overall I have been very impressed with the ease of taking existing content and merging it with Drupal.
What has been really convenient is Drupal’s OO code base which forces me to port the code properly from the old application. This means that stale old functions such as Date() now require timezones and that mysql_escape_string has to use mysql_real_escape_string. There have been several instances where this has both enlightened me and made the code more secure.
It would be convenient if everything worked like Drupal. Say you want to add a new seat to your car, you just “install the new seat module” and it works. No having to weld in new seat rails or adjust the stock mounts and seat belts, etc… Drupal is kind of like food, follow a good recipe and you get a decent meal.
To all of those before me and all of those after, enjoy Drupal and Just Drupalize It!