Yamm development

Share and options

I am currently writing a mass synchronization module for Drupal, based on eavy objects abstraction.
I will not describe it here, you can read the project page which describe pretty well how it works.

I wanted to do some notes about development context, and some other stuff.

1. First, the context

The first thing is, I'm quite proud of, is the module is originally for a client of the company I work for. This client does agree with the fact that using widely in use modules is synonym to durability. This is something I totally agree with.

We had some really specific synchronization needs, I started to write a custom module (again, and again..); But while writing it, answers to all the problems have been resolved by making the module more and more abstract, generic. When I finished the core system (which was in fact not enough to fulfil client needs) I realized that I had a powerful enough codebase to get benefit from it for many situations.

So, I decided to clean up a bit the code, write some complete documentation, and started talking about it on development lists. I had something about 5 to 10 answers of interested people, which was, in my sens, enough to comit on drupal.org.

2. Some details about development

First thing you have to known, I wrote it in about less than 10 days. I think this is not that much considering what the module does. I think there is a lot of bug left -none found right now, but we don't use it in production environment yet-, community will probably help me find them if people are interested in.

The Yamm name stands for Yet another migration module. This is not an original name, but *a lot* of modules already do exist to do mass migration, import or deployement.

3. Project status

This module is not released yet. I have a wide codebase to review (again). I need to do some more code cleanup; not that I want it to be perfect, but I really want it to be readable for potential community users and developers; also because I want to release it with the sufficient amount of documentation, for both users and developers.

I also need to do some benchmarks, and to look up why on my devel environment DataSync modules does not seems to do real MySQL transactions.