Recently I've been chatting with a co-developer about CiviCRM, as a platform for mass mailing in Drupal, using CiviMail. Mailing lists are a necessity in many sites, and the popular simplenews module is good, but certainly lacks some functionalities, such s easy templating, and bounce check.
The discussion went on about how difficult, or even dangerous, it can be, to integrate two softwares. The last attempt to do it, if I recall well, was with PHPLIST, which is a dedicated open source mailing lists application, also written in php on top of MySQL. This attempt was not successful and the module was discontinued.
We noticed that CiviCRM is different in regards to that, as it is only developed as an add-on, and not as a dedicated application, which allows it to integrate with the targeted applications with ease.
However - we were wondering how they manage two sets of code for the destined CMS (Drupal and Joomla), and how they manage to still be detached from them. Few hours later, I saw this blog post from CiviCRM from a CiviCRM developer, who clearly specifies that there is a tendency to count on more and more of Drupal's modules and structure, due to their quality and benefits.
I'm not sure this is a representative opinion in CiviCRM, but it does raises two questions: will CiviCRM become a true drupal module, and integrate in its database and other internal logics? and what will happen to the Joomla extension in that case?