Not an issue or bug, but a question for admins of CiviCRM - is it acceptable to use Python for part of a new extension (instead of PHP) or is that expecting too much, since that means asking users to install Python in addition to their stack of PHP, MySQL, Apache and whatever OS?

I know that Python install isn't the only issue here but so - it seems that CiviCRM doesn't (yet) have any kind of ETL extension (and I mean a contributed extension like CiviDiscount, not 'native', one that would be an optional add-on, like modules in Drupal). I am looking at some way to avoid Kettle/Talend (Kettle 'works' but sucks by comparison w/SSIS which is not open-source).

At first I thought well, people could just contribute Kettle scripts that other people could take and modify but that is pretty clumsy. So...looking at writing simple MapReduce in Python.

So, it would not necessarily be part of the interactive CiviCRM user functionality, using RESTful Api to do transactions, but totally backend functionality to do data transformation from MySQL or whatever database. I hope the transform could also be used to produce reports in some other way than hacking w/those templates. Using Apache Hadoop could also be a showstopper...just exploring now.

1 Answer 1


It depends.

If it's an extension that does something that I need, I would use python (well, it's already installed on all my servers, but would have installed it).

It will however limit the distribution to those that have root access to their servers and can install whatever they want on it, so probably make more sense for "big install" civi.

By the way, by extension, you mean "additional features", not "civicrm native extension", right?

If it's the former, I feel ok with python interfacing with civi (eg. via the rest interface), cleanclothes has for instance a complete frontend developed in python that only uses civi as a backend (and for the most advanced features if I recall)

If it were the latter, I would be concerned having php calling somehow python, mostly because I'm not even sure how it could work cleanly.

You need to tell us more about what your extension does.

  • You mean cleanclothes.org, right (looks like Plone site)? I can see how the frontend could be written in other than PHP - or no frontend/standalone Civi, but I am looking for a way to do data transform so the framework could be different (I think) than Civi core. May 27, 2015 at 16:54
  • yeap, cleanclothes.org, and yes, plone. Not sure I understand your point about data transform
    – Xavier
    May 27, 2015 at 17:51
  • @LesleyEvensen your answer was converted to a comment. Please take a moment to take the site tour for a better understanding of how the site functions.
    – choster
    May 27, 2015 at 18:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.